##################################################################### # # Name: Makefile # Created by: Pierre-Andre Amaudruz # # Contents: Makefile for MIDAS under VxWorks # # Revision history # ------------------------------------------------------------------ # date by modification # --------- --- ----------------------------------------------- # ##################################################################### #-------------------------------------------------------------------- # The following lines contain specific switches for different UNIX # systems. Find the one which matches your OS and outcomment the # lines below. #------------------------------------------------------------------- # The following lines define directories. Adjust if necessary # # User obj directory OBJ_DIR = 68kobj # VxWorks include directory SYSINC_DIR = /vxworks/include # VxWorks Cross-compiler directory VXW_DIR = /vxworks # Midas system include INC_DIR = ../include # Midas system source SRC_DIR = ../src # Midas VxWorks obj directory LIB_DIR = ($OBJ_DIR) # Midas drivers directory (should after install /midas/drivers) DRV_DIR = ../drivers # targets OBJS = $(OBJ_DIR)/midas.o $(OBJ_DIR)/system.o $(OBJ_DIR)/mrpc.o $(OBJ_DIR)/odb.o $(OBJ_DIR)/ybos.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 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 = cc68k LD = ld68k CPU= MC68040 # Define Current Configuration CC_OPTIM = $(CC_OPTIM_NORMAL) CC_INCLUDES = -I$(INC_DIR) -I$(SYSINC_DIR) CC_WARNINGS = $(CC_WARNINGS_NORMAL) ##PAA CC_DEFINES = -DOS_VXWORKS -m68040 -DCPU=$(CPU) -DDM_DUAL_THREAD CC_DEFINES = -DOS_VXWORKS -m68040 -DCPU=$(CPU) $(DEFINE_CC) $(EXTRA_DEFINE) # -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 $(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 $(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 $(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 $(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 $(CC) -c $(CFLAGS) -o $(OBJ_DIR)/ybos.o $(SRC_DIR)/ybos.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)/bus/esone.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/esone.o $(DRV_DIR)/bus/esone.c $(OBJ_DIR)/camacnul.o: $(DRV_DIR)/bus/camacnul.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/camacnul.o $(DRV_DIR)/bus/camacnul.c $(OBJ_DIR)/camacrpc.o: $(DRV_DIR)/bus/camacrpc.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/camacrpc.o $(DRV_DIR)/bus/camacrpc.c $(OBJ_DIR)/ces8210.o: $(DRV_DIR)/bus/ces8210.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/ces8210.o $(DRV_DIR)/bus/ces8210.c $(OBJ_DIR)/vmeio.o: $(DRV_DIR)/divers/vmeio.c $(CC) $(CFLAGS) $(OSFLAGS) -c -o $(OBJ_DIR)/vmeio.o $(DRV_DIR)/divers/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 *~ \#*