diff --git a/documentation/BuildingR3.13AppsWithR3.14.html b/documentation/BuildingR3.13AppsWithR3.14.html index f5f2e1fca..2a5b04492 100644 --- a/documentation/BuildingR3.13AppsWithR3.14.html +++ b/documentation/BuildingR3.13AppsWithR3.14.html @@ -15,7 +15,7 @@
This document describes how to modify a R3.13 vxWorks application so that it
-builds with release R3.14. It describes an easy way to modify
+builds with release R3.14. It describes an easy way to modify
applications subject to the following restrictions:
Change the EPICS_BASE definition to point to the R3.14 base +
Change the EPICS_BASE definition to point to the R3.14 base release. All hardware support and some soft support is now unbundled. For example the sequencer is unbundled. You must obtain and build all required unbundled products before you can build the application. The location of each @@ -141,7 +141,7 @@ to
You may need to add the line "#include "recGbl.h" to any source +
You may need to add the line "#include "recGbl.h" to any source files that have recGbl* calls so that the file will compile without errors.
@@ -164,9 +164,9 @@ and add to your application src/Makefile.You should consider changing any existing old steppermotor records to the -new EPICS motor -record module supported by Beamline Controls and Data Acquisition at +record module supported by Beamline Controls and Data Acquisition at APS.
All hardware support (dev, drv and dbd files) has been unbundled from base R3.14. This support includes the files symb, symb.dbd, drvHp1404a.o, -drvEpvxiMsg.o, and drvEpvxi.o. If they are not used in your +drvEpvxiMsg.o, and drvEpvxi.o. If they are not used in your application, comment out references to these files in base.dbd and baseLIBOBJS.
Hardware support files now exist as separate modules available for download from the EPICS www home page at ANL. You must now download all the hardware support modules needed for -your application, build the modules with R3.14 base, add the appropriate +your application, build the modules with R3.14 base, add the appropriate module full path definitions to your application config/RELEASE file, and change LIBOBJS location definition $(EPICS_BASE_BIN) to the module definition bin directory in your application src directory files.
@@ -201,9 +201,9 @@ into your application config/RELEASE file .After a gnumake in the symb module followed by a gnumake in the application config directory, the definitions SYMB_BIN and -SYMB_LIB will be created, the directory $(SYMB)/include will be -added to the include directories on the compiler command lines (in the -INSTALL_INCLUDES definition) and the directory $(SYMB)/dbd will be +SYMB_LIB will be created, the directory $(SYMB)/include will be +added to the include directories on the compiler command lines (in the +INSTALL_INCLUDES definition) and the directory $(SYMB)/dbd will be added to the dbd search directories on the dbExpand command lines (in the INSTALL_DBDFLAGS definition).
diff --git a/documentation/BuildingR3.13ExtensionsWithR3.14.html b/documentation/BuildingR3.13ExtensionsWithR3.14.html index 998ac0300..02271a4ce 100644 --- a/documentation/BuildingR3.13ExtensionsWithR3.14.html +++ b/documentation/BuildingR3.13ExtensionsWithR3.14.html @@ -34,7 +34,7 @@ directory.
- Download the latest version of the extensions/config files, - extensionsConfig.tar.gz, from the APS EPICS www page.
+ extensionsConfig.tar.gz, from the APS EPICS www page.
- ifdef BASE_3_14+
- USR_LIBS += dbStaticHost
- dbStaticHost_DIR = $(EPICS_BASE_LIB)
- else
- USR_LIBS += Db
- Db_DIR = $(EPICS_BASE_LIB)
- endif
ifdef BASE_3_14 +USR_LIBS += dbStaticHost +dbStaticHost_DIR = $(EPICS_BASE_LIB) +else +USR_LIBS += Db +Db_DIR = $(EPICS_BASE_LIB) +endif
Library functions have been renamed. If there are calls with old db +
Library functions have been renamed. If there are calls with old db names, add the following lines
- #if EPICS_REVISION && EPICS_REVISION == 13- and change the the old names and function calls to the R3.14 versions: +long dbReadDatabaseFP(DBBASE **ppdbbase, + FILE *fp, const char *path,const char *substitutions) +{ + return(dbRead(*ppdbbase,fp)); +} +#endif + + and change the the old names and function calls to the R3.14 versions:
- #define dbFindRecordType dbFindRecdes
- #define dbGetNRecordTypes dbGetNRecdes
- #define dbNextRecordType dbNextRecdes
- #define dbFirstField dbFirstFielddes
- #define dbGetRecordTypeName dbGetRecdesName
- #define dbFirstRecordType dbFirstRecdes
- #define dbNextField dbNextFielddes
- #define dbGetMenuChoices dbGetChoices +#if EPICS_REVISION && EPICS_REVISION == 13 +#define dbFindRecordType dbFindRecdes +#define dbGetNRecordTypes dbGetNRecdes +#define dbNextRecordType dbNextRecdes +#define dbFirstField dbFirstFielddes +#define dbGetRecordTypeName dbGetRecdesName +#define dbFirstRecordType dbFirstRecdes +#define dbNextField dbNextFielddes +#define dbGetMenuChoices dbGetChoices -long dbReadDatabaseFP(
-
- DBBASE **ppdbbase,FILE *fp, const char *path,const char - *substitutions)
- {
- return(dbRead(*ppdbbase,fp));
- }
- #endif
- dbFindRecdes => dbFindRecordType- +
- dbGetNRecdes => dbGetNRecordTypes
- dbNextRecdes => dbNextRecordType
- dbFirstFielddes => dbFirstField
- dbGetRecdesName => dbGetRecordTypeName
- dbFirstRecdes => dbFirstRecordType
- dbNextFielddes => dbNextField
- dbGetChoices => dbGetMenuChoices
- dbRead(pdbbase,fp) => dbReadDatabaseFP(&pdbbase,fp,0,0) - - -
dbFindRecdes => dbFindRecordType +dbGetNRecdes => dbGetNRecordTypes +dbNextRecdes => dbNextRecordType +dbFirstFielddes => dbFirstField +dbGetRecdesName => dbGetRecordTypeName +dbFirstRecdes => dbFirstRecordType +dbNextFielddes => dbNextField +dbGetChoices => dbGetMenuChoices +dbRead(pdbbase,fp) => dbReadDatabaseFP(&pdbbase,fp,0,0) +
Since target architecture specifications have been changed (solaris to
solaris-sparc, win32 to win32-x86, ...) Makefile.Host references to and
- tests on T_A have to be changed. In most cases T_A can be replaced by
- OS_CLASS. Since HOST_ARCH will eventually be phased out, it would be a
+ tests on T_A have to be changed. In most cases T_A can be replaced by
+ OS_CLASS. Since HOST_ARCH will eventually be phased out, it would be a
good idea to change any Makefile.Host references to HOST_ARCH to OS_CLASS
if possible.
For example change
- ifeq ($(T_A),solaris)+
- RPCFLAGS = -K -1
- endif
ifeq ($(T_A),solaris) +RPCFLAGS = -K -1 +endif +to
- ifeq ($(OS_CLASS),solaris)+
- RPCFLAGS = -K -1
- endif
ifeq ($(OS_CLASS),solaris) +RPCFLAGS = -K -1 +endif +
Statements of the form: ca_puser(chid) = xyz; should to be
- changed to: ca_set_puser(chid,xyz);
-
- extern "C" {+
- #include "cadefs.h"
- } /* end extern C */
extern "C" {
+#include "cadefs.h"
+} /* end extern C */
+
to
@@ -174,8 +173,8 @@ directory.Some infrequently used R3.13 timestamp functions and macro definitions have been removed from EPICS base and now exist in a library, ts, created - and installed in the ar extension. The only ANL distributed extension that - uses these unbundled functions and macros is cau. The two R3.13 functions + and installed in the ar extension. The only ANL distributed extension that + uses these unbundled functions and macros is cau. The two R3.13 functions tsStampToText and tsLocalTime along with the definitions TS_TEXT_MONDDYYYY and TS_TEXT_MMDDYY have been retained in R3.14 for extension compatibility purposes.
PROD_LIBS or USR_LIBS in your Makefile.Host as follows:
@@ -185,27 +184,28 @@ directory.- #include "tsSubr.h" ++ifdef BASE_3_14 +PROD_LIBS += ts +ts_DIR = $(EPICS_EXTENSIONS_LIB) +endif +#include "tsSubr.h" -ifdef BASE_3_14
-
- PROD_LIBS += ts
- ts_DIR = $(EPICS_EXTENSIONS_LIB)
- endif
The length restriction to database record names no longer exists in R3.14 - so the the FLDNAME_SZ macro definition was removed.from dbDefs.h. + so the the FLDNAME_SZ macro definition was removed.from dbDefs.h. Extensions which still have a field name restriction should add the field name size definition to their code until they are updated.
- #ifndef FLDNAME_SZ+
- #define FLDNAME_SZ 4 /*Field Name Size*/
- #endif
#ifndef FLDNAME_SZ +#define FLDNAME_SZ 4 /*Field Name Size*/ +#endif +-
The EPICS base version macros that start with "BASE_" have been removed @@ -214,24 +214,14 @@ directory.
-- - - -- BASE_VERSION - => EPICS_VERSION+ BASE_VERSION => EPICS_VERSION + BASE_REVISION => EPICS_REVISION + BASE_MODIFICATION => EPICS_MODIFICATION + BASE_UPDATE_NAME => EPICS_UPDATE_NAME + BASE_UPDATE_LEVEL => EPICS_UPDATE_LEVEL + BASE_VERSION_STRING => EPICS_VERSION_STRING +
- BASE_REVISION => - EPICS_REVISION
- BASE_MODIFICATION => EPICS_MODIFICATION
- BASE_UPDATE_NAME => - EPICS_UPDATE_NAME
- BASE_UPDATE_LEVEL => - EPICS_UPDATE_LEVEL
- BASE_VERSION_STRING => - EPICS_VERSION_STRING