new way to build
This commit is contained in:
@@ -11,7 +11,7 @@ vxDbLib_SRCS += devLib.c
|
||||
vxDbLib_SRCS += devLibVxWorks.c
|
||||
vxDbLib_SRCS += tsSubr.c
|
||||
|
||||
LIBRARY_Ioc = vxDbLib
|
||||
LIBRARY_vxWorks = vxDbLib
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -13,6 +13,9 @@
|
||||
|
||||
/*
|
||||
* $Log$
|
||||
* Revision 1.32 2000/01/24 21:26:55 mrk
|
||||
* new way to build
|
||||
*
|
||||
* Revision 1.31 1999/08/26 21:36:39 jhill
|
||||
* fixed bug where time sync UDP client was getting in a state where
|
||||
* it was using the response from the previous request, and ending
|
||||
@@ -175,7 +178,7 @@
|
||||
#include "errMdef.h"
|
||||
#include "drvSup.h"
|
||||
#include "drvTS.h"
|
||||
#include "bsdSocketResource.h"
|
||||
#include "osiSockResource.h"
|
||||
|
||||
#define TSprintf epicsPrintf
|
||||
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
|
||||
/*
|
||||
* $Log$
|
||||
* Revision 1.6 1999/12/14 21:35:34 jhill
|
||||
* use osiTime.h to get TS_STAMP
|
||||
*
|
||||
* Revision 1.5 1999/11/18 13:30:07 mrk
|
||||
* new makefile method; moved drvTS.h to vxWorks specific code
|
||||
*
|
||||
@@ -76,7 +79,7 @@ of this distribution.
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
|
||||
#include <osiTime.h>
|
||||
#include "tsStamp.h"
|
||||
|
||||
#ifdef TS_DRIVER
|
||||
#define TS_EXTERN
|
||||
|
||||
@@ -7,7 +7,7 @@ INC += devApsEr.h
|
||||
SRCS += devApsEg.c
|
||||
SRCS += devApsEr.c
|
||||
|
||||
OBJS_IOC += $(SRCS:%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ include $(TOP)/configure/CONFIG
|
||||
SRCS += devAt5Vxi.c
|
||||
SRCS += devAt8Fp.c
|
||||
|
||||
OBJS_IOC += $(SRCS:%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ include $(TOP)/configure/CONFIG
|
||||
|
||||
SRCS += devSmCompumotor1830.c
|
||||
|
||||
OBJS_IOC = $(SRCS:%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ INC += devCommonGpib.h
|
||||
|
||||
SRCS += devCommonGpib.c
|
||||
|
||||
OBJS_IOC += $(SRCS:%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ include $(TOP)/configure/CONFIG
|
||||
|
||||
SRCS += devWfJoergerVtr1.c
|
||||
|
||||
OBJS_IOC += $(SRCS:%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -12,9 +12,9 @@ SRCS+= devXxDc5009Gpib.c
|
||||
SRCS+= devXxK263Gpib.c
|
||||
SRCS+= devXxSkeletonGpib.c
|
||||
|
||||
PROD += $(SRCS:%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
LIBRARY += devLibOpt
|
||||
LIBRARY_vxWorks += devLibOpt
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -11,20 +11,20 @@ INC += drvMz8310.h
|
||||
INC += drvStc.h
|
||||
INC += epvxi.h
|
||||
|
||||
SRCS.c += ../drvAt5Vxi.c
|
||||
SRCS.c += ../drvEpvxi.c
|
||||
SRCS.c += ../drvEpvxiMsg.c
|
||||
SRCS.c += ../drvHp1404a.c
|
||||
SRCS.c += ../drvHpe1368a.c
|
||||
SRCS.c += ../drvHpe1445a.c
|
||||
SRCS.c += ../drvKscV215.c
|
||||
SRCS.c += ../drvMz8310.c
|
||||
SRCS.c += ../drvStc.c
|
||||
#SRCS.c += ../drvCaenV265.c
|
||||
SRCS += drvAt5Vxi.c
|
||||
SRCS += drvEpvxi.c
|
||||
SRCS += drvEpvxiMsg.c
|
||||
SRCS += drvHp1404a.c
|
||||
SRCS += drvHpe1368a.c
|
||||
SRCS += drvHpe1445a.c
|
||||
SRCS += drvKscV215.c
|
||||
SRCS += drvMz8310.c
|
||||
SRCS += drvStc.c
|
||||
#SRCS += drvCaenV265.c
|
||||
|
||||
#SRCS.c += ../drvVmic2534.c
|
||||
#SRCS += drvVmic2534.c
|
||||
|
||||
PROD += $(SRCS.c:../%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
MAN3 = drvEpvxi.3
|
||||
|
||||
|
||||
@@ -25,25 +25,25 @@ INC += drvOms.h
|
||||
INC += steppermotor.h
|
||||
|
||||
|
||||
SRCS += ../module_types.c
|
||||
SRCS += ../drvBb902.c
|
||||
SRCS += ../drvBb910.c
|
||||
SRCS += ../drvComet.c
|
||||
SRCS += ../drvCompuSm.c
|
||||
SRCS += ../drvDvx.c
|
||||
SRCS += ../drvFp.c
|
||||
SRCS += ../drvFpm.c
|
||||
SRCS += ../drvGpib.c
|
||||
SRCS += ../drvJgvtr1.c
|
||||
SRCS += ../drvOms.c
|
||||
SRCS += ../drvVmi4100.c
|
||||
SRCS += ../drvXy010.c
|
||||
SRCS += ../drvXy210.c
|
||||
SRCS += ../drvXy220.c
|
||||
SRCS += ../drvXy240.c
|
||||
SRCS += ../drvXy566.c
|
||||
SRCS += module_types.c
|
||||
SRCS += drvBb902.c
|
||||
SRCS += drvBb910.c
|
||||
SRCS += drvComet.c
|
||||
SRCS += drvCompuSm.c
|
||||
SRCS += drvDvx.c
|
||||
SRCS += drvFp.c
|
||||
SRCS += drvFpm.c
|
||||
SRCS += drvGpib.c
|
||||
SRCS += drvJgvtr1.c
|
||||
SRCS += drvOms.c
|
||||
SRCS += drvVmi4100.c
|
||||
SRCS += drvXy010.c
|
||||
SRCS += drvXy210.c
|
||||
SRCS += drvXy220.c
|
||||
SRCS += drvXy240.c
|
||||
SRCS += drvXy566.c
|
||||
|
||||
PROD += $(SRCS:../%.c=%.o)
|
||||
OBJS_vxWorks += $(SRCS:%.c=%.o)
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -72,14 +72,15 @@ static char *sccsID = "@(#)drvComet.c 1.11\t9/16/92";
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <iv.h>
|
||||
#include <module_types.h>
|
||||
#include <task_params.h>
|
||||
#include <fast_lock.h>
|
||||
#include <vme.h>
|
||||
#include <drvSup.h>
|
||||
#include <dbDefs.h>
|
||||
#include <dbScan.h>
|
||||
#include <taskwd.h>
|
||||
|
||||
#include "module_types.h"
|
||||
#include "task_params.h"
|
||||
#include "fast_lock.h"
|
||||
#include "drvSup.h"
|
||||
#include "dbDefs.h"
|
||||
#include "dbScan.h"
|
||||
#include "taskwd.h"
|
||||
|
||||
#define COMET_NCHAN 4
|
||||
#define COMET_CHANNEL_MEM_SIZE 0x20000 /* bytes */
|
||||
|
||||
@@ -69,123 +69,26 @@
|
||||
#include <vxLib.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Macro equivalent of vxWorks glue for better performance
|
||||
*/
|
||||
#ifdef VRTX_KERNEL
|
||||
# define semGive(SEMID)\
|
||||
{ if ((SEMID)->count == 0)vrtxPost (&((SEMID)->count), 1); }
|
||||
|
||||
# define semTake(SEMID)\
|
||||
{int dummy; vrtxPend (&((SEMID)->count), 0, &dummy); }
|
||||
#endif
|
||||
#define FAST_LOCK SEM_ID
|
||||
|
||||
typedef struct{
|
||||
SEM_ID ppend; /* wait for lock sem */
|
||||
unsigned short count; /* cnt of tasks waiting for lock */
|
||||
unsigned char lock; /* test and set lock bit */
|
||||
char pad; /* structure alignment */
|
||||
}FAST_LOCK;
|
||||
|
||||
#define SEM_FAST_LOCK
|
||||
|
||||
#if defined(SEM_FAST_LOCK) /* no lock test */
|
||||
|
||||
#define FASTLOCKINIT(PFAST_LOCK)\
|
||||
(((FAST_LOCK *)(PFAST_LOCK))->ppend = \
|
||||
(*(PFAST_LOCK) = \
|
||||
semMCreate(SEM_DELETE_SAFE|SEM_INVERSION_SAFE|SEM_Q_PRIORITY))
|
||||
#define FASTLOCKFREE(PFAST_LOCK)\
|
||||
semDelete( ((FAST_LOCK *)(PFAST_LOCK))->ppend )
|
||||
semDelete(*(PFAST_LOCK))
|
||||
#define FASTLOCK(PFAST_LOCK)\
|
||||
semTake(((FAST_LOCK *)(PFAST_LOCK))->ppend, WAIT_FOREVER);
|
||||
semTake(*(PFAST_LOCK), WAIT_FOREVER);
|
||||
#define FASTUNLOCK(PFAST_LOCK)\
|
||||
semGive(((FAST_LOCK *)(PFAST_LOCK))->ppend);
|
||||
semGive(*(PFAST_LOCK))
|
||||
#define FASTLOCKNOWAIT(PFAST_LOCK) \
|
||||
((semTake(((FAST_LOCK *)(PFAST_LOCK))->ppend,NO_WAIT)==0) ? TRUE : FALSE)
|
||||
(semTake(*(PFAST_LOCK),NO_WAIT)==0) ? TRUE : FALSE)
|
||||
#define FASTLOCKTEST(PFAST_LOCK) \
|
||||
(\
|
||||
(semTake(((FAST_LOCK *)(PFAST_LOCK))->ppend,NO_WAIT)==0 )\
|
||||
? (semGive(((FAST_LOCK *)(PFAST_LOCK))->ppend),FALSE)\
|
||||
: TRUE \
|
||||
(semTake(*(PFAST_LOCK),NO_WAIT)==0 )\
|
||||
? (semGive(*(PFAST_LOCK),FALSE)\
|
||||
: TRUE) \
|
||||
)
|
||||
|
||||
|
||||
#elif defined(TASK_LOCK_FAST_LOCK)
|
||||
|
||||
#define FASTLOCKINIT(PFAST_LOCK)\
|
||||
(\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->count =0, \
|
||||
((FAST_LOCK *)(PFAST_LOCK))->lock =0, \
|
||||
((FAST_LOCK *)(PFAST_LOCK))->ppend = \
|
||||
semBCreate(SEM_Q_PRIORITY, SEM_EMPTY) \
|
||||
)
|
||||
#define FASTLOCKFREE(PFAST_LOCK)\
|
||||
semDelete( ((FAST_LOCK *)(PFAST_LOCK))->ppend )
|
||||
|
||||
#define FASTLOCK(PFAST_LOCK)\
|
||||
{\
|
||||
TASK_LOCK;\
|
||||
while( ((FAST_LOCK *)(PFAST_LOCK))->lock ){\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->count++;\
|
||||
TASK_UNLOCK;\
|
||||
semTake(((FAST_LOCK *)(PFAST_LOCK))->ppend, WAIT_FOREVER);\
|
||||
TASK_LOCK;\
|
||||
(((FAST_LOCK *)(PFAST_LOCK))->count)--;\
|
||||
}\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->lock= TRUE;
|
||||
TASK_UNLOCK;
|
||||
}
|
||||
|
||||
#define FASTUNLOCK(PFAST_LOCK)\
|
||||
{\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->lock = FALSE;\
|
||||
if( ((FAST_LOCK *)(PFAST_LOCK))->count )\
|
||||
semGive(((FAST_LOCK *)(PFAST_LOCK))->ppend);\
|
||||
};
|
||||
|
||||
#define FASTLOCKTEST(PFAST_LOCK)\
|
||||
( ((FAST_LOCK *)(PFAST_LOCK))->lock )
|
||||
|
||||
#else /* vxTas() fast lock */
|
||||
|
||||
/*
|
||||
* extra paren avoids order of ops problems
|
||||
* (returns what semBCreate returns on v5 vxWorks)
|
||||
*/
|
||||
#define FASTLOCKINIT(PFAST_LOCK)\
|
||||
(\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->count =0, \
|
||||
((FAST_LOCK *)(PFAST_LOCK))->lock =0, \
|
||||
((FAST_LOCK *)(PFAST_LOCK))->ppend = \
|
||||
semBCreate(SEM_Q_PRIORITY, SEM_EMPTY) \
|
||||
)
|
||||
|
||||
/*
|
||||
* new requirement with v5 vxWorks
|
||||
*/
|
||||
#define FASTLOCKFREE(PFAST_LOCK)\
|
||||
semDelete( ((FAST_LOCK *)(PFAST_LOCK))->ppend )
|
||||
|
||||
#define FASTLOCK(PFAST_LOCK)\
|
||||
{\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->count++;\
|
||||
while(!vxTas( (char *)&( ((FAST_LOCK *)(PFAST_LOCK))->lock ) ))\
|
||||
semTake(((FAST_LOCK *)(PFAST_LOCK))->ppend, WAIT_FOREVER);\
|
||||
( ((FAST_LOCK *)(PFAST_LOCK))->count)--;\
|
||||
}
|
||||
|
||||
#define FASTUNLOCK(PFAST_LOCK)\
|
||||
{\
|
||||
((FAST_LOCK *)(PFAST_LOCK))->lock = FALSE;\
|
||||
if( ((FAST_LOCK *)(PFAST_LOCK))->count )\
|
||||
semGive(((FAST_LOCK *)(PFAST_LOCK))->ppend);\
|
||||
};
|
||||
|
||||
#define FASTLOCKNOWAIT(PFAST_LOCK) (vxTas((char *)&(((FAST_LOCK *)(PFAST_LOCK))->lock)))
|
||||
|
||||
#define FASTLOCKTEST(PFAST_LOCK)\
|
||||
( ((FAST_LOCK *)(PFAST_LOCK))->lock )
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* Nothing after this endif */
|
||||
|
||||
@@ -4,10 +4,9 @@ include $(TOP)/configure/CONFIG
|
||||
|
||||
INC += epicsDynLink.h
|
||||
|
||||
SRCS += iocLogClient.c
|
||||
SRCS += veclist.c
|
||||
SRCS += epicsDynLink.c
|
||||
vxComLib_SRCS += veclist.c
|
||||
vxComLib_SRCS += epicsDynLink.c
|
||||
|
||||
LIBRARY += vxComLib
|
||||
LIBRARY_vxWorks += vxComLib
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
Reference in New Issue
Block a user