Make rec, softDev, and testDev libs shared.

This commit is contained in:
Janet B. Anderson
2003-03-20 19:53:29 +00:00
parent 63b588defb
commit 335269a25a
76 changed files with 286 additions and 120 deletions

View File

@@ -117,11 +117,21 @@ int main(int argc,char **argv)
errPrintf(0,__FILE__,__LINE__,"Error opening %s\n",outFilename);
exit(-1);
}
fprintf(outFile,"#ifdef epicsExportSharedSymbols\n");
fprintf(outFile,"# define INCrecH_epicsExportSharedSymbols\n");
fprintf(outFile,"# undef epicsExportSharedSymbols\n");
fprintf(outFile,"#endif\n");
fprintf(outFile,"#include \"ellLib.h\"\n");
fprintf(outFile,"#include \"epicsMutex.h\"\n");
fprintf(outFile,"#include \"link.h\"\n");
fprintf(outFile,"#include \"epicsTime.h\"\n");
fprintf(outFile,"#include \"epicsTypes.h\"\n");
fprintf(outFile,"#ifdef INCrecH_epicsExportSharedSymbols\n");
fprintf(outFile,"# define epicsExportSharedSymbols\n");
fprintf(outFile,"#endif\n");
fprintf(outFile,"#include \"shareLib.h\"\n");
pdbMenu = (dbMenu *)ellFirst(&pdbbase->menuList);
while(pdbMenu) {
fprintf(outFile,"\n#ifndef INC%sH\n",pdbMenu->name);
@@ -140,6 +150,9 @@ int main(int argc,char **argv)
while(pdbRecordType) {
fprintf(outFile,"#ifndef INC%sH\n",pdbRecordType->name);
fprintf(outFile,"#define INC%sH\n",pdbRecordType->name);
fprintf(outFile,"#ifdef epicsExportSharedSymbols\n");
fprintf(outFile,"epicsShareExtern struct rset %sRSET;\n",pdbRecordType->name);
fprintf(outFile,"#endif\n");
fprintf(outFile,"typedef struct %s",pdbRecordType->name);
if(!isdbCommonRecord) fprintf(outFile,"Record");
fprintf(outFile," {\n");
@@ -234,7 +247,10 @@ int main(int argc,char **argv)
fprintf(outFile,"#endif\n");
pdbRecordType = (dbRecordType *)ellFirst(&pdbbase->recordTypeList);
while(pdbRecordType) {
fprintf(outFile,"int %sRecordSizeOffset(dbRecordType *pdbRecordType)\n{\n",
fprintf(outFile,"#ifdef epicsExportSharedSymbols\n");
fprintf(outFile,"epicsShareFunc \n");
fprintf(outFile,"#endif\n");
fprintf(outFile,"int epicsShareAPI %sRecordSizeOffset(dbRecordType *pdbRecordType)\n{\n",
pdbRecordType->name);
fprintf(outFile," %sRecord *prec = 0;\n",pdbRecordType->name);
for(i=0; i<pdbRecordType->no_fields; i++) {

View File

@@ -11,8 +11,6 @@ TOP=../../..
include $(TOP)/configure/CONFIG
SHARED_LIBRARIES = NO
SRCS += devAiSoft.c
SRCS += devAiSoftRaw.c
SRCS += devAoSoft.c
@@ -39,6 +37,7 @@ SRCS += devSoSoft.c
SRCS += devWfSoft.c
LIBRARY_IOC += softDevIoc
softDevIoc_LIBS += dbIoc
# For R3.13 compatability
OBJS_vxWorks = $(SRCS:%.c=%)

View File

@@ -27,10 +27,13 @@
#include "devSup.h"
#include "link.h"
#include "aiRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devAiSoft */
static long init_record();
static long read_ai();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -28,10 +28,13 @@
#include "devSup.h"
#include "link.h"
#include "aiRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devAiSoftRaw */
static long init_record(aiRecord *pai);
static long read_ai(aiRecord *pai);
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -30,13 +30,15 @@
#include "link.h"
#include "special.h"
#include "aoRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* added for Channel Access Links */
static long init_record();
/* Create the dset for devAoSoft */
static long write_ao();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -30,10 +30,12 @@
#include "link.h"
#include "special.h"
#include "aoRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devAoSoftRaw */
static long write_ao(aoRecord *pao);
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "biRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devBiSoft */
static long init_record();
static long read_bi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "biRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devBiSoftRaw */
static long init_record();
static long read_bi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -29,13 +29,16 @@
#include "recSup.h"
#include "devSup.h"
#include "boRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
static long init_record();
/* Create the dset for devBoSoft */
static long write_bo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -28,6 +28,9 @@
#include "recSup.h"
#include "devSup.h"
#include "boRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* added for Channel Access Links */
static long init_record();
@@ -35,7 +38,7 @@ static long init_record();
/* Create the dset for devBoSoftRaw */
static long write_bo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -24,11 +24,14 @@
#include "recSup.h"
#include "devSup.h"
#include "eventRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devEventSoft */
static long init_record();
static long read_event();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -26,10 +26,13 @@
#include "devSup.h"
#include "link.h"
#include "histogramRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devHistogramSoft */
static long init_record();
static long read_histogram();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -24,12 +24,15 @@
#include "recSup.h"
#include "devSup.h"
#include "longinRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devLiSoft */
static long init_record();
static long read_longin();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -24,10 +24,13 @@
#include "recSup.h"
#include "devSup.h"
#include "longoutRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devLoSoft */
static long init_record();
static long write_longout();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbbiDirectRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbbiSoft */
static long init_record();
static long read_mbbi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbbiDirectRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbbiDirectSoftRaw */
static long init_record();
static long read_mbbi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbbiRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbbiSoft */
static long init_record();
static long read_mbbi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbbiRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbbiSoftRaw */
static long init_record();
static long read_mbbi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbboDirectRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbboSoft */
static long init_record();
static long write_mbbo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,11 +25,14 @@
#include "recSup.h"
#include "devSup.h"
#include "mbboDirectRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbboDirectSoftRaw */
static long init_record();
static long write_mbbo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,10 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbboRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbboSoft */
static long init_record();
static long write_mbbo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -24,10 +24,13 @@
#include "recSup.h"
#include "devSup.h"
#include "mbboRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbboSoftRaw */
static long init_record();
static long write_mbbo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,13 +25,15 @@
#include "devSup.h"
#include "link.h"
#include "subArrayRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
static int sizeofTypes[] = {MAX_STRING_SIZE,1,1,2,2,4,4,4,8,2};
/* Create the dset for devSASoft */
static long init_record();
static long read_sa();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -26,11 +26,13 @@
#include "recSup.h"
#include "devSup.h"
#include "stringinRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devSiSoft */
static long init_record();
static long read_stringin();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -25,11 +25,13 @@
#include "recSup.h"
#include "devSup.h"
#include "stringoutRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devSoSoft */
static long init_record();
static long write_stringout();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -30,11 +30,13 @@
#include "devSup.h"
#include "link.h"
#include "waveformRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devWfSoft */
static long init_record();
static long read_wf();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -11,8 +11,6 @@ TOP=../../..
include $(TOP)/configure/CONFIG
SHARED_LIBRARIES = NO
SRCS += devAiTestAsyn.c
SRCS += devAoTestAsyn.c
SRCS += devBiTestAsyn.c
@@ -26,6 +24,7 @@ SRCS += devSoTestAsyn.c
SRCS += devWfTestAsyn.c
LIBRARY_IOC = testDevIoc
testDevIoc_LIBS += dbIoc
# For R3.13 compatability
OBJS_vxWorks = $(SRCS:%.c=%)

View File

@@ -33,11 +33,13 @@
#include "link.h"
#include "dbCommon.h"
#include "aiRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devAiTestAsyn */
static long init_record();
static long read_ai();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;
@@ -54,6 +56,7 @@ struct {
read_ai,
NULL};
static long init_record(pai)
struct aiRecord *pai;
{

View File

@@ -34,11 +34,13 @@
#include "link.h"
#include "dbCommon.h"
#include "aoRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devAoTestAsyn */
static long init_record();
static long write_ao();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -33,11 +33,13 @@
#include "link.h"
#include "dbCommon.h"
#include "biRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devBiTestAsyn */
static long init_record();
static long read_bi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -34,11 +34,13 @@
#include "link.h"
#include "dbCommon.h"
#include "boRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devBoTestAsyn */
static long init_record();
static long write_bo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -27,11 +27,14 @@
#include "recSup.h"
#include "devSup.h"
#include "eventRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devEventTestIoEvent */
static long init_record();
static long get_ioint_info();
static long read_event();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -29,11 +29,13 @@
#include "link.h"
#include "dbCommon.h"
#include "histogramRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devHistogramTestAsyn */
static long init_record();
static long read_histogram();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -33,11 +33,13 @@
#include "link.h"
#include "dbCommon.h"
#include "mbbiRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbbiTestAsyn */
static long init_record();
static long read_mbbi();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -34,11 +34,13 @@
#include "link.h"
#include "dbCommon.h"
#include "mbboRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devMbboTestAsyn */
static long init_record();
static long write_mbbo();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -32,11 +32,13 @@
#include "link.h"
#include "dbCommon.h"
#include "stringinRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devSiTestAsyn */
static long init_record();
static long read_stringin();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -33,11 +33,13 @@
#include "link.h"
#include "dbCommon.h"
#include "stringoutRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devSoTestAsyn */
static long init_record();
static long write_stringout();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -33,11 +33,13 @@
#include "link.h"
#include "dbCommon.h"
#include "waveformRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/* Create the dset for devWfTestAsyn */
static long init_record();
static long read_wf();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -13,20 +13,29 @@ DBD += _APPNAME_.dbd
#=============================
PROD_IOC = _APPNAME_
LIBRARY_IOC += _APPNAME_Ioc
_APPNAME__SRCS += xxxRecord.c
_APPNAME__SRCS += devXxxSoft.c
_APPNAME__SRCS += dbSubExample.c
_APPNAME_Ioc_SRCS += xxxRecord.c
_APPNAME_Ioc_SRCS += devXxxSoft.c
_APPNAME_Ioc_LIBS += $(EPICS_BASE_IOC_LIBRARIES)
_APPNAME_Ioc_SYS_LIBS_solaris += c
#=============================
PROD_IOC = _APPNAME_
# <name>_registerRecordDeviceDriver.cpp will be created from <name>.dbd
_APPNAME__SRCS += _APPNAME__registerRecordDeviceDriver.cpp
_APPNAME__SRCS += dbSubExample.c
_APPNAME__SRCS_DEFAULT += _APPNAME_Main.cpp
_APPNAME__SRCS_vxWorks += -nil-
#The following adds support from base/src/vxWorks
_APPNAME__OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary
_APPNAME__LIBS += _APPNAME_Ioc
#NOTES:
# 1)It is not possible to build sncExample both as a component of _APPNAME_
# and standalone. You must choose only one.
@@ -36,46 +45,16 @@ _APPNAME__OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary
#_APPNAME__SRCS += sncExample.stt
#_APPNAME__LIBS += seq
#_APPNAME__LIBS += pv
#seq_DIR = $(SNCSEQ_LIB)
#pv_DIR = $(SNCSEQ_LIB)
_APPNAME__LIBS += $(EPICS_BASE_IOC_LIBRARIES)
#The following builds sncExample as a standalone application
#PROD_HOST += sncExample
#sncExample_SNCFLAGS += +m
#sncExample_SRCS += sncExample.stt
#seq_DIR = $(SNCSEQ_LIB)
#pv_DIR = $(SNCSEQ_LIB)
#sncExample_LIBS += seq
#sncExample_LIBS += pv
#sncExample_LIBS += iocsh
#sncExample_LIBS += miscIoc
#sncExample_LIBS += rsrvIoc
#sncExample_LIBS += dbtoolsIoc
#sncExample_LIBS += asIoc
#sncExample_LIBS += dbIoc
#sncExample_LIBS += registryIoc
#sncExample_LIBS += dbStaticIoc
#sncExample_LIBS += ca
#sncExample_LIBS += Com
# Use win32 object libs for registered support
_APPNAME__LIBS_win32 += recIocObj
_APPNAME__LIBS_win32 += softDevIocObj
_APPNAME__LIBS_win32 += testDevIocObj
_APPNAME__LIBS_DEFAULT += recIoc
_APPNAME__LIBS_DEFAULT += softDevIoc
_APPNAME__LIBS_DEFAULT += testDevIoc
_APPNAME__LIBS += iocsh
_APPNAME__LIBS += miscIoc
_APPNAME__LIBS += rsrvIoc
_APPNAME__LIBS += dbtoolsIoc
_APPNAME__LIBS += asIoc
_APPNAME__LIBS += dbIoc
_APPNAME__LIBS += registryIoc
_APPNAME__LIBS += dbStaticIoc
_APPNAME__LIBS += ca
_APPNAME__LIBS += Com
#sncExample_LIBS += $(EPICS_BASE_IOC_LIBRARIES)
#===========================

View File

@@ -15,11 +15,13 @@
#include "devSup.h"
#include "link.h"
#include "xxxRecord.h"
#define epicsExportSharedSymbols
#include "shareLib.h"
/*Create the dset for devXxxSoft */
static long init_record();
static long read_xxx();
struct {
epicsShareExtern struct {
long number;
DEVSUPFUN report;
DEVSUPFUN init;

View File

@@ -16,6 +16,7 @@
#include "errMdef.h"
#include "recSup.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "xxxRecord.h"
#undef GEN_SIZE_OFFSET
@@ -39,7 +40,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset xxxRSET={
epicsShareDef struct rset xxxRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -10,8 +10,6 @@
TOP=../..
include $(TOP)/configure/CONFIG
SHARED_LIBRARIES = NO
INC += egDefs.h
INC += erDefs.h
INC += ereventDefs.h
@@ -84,6 +82,8 @@ LIBSRCS += waveformRecord.c
LIBRARY_IOC += recIoc
recIoc_LIBS = dbStaticIoc registryIoc asIoc dbIoc ca Com
# For R3.13 compatability
OBJS_vxWorks = $(LIBSRCS:%.c=%)

View File

@@ -39,6 +39,7 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "aaiRecord.h"
#undef GEN_SIZE_OFFSET
@@ -62,7 +63,7 @@ static long get_graphic_double();
static long get_control_double();
#define get_alarm_double NULL
struct rset aaiRSET={
epicsShareDef struct rset aaiRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -39,6 +39,7 @@
#include "devSup.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "aaoRecord.h"
#undef GEN_SIZE_OFFSET
@@ -62,7 +63,7 @@ static long get_graphic_double();
static long get_control_double();
#define get_alarm_double NULL
struct rset aaoRSET={
epicsShareDef struct rset aaoRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -36,6 +36,7 @@
#include "recGbl.h"
#include "special.h"
#include "menuConvert.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "aiRecord.h"
#undef GEN_SIZE_OFFSET
@@ -59,7 +60,9 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset aiRSET={
epicsShareDef int jbaint=88l;
epicsShareDef struct rset aiRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -37,6 +37,7 @@
#include "recGbl.h"
#include "menuConvert.h"
#include "menuOmsl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "aoRecord.h"
#undef GEN_SIZE_OFFSET
@@ -61,7 +62,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset aoRSET={
epicsShareDef struct rset aoRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -35,6 +35,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "biRecord.h"
#undef GEN_SIZE_OFFSET
@@ -56,7 +58,7 @@ static long put_enum_str();
#define get_graphic_double NULL
#define get_control_double NULL
#define get_alarm_double NULL
struct rset biRSET={
epicsShareDef struct rset biRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -35,6 +35,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "boRecord.h"
#undef GEN_SIZE_OFFSET
@@ -60,7 +62,7 @@ static long put_enum_str();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset boRSET={
epicsShareDef struct rset boRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -34,6 +34,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "calcRecord.h"
#undef GEN_SIZE_OFFSET
@@ -57,7 +59,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset calcRSET={
epicsShareDef struct rset calcRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -38,6 +38,8 @@
#include "taskwd.h"
#include "postfix.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "calcoutRecord.h"
#undef GEN_SIZE_OFFSET
@@ -62,7 +64,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset calcoutRSET={
epicsShareDef struct rset calcoutRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -33,6 +33,8 @@
#include "special.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "compressRecord.h"
#undef GEN_SIZE_OFFSET
@@ -56,7 +58,7 @@ static long get_graphic_double();
static long get_control_double();
#define get_alarm_double NULL
struct rset compressRSET={
epicsShareDef struct rset compressRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -39,6 +39,8 @@
#include "recGbl.h"
#include "special.h"
#include "menuOmsl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "dfanoutRecord.h"
#undef GEN_SIZE_OFFSET
@@ -62,7 +64,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset dfanoutRSET={
epicsShareDef struct rset dfanoutRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -30,6 +30,7 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "egRecord.h"
@@ -59,7 +60,7 @@ STATIC long EgProc(struct egRecord *);
#define get_control_double NULL
#define get_alarm_double NULL
struct rset egRSET={
epicsShareDef struct rset egRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -30,6 +30,9 @@
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#include "egRecord.h"
#define GEN_SIZE_OFFSET
#include "egeventRecord.h"
@@ -59,7 +62,7 @@ static long get_graphic_double(struct dbAddr *paddr, struct dbr_grDouble *pgd);
static long get_control_double(struct dbAddr *paddr, struct dbr_ctrlDouble *pcd);
static long get_alarm_double(struct dbAddr *paddr, struct dbr_alDouble *pad);
struct rset egeventRSET={
epicsShareDef struct rset egeventRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -31,6 +31,8 @@
#include "recGbl.h"
#include "erDefs.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "erRecord.h"
#undef GEN_SIZE_OFFSET
@@ -58,7 +60,7 @@ static long get_graphic_double(struct dbAddr *paddr, struct dbr_grDouble *pgd);
static long get_control_double(struct dbAddr *paddr, struct dbr_ctrlDouble *pcd);
static long get_alarm_double(struct dbAddr *paddr, struct dbr_alDouble *pad);
struct rset erRSET={
epicsShareDef struct rset erRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -31,6 +31,8 @@
#include "recGbl.h"
#include "ereventDefs.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "ereventRecord.h"
#undef GEN_SIZE_OFFSET
@@ -58,7 +60,7 @@ STATIC long ErEventProc(struct ereventRecord *);
#define get_control_double NULL
#define get_alarm_double NULL
struct rset ereventRSET={
epicsShareDef struct rset ereventRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -33,6 +33,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "eventRecord.h"
#undef GEN_SIZE_OFFSET
@@ -56,7 +58,7 @@ static long get_value();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset eventRSET={
epicsShareDef struct rset eventRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -30,6 +30,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "fanoutRecord.h"
#undef GEN_SIZE_OFFSET
@@ -54,7 +56,7 @@ static long process();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset fanoutRSET={
epicsShareDef struct rset fanoutRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -37,6 +37,8 @@
#include "special.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "histogramRecord.h"
#undef GEN_SIZE_OFFSET
@@ -60,7 +62,7 @@ static long get_precision(struct dbAddr *paddr,long *precision);
static long get_graphic_double(struct dbAddr *paddr,struct dbr_grDouble *pgd);
static long get_control_double(struct dbAddr *paddr,struct dbr_ctrlDouble *pcd);
struct rset histogramRSET={
epicsShareDef struct rset histogramRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -32,6 +32,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "longinRecord.h"
#undef GEN_SIZE_OFFSET
@@ -55,7 +57,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset longinRSET={
epicsShareDef struct rset longinRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -29,6 +29,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "longoutRecord.h"
#undef GEN_SIZE_OFFSET
@@ -54,7 +56,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset longoutRSET={
epicsShareDef struct rset longoutRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -35,6 +35,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "mbbiDirectRecord.h"
#undef GEN_SIZE_OFFSET
@@ -58,7 +60,7 @@ static long process();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset mbbiDirectRSET={
epicsShareDef struct rset mbbiDirectRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -32,6 +32,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "mbbiRecord.h"
#undef GEN_SIZE_OFFSET
@@ -53,7 +55,7 @@ static long put_enum_str();
#define get_graphic_double NULL
#define get_control_double NULL
#define get_alarm_double NULL
struct rset mbbiRSET={
epicsShareDef struct rset mbbiRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -34,6 +34,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "mbboDirectRecord.h"
#undef GEN_SIZE_OFFSET
@@ -59,7 +61,7 @@ static long special();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset mbboDirectRSET={
epicsShareDef struct rset mbboDirectRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -34,6 +34,8 @@
#include "recSup.h"
#include "recGbl.h"
#include "special.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "mbboRecord.h"
#undef GEN_SIZE_OFFSET
@@ -59,7 +61,7 @@ static long put_enum_str();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset mbboRSET={
epicsShareDef struct rset mbboRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -31,6 +31,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "permissiveRecord.h"
#undef GEN_SIZE_OFFSET
@@ -54,7 +56,7 @@ static long process();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset permissiveRSET={
epicsShareDef struct rset permissiveRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -32,6 +32,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "selRecord.h"
#undef GEN_SIZE_OFFSET
@@ -55,7 +57,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset selRSET={
epicsShareDef struct rset selRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -32,6 +32,8 @@
#include "special.h"
#include "callback.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "seqRecord.h"
#undef GEN_SIZE_OFFSET
@@ -42,7 +44,7 @@ int seqRecDebug = 0;
static long init_record(), process(), asyncFinish(), get_precision();
static void processCallback();
struct rset seqRSET={
epicsShareDef struct rset seqRSET={
RSETNUMBER,
NULL, /* report */
NULL, /* initialize */

View File

@@ -32,6 +32,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "stateRecord.h"
#undef GEN_SIZE_OFFSET
@@ -55,7 +57,7 @@ static long process();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset stateRSET={
epicsShareDef struct rset stateRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -33,6 +33,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "stringinRecord.h"
#undef GEN_SIZE_OFFSET
@@ -56,7 +58,7 @@ static long process();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset stringinRSET={
epicsShareDef struct rset stringinRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -33,6 +33,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "stringoutRecord.h"
#undef GEN_SIZE_OFFSET
@@ -58,7 +60,7 @@ static long process();
#define get_control_double NULL
#define get_alarm_double NULL
struct rset stringoutRSET={
epicsShareDef struct rset stringoutRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -35,6 +35,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "subArrayRecord.h"
#undef GEN_SIZE_OFFSET
@@ -58,7 +60,7 @@ static long get_graphic_double();
static long get_control_double();
#define get_alarm_double NULL
struct rset subArrayRSET={
epicsShareDef struct rset subArrayRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -36,6 +36,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "subRecord.h"
#undef GEN_SIZE_OFFSET
@@ -59,7 +61,7 @@ static long get_graphic_double();
static long get_control_double();
static long get_alarm_double();
struct rset subRSET={
epicsShareDef struct rset subRSET={
RSETNUMBER,
report,
initialize,
@@ -85,7 +87,7 @@ static long fetch_values();
static void monitor();
#define ARG_MAX 12
typedef long (*SUBFUNCPTR)();
typedef long (epicsShareAPI *SUBFUNCPTR)();
static long init_record(psub,pass)
struct subRecord *psub;

View File

@@ -34,6 +34,8 @@
#include "errMdef.h"
#include "recSup.h"
#include "recGbl.h"
#define epicsExportSharedSymbols
#define GEN_SIZE_OFFSET
#include "waveformRecord.h"
#undef GEN_SIZE_OFFSET
@@ -55,7 +57,7 @@ static long get_precision();
static long get_graphic_double();
static long get_control_double();
#define get_alarm_double NULL
struct rset waveformRSET={
epicsShareDef struct rset waveformRSET={
RSETNUMBER,
report,
initialize,

View File

@@ -61,16 +61,23 @@ print << "END" ;
#include "registryDriverSupport.h"
#include "registryFunction.h"
#include "iocsh.h"
#include "shareLib.h"
END
#definitions for recordtype
if($numberRecordType>0) {
print "#ifdef __cplusplus\n";
print "extern \"C\" {\n";
print "#endif\n";
for ($i=0; $i<$numberRecordType; $i++) {
print "extern \"C\" struct rset $recordType[$i]RSET;\n";
print "extern \"C\" int $recordType[$i]RecordSizeOffset(dbRecordType *pdbRecordType);\n";
print "epicsShareExtern struct rset $recordType[$i]RSET;\n";
print "epicsShareFunc int epicsShareAPI $recordType[$i]RecordSizeOffset(dbRecordType *pdbRecordType);\n";
#NOTE the following caused a compiler error on vxWorks
# print "extern computeSizeOffset $recordType[$i]RecordSizeOffset;\n";
}
print "#ifdef __cplusplus\n";
print "}\n";
print "#endif\n";
print "\nstatic const char * const recordTypeNames[$numberRecordType] = {\n";
for ($i=0; $i<$numberRecordType; $i++) {
print " \"$recordType[$i]\"";
@@ -90,9 +97,15 @@ if($numberRecordType>0) {
#definitions for device
if($numberDeviceSupport>0) {
print "#ifdef __cplusplus\n";
print "extern \"C\" {\n";
print "#endif\n";
for ($i=0; $i<$numberDeviceSupport; $i++) {
print "extern \"C\" struct dset $deviceSupport[$i];\n";
print "epicsShareExtern struct dset $deviceSupport[$i];\n";
}
print "#ifdef __cplusplus\n";
print "}\n";
print "#endif\n";
print "\nstatic const char * const deviceSupportNames[$numberDeviceSupport] = {\n";
for ($i=0; $i<$numberDeviceSupport; $i++) {
print " \"$deviceSupport[$i]\"";
@@ -112,9 +125,15 @@ if($numberDeviceSupport>0) {
#definitions for driver
if($numberDriverSupport>0) {
print "#ifdef __cplusplus\n";
print "extern \"C\" {\n";
print "#endif\n";
for ($i=0; $i<$numberDriverSupport; $i++) {
print "extern \"C\" struct drvet $driverSupport[$i];\n";
print "epicsShareExtern struct drvet $driverSupport[$i];\n";
}
print "#ifdef __cplusplus\n";
print "}\n";
print "#endif\n";
print "\nstatic char *driverSupportNames[$numberDriverSupport] = {\n";
for ($i=0; $i<$numberDriverSupport; $i++) {
print " \"$driverSupport[$i]\"";

View File

@@ -20,8 +20,7 @@ struct dbRecordType;
struct rset;
struct dbBase;
typedef int (*computeSizeOffset)(struct dbRecordType *pdbRecordType);
typedef int (epicsShareAPI *computeSizeOffset)(struct dbRecordType *pdbRecordType);
typedef struct recordTypeLocation {
struct rset *prset;