#Options section =============================================================== SYSTEM = $(shell grep configsystem ../BuildOpts/`hostname`.config | cut -d "=" -f 2) COMPILER = $(shell grep configcompiler ../BuildOpts/`hostname`.config | cut -d "=" -f 2) CXXFLAGS = $(shell grep configcxxflags ../BuildOpts/`hostname`.config | cut -d "=" -f 2) COCOFLAGS = $(shell grep configcocoflags ../BuildOpts/`hostname`.config | cut -d "=" -f 2) ORACLEH = $(shell grep configoracleh ../BuildOpts/`hostname`.config | cut -d "=" -f 2) ORACLEL = $(shell grep configoraclel ../BuildOpts/`hostname`.config | cut -d "=" -f 2) FEATURES = $(shell grep configfeatures ../BuildOpts/`hostname`.config | cut -d "=" -f 2) REVISION=$(shell svn info | grep "Last Changed Rev" | cut -d ":" -f 2) ifeq ($(REVISION),) REVISION=$(shell cat REVISION) else #REVISION=$(shell svn info | grep "Last Changed Rev" | cut -d ":" -f 2) $(shell echo $(REVISION) > REVISION) endif FILEO = $(shell ls -q *.o) FILEAPP = $(shell ls -q *.app) COCOOBJS = RCUCommandCoder.o AltroCommandCoder.o BoardControllerCommandCoder.o CONTAINEROBJS = ../Container/RcuContainer.o ../Container/FecContainer.o ../Container/AltroContainer.o CONFIGOBJS = ../Config/AltroConfig.o ../Config/FecConfig.o ../Config/RcuConfig.o \ ../Config/TpcConfig.o DBOBJS = ../DB/DBQueryCreator.o ../DB/OracleDB.o ../DB/FERODBFieldPositions.o #First Target =============================================================== default: install #Classes section =============================================================== %.o : %.C $(COMPILER) $(CXXFLAGS) $(COCOFLAGS) $(ORACLEH) -DTPC_REVISION="\"$(REVISION)\"" -c $< @echo " ==================================================" %.o : %.cpp $(COMPILER) $(CXXFLAGS) $(COCOFLAGS) $(ORACLEH) -DTPC_REVISION="\"$(REVISION)\"" -c $< @echo " ==================================================" # ReadoutList Test Program ------------------------------------------------------- ReadoutList.app : ReadoutList.o ReadoutListMain.o Acl.o ../Mapping/Mapping.o ../Logger/Logger.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # AFL Test Program ------------------------------------------------------- Afl.app : Afl.o AflMain.o ../Logger/Logger.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # ACL Test Program ------------------------------------------------------- Acl.app : Acl.o AclMain.o ../Logger/Logger.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # AltroCommandCoder Test Program ------------------------------------------------------- AltroCommandCoder.app : AltroCommandCoder.o AltroCommandCoderMain.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # RCUCommandCoder Test Program --------------------------------------------------------- RCUCommandCoder.app : RCUCommandCoder.o BoardControllerCommandCoder.o AltroCommandCoder.o \ RCUCommandCoderMain.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # RCUControlEngine Test Program --------------------------------------------------------- RCUControlEngine.app : RCUControlEngine.o RCUControlEngineMain.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # BoardControllerCommandCoder Test Program ---------------------------------------------- BoardControllerCommandCoder.app : BoardControllerCommandCoder.o BoardControllerCommandCoderMain.o $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" # TPCCommandCoder libraries ------------------------------------------------------- libTPCCommandCoderFile.so : TPCCommandCoderFile.o $(COCOOBJS) RCUControlEngine.o $(COMPILER) -shared -O $^ -o $@ @echo " ==================================================" #-------------- TPCCommandCoderHardcoded.app : TPCCommandCoderHardcodedMain.o TPCCommandCoderHardcoded.o $(COCOOBJS) Afl.o ../Logger/Logger.o RCUControlEngine.o $(CONTAINEROBJS) $(COMPILER) $(CXXFLAGS) $^ -o $@ @echo " ==================================================" libTPCCommandCoderHardcoded.so : TPCCommandCoderHardcoded.o $(COCOOBJS) ../Logger/Logger.o RCUControlEngine.o $(CONTAINEROBJS) $(COMPILER) -shared -O $^ -o $@ @echo " ==================================================" #-------------- TPCCommandCoderReadback.app : TPCCommandCoderReadbackMain.o TPCCommandCoderReadback.o $(COCOOBJS) \ RCUControlEngine.o Acl.o Afl.o $(CONTAINEROBJS) $(CONFIGOBJS) ../Logger/Logger.o \ ../Mapping/Mapping.o $(DBOBJS) $(COMPILER) $(CXXFLAGS) $(ORACLEL) $(DBFlags) $^ -o $@ @echo " ==================================================" #-------------- TPCCommandCoderDB.app : TPCCommandCoderDBMain.o TPCCommandCoderDB.o $(COCOOBJS) RCUControlEngine.o \ $ Acl.o Afl.o ReadoutList.o $(CONTAINEROBJS) $(CONFIGOBJS) ../Logger/Logger.o \ ../Mapping/Mapping.o $(DBOBJS) $(COMPILER) $(CXXFLAGS) $(ORACLEL) $(DBFlags) $^ -o $@ @echo " ==================================================" #-------------- TPCCommandCoderDBcache.app : TPCCommandCoderDBcacheMain.o TPCCommandCoderDBcache.o \ $(COCOOBJS) RCUControlEngine.o Acl.o Afl.o ReadoutList.o $(CONTAINEROBJS) \ $(CONFIGOBJS) ../Logger/Logger.o ../Mapping/Mapping.o $(DBOBJS) $(COMPILER) $(CXXFLAGS) $(ORACLEL) $(DBFlags) $^ -o $@ @echo " ==================================================" # New CoCoFacade test ------------------------------------------------------- #libTPCCommandCoderDB.so : CoCoFacade.o TPCCommandCoderDBcache.o $(COCOOBJS) RCUControlEngine.o Acl.o Afl.o ReadoutList.o $(CONTAINEROBJS) $(CONFIGOBJS) ../Logger/Logger.o ../Mapping/Mapping.o $(DBOBJS) # $(COMPILER) $(ORACLEL) $(DBFlags) -shared -O $^ -o $@ # @echo " ==================================================" libTPCCommandCoderDB.so : CoCoFacade.o TPCCommandCoderDB.o $(COCOOBJS) RCUControlEngine.o \ Acl.o Afl.o ReadoutList.o $(CONTAINEROBJS) $(CONFIGOBJS) ../Logger/Logger.o \ ../Mapping/Mapping.o $(DBOBJS) $(COMPILER) $(ORACLEL) $(DBFlags) -shared -O $^ -o $@ @echo " ==================================================" #Global section ================================================================ clean: rm -rf $(FILEO) $(FILEAPP) *.so *~ *.log @echo " ==================================================" first: RCUCommandCoder.o RCUControlEngine.o AltroCommandCoder.o install: libTPCCommandCoderFile.so libTPCCommandCoderHardcoded.so libTPCCommandCoderDB.so TPCCommandCoderHardcoded.app TPCCommandCoderReadback.app TPCCommandCoderDB.app TPCCommandCoderDBcache.app mv libTPCCommandCoder*.so ../lib/ mv TPCCommandCoder*.app ../bin/