new way to build

This commit is contained in:
Marty Kraimer
2000-02-02 20:06:49 +00:00
parent 9fe023c66a
commit 60427c66e2
14 changed files with 66 additions and 157 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -6,7 +6,7 @@ INC += devCommonGpib.h
SRCS += devCommonGpib.c
OBJS_IOC += $(SRCS:%.c=%.o)
OBJS_vxWorks += $(SRCS:%.c=%.o)
include $(TOP)/configure/RULES

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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 */

View File

@@ -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 */

View File

@@ -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