# directories # # System directories SYSINC_DIR = /vxworks-ppc/include # # Midas related directories INC_DIR = ../include SRC_DIR = ../src DRV_DIR = ../drivers MXML_DIR = ../../mxml # # Midas operating system dependent directories OBJ_DIR = ppcobj # targets OBJS = $(OBJ_DIR)/midas.o $(OBJ_DIR)/system.o $(OBJ_DIR)/mrpc.o $(OBJ_DIR)/odb.o $(OBJ_DIR)/ybos.o \ $(OBJ_DIR)/mxml.o $(OBJ_DIR)/strlcpy.o DRIVERS = $(OBJ_DIR)/hv.o $(OBJ_DIR)/multi.o \ # $(OBJ_DIR)/ces8210.o $(OBJ_DIR)/lrs1151.o $(OBJ_DIR)/lrs1190.o \ $(OBJ_DIR)/vmeio.o $(OBJ_DIR)/esone.o $(OBJ_DIR)/camacnul.o \ $(OBJ_DIR)/camacrpc.o LIB = $(OBJ_DIR)/libmidas.o #-save-temps CC_COMPILER = -ansi -fstrength-reduce -fkeep-inline-functions CC_DEBUGGING = -g CC_WARNINGS_ALL = -Wall CC_WARNINGS_NORMAL = -Winline CC_WARNINGS_NONE = CC_OPTIM_NORMAL = -g -finline-functions CC_OPTIM_TARGET = -O -fvolatile CC = /vxworks-ppc/bin/ccppc LD = /vxworks-ppc/bin/ldppc # internally defined by X-compile # CPU= -DPPCxxx # Define Current Configuration CC_OPTIM = $(CC_OPTIM_NORMAL) CC_INCLUDES = -I$(INC_DIR) -I$(MXML_DIR) -I$(SYSINC_DIR) CC_WARNINGS = $(CC_WARNINGS_NORMAL) ##PAA CC_DEFINES = -DOS_VXWORKS $(CPU) -DPPCxxx -DDM_DUAL_THREAD CC_DEFINES = -DOS_VXWORKS $(CPU) -DPPCxxx # -DDM_DEBUG CFLAGS = $(CC_OPTIM) $(CC_WARNINGS) $(CC_INCLUDES) $(CC_COMPILER) $(CC_DEFINES) all: $(LIB) $(OBJ_DIR)/mfe.o $(DRIVERS) install: ## objects @echo "... " @echo "... Installing standard VxWorks Midas package" @echo "... " cp $(OBJ_DIR)/libmidas.o $(SYSOBJ_DIR) cp $(OBJ_DIR)/mfe.o $(SYSOBJ_DIR) # create library and binary directories $(OBJ_DIR): @if [ ! -d $(OBJ_DIR) ] ; then \ echo "Making directory $(OBJ_DIR)" ; \ mkdir $(OBJ_DIR); \ fi; $(LIB): $(OBJ_DIR) $(OBJS) rm -f $(LIB) $(LD) -o $(LIB) -r $(OBJS) $(OBJ_DIR)/midas.o: $(SRC_DIR)/midas.c $(INC_DIR)/msystem.h $(INC_DIR)/midas.h $(INC_DIR)/mrpc.h $(MXML_DIR)/strlcpy.h $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/midas.o $(SRC_DIR)/midas.c $(OBJ_DIR)/system.o: $(SRC_DIR)/system.c $(INC_DIR)/msystem.h $(INC_DIR)/midas.h $(INC_DIR)/mrpc.h $(MXML_DIR)/strlcpy.h $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/system.o $(SRC_DIR)/system.c $(OBJ_DIR)/mrpc.o: $(SRC_DIR)/mrpc.c $(INC_DIR)/msystem.h $(INC_DIR)/midas.h $(INC_DIR)/mrpc.h $(MXML_DIR)/strlcpy.h $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/mrpc.o $(SRC_DIR)/mrpc.c $(OBJ_DIR)/odb.o: $(SRC_DIR)/odb.c $(INC_DIR)/msystem.h $(INC_DIR)/midas.h $(INC_DIR)/mrpc.h $(MXML_DIR)/strlcpy.h $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/odb.o $(SRC_DIR)/odb.c $(OBJ_DIR)/ybos.o: $(SRC_DIR)/ybos.c $(INC_DIR)/msystem.h $(INC_DIR)/midas.h $(INC_DIR)/mrpc.h $(MXML_DIR)/strlcpy.h $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/ybos.o $(SRC_DIR)/ybos.c $(OBJ_DIR)/mxml.o:$(MXML_DIR)/mxml.c $(CC) -c $(CFLAGS) $(OSFLAGS) -o $@ $(MXML_DIR)/mxml.c $(OBJ_DIR)/strlcpy.o:$(MXML_DIR)/strlcpy.c $(CC) -c $(CFLAGS) $(OSFLAGS) -o $@ $(MXML_DIR)/strlcpy.c # # Frontend Midas kernel to be used for user code linking $(OBJ_DIR)/mfe.o: $(SRC_DIR)/mfe.c $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/mfe.o $(SRC_DIR)/mfe.c ## General purpose drivers $(OBJ_DIR)/null.o: $(DRV_DIR)/device/null.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/null.o $(DRV_DIR)/device/null.c $(OBJ_DIR)/hv.o: $(DRV_DIR)/class/hv.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/hv.o $(DRV_DIR)/class/hv.c $(OBJ_DIR)/multi.o: $(DRV_DIR)/class/multi.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/multi.o $(DRV_DIR)/class/multi.c $(OBJ_DIR)/lrs4032.o: $(DRV_DIR)/divers/lrs4032.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/lrs4032.o $(DRV_DIR)/divers/lrs4032.c $(OBJ_DIR)/lrs1151.o: $(DRV_DIR)/divers/lrs1151.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/lrs1151.o $(DRV_DIR)/divers/lrs1151.c $(OBJ_DIR)/lrs1190.o: $(DRV_DIR)/divers/lrs1190.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/lrs1190.o $(DRV_DIR)/divers/lrs1190.c $(OBJ_DIR)/esone.o: $(DRV_DIR)/camac/esone.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/esone.o $(DRV_DIR)/camac/esone.c $(OBJ_DIR)/camacnul.o: $(DRV_DIR)/camac/camacnul.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/camacnul.o $(DRV_DIR)/camac/camacnul.c $(OBJ_DIR)/camacrpc.o: $(DRV_DIR)/camac/camacrpc.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/camacrpc.o $(DRV_DIR)/camac/camacrpc.c #$(OBJ_DIR)/ces8210.o: $(DRV_DIR)/camac/ces8210.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/ces8210.o $(DRV_DIR)/camac/ces8210.c $(OBJ_DIR)/vmeio.o: $(DRV_DIR)/vme/vmeio.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/vmeio.o $(DRV_DIR)/vme/vmeio.c #$(OBJ_DIR)/sc: $(OBJ) $(SRC_DIR)/mfe.c $(WORK_DIR)/frontend.c $(DRV_DIR)/lrs4032.c # $(CC) $(CFLAGS) -c -o $(OBJ_DIR)/mfe.o $(SRC_DIR)/mfe.c # $(CC) $(CFLAGS) -c -o $(OBJ_DIR)/frontend.o $(DRV_DIR)/frontend.c # $(CC) $(CFLA1ffe7e0GS) -c -o $(OBJ_DIR)/caen170a.o $(DRV_DIR)/caen170a.c # $(CC) $(CFLAGS) -c -o $(OBJ_DIR)/lrs4032.o $(DRV_DIR)/lrs4032.c # $(LD) -o $(OBJ_DIR)/mfe.o -r $(OBJ_DIR)/mfe.o $(OBJ_DIR)/frontend.o\ # $(OBJ_DIR)/lrs4032.o $(OBJ_DIR)/caen170a.o clean: rm -f $(OBJ_DIR)/*.o *~ \#*