# GNUmakefile for linking to an official release # # Note that for user links the directory structure is flattened. # # are we in cdf? Check the release .experiment file. R. Harris EXPERIMENT := $(shell if [ -f .experiment ]; \ then cat .experiment; else echo NO_EXPER; \ echo "Warning: .experiment not found, EXPERIMENT not set">&2; \ fi) ifndef OPTFILE OPTFILE := myana.opt endif OBJFILES := $(shell if [ -f $(OPTFILE) ]; then cat $(OPTFILE); else echo 'NOFILE'; fi) ifeq (NOFILE,$(OBJFILES)) FOBJFILES := $(wildcard *.f) COBJFILES := $(wildcard *.c) CCOBJFILES := $(wildcard *.cc) OBJFILES := $(FOBJFILES:.f=.o) $(COBJFILES:.c=.o) $(CCOBJFILES:.cc=.o) endif # binary products ifdef EXENAME BIN = $(EXENAME) else BIN = $(PWD)/$(notdir $(PWD)).exe endif # # local library definitions for executable link LIBS += -lExamples -lFrameMods -lFramework -lFrameUtil -lBanks -lTracking -lTrybos -lAbsEnv LIBS += -lCLHEP -lHepTuple -lExceptions -lZMutility # Make LOADLIBES from the above list of internal libraries plus the # external packages: override LOADLIBES += $(LIBS) -lpacklib include $(PROJECT_DIR)/SoftRelTools/arch_spec_Tcl.mk # # use the -v version of the following two lines if you want verbose output #override LDFLAGS += -v -L$(CERN_DIR)/lib -L$(TCL_DIR)/lib override LDFLAGS += -L$(CERN_DIR)/lib -L$(TCL_DIR)/lib # # the following line is necessary if a C++ main is being linked together # with f77 routines. include $(PROJECT_DIR)/SoftRelTools/arch_spec_f77.mk # add experiment define and all other defines. R. Harris override CPPFLAGS += -D$(EXPERIMENT) $(DEFINES) $(BIN): $(OBJFILES) $(LIBS) echo Linking $(BIN); if [ -f $(BIN) ] ; then mv $(BIN) $(BIN)_old; \ fi; $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ \ $(PROJECT_DIR)/lib/$(BFARCH)/APPMain.o \ $(OBJFILES) $(LOADLIBES) $(LDOUT) -include $(foreach var,$(OBJFILES:.o=.d),$(PWD)/$(var)) # include file and subdir targets, these are almost always blank INC = # subdirectories SUBDIRS = LIB = LIBFFILES = LIBCFILES = LIBCCFILES = #----------------------------------------------------------------- include $(PROJECT_DIR)/SoftRelTools/stdlinking.mk