############################################################################# ## Makefile -- New Version of my Makefile that works on both linux ## and mac os x ## Ryan Nichol ############################################################################## ############################################################################## ############################################################################## ## ##This file was copied from M.readGeom and altered for my use 14 May 2014 ##Khalida Hendricks. ## ##Modified by Brian Clark for use on CosTheta_NuTraject on 20 February 2015 ## ##Changes: ##line 54 - OBJS = .... add filename.o .... del oldfilename.o ##line 55 - CCFILE = .... add filename.cc .... del oldfilename.cc ##line 58 - PROGRAMS = filename ##line 62 - filename : $(OBJS) ## ## ############################################################################## ############################################################################## ############################################################################## include StandardDefinitions.mk #Site Specific Flags ifeq ($(strip $(BOOST_ROOT)),) BOOST_ROOT = /usr/local/include endif SYSINCLUDES = -I/usr/include -I$(BOOST_ROOT) SYSLIBS = -L/usr/lib DLLSUF = ${DllSuf} OBJSUF = ${ObjSuf} SRCSUF = ${SrcSuf} CXX = g++ #Generic and Site Specific Flags CXXFLAGS += $(INC_ARA_UTIL) $(SYSINCLUDES) LDFLAGS += -g $(LD_ARA_UTIL) -I$(BOOST_ROOT) $(ROOTLDFLAGS) -L. # copy from ray_solver_makefile (removed -lAra part) # added for Fortran to C++ LIBS = $(ROOTLIBS) -lMinuit $(SYSLIBS) GLIBS = $(ROOTGLIBS) $(SYSLIBS) LIB_DIR = ./lib INC_DIR = ./include #ROOT_LIBRARY = libAra.${DLLSUF} OBJS = Vector.o EarthModel.o IceModel.o Trigger.o Ray.o Tools.o Efficiencies.o Event.o Detector.o Position.o Spectra.o RayTrace.o RayTrace_IceModels.o signal.o secondaries.o Settings.o Primaries.o counting.o RaySolver.o Report.o eventSimDict.o veff_aeff2.o CCFILE = Vector.cc EarthModel.cc IceModel.cc Trigger.cc Ray.cc Tools.cc Efficiencies.cc Event.cc Detector.cc Spectra.cc Position.cc RayTrace.cc signal.cc secondaries.cc RayTrace_IceModels.cc Settings.cc Primaries.cc counting.cc RaySolver.cc Report.cc veff_aeff2.cc CLASS_HEADERS = Trigger.h Detector.h Settings.h Spectra.h IceModel.h Primaries.h Report.h Event.h secondaries.hh #need to add headers which added to Tree Branch PROGRAMS = veff_aeff2 all : $(PROGRAMS) veff_aeff2 : $(OBJS) $(LD) $(OBJS) $(LDFLAGS) $(LIBS) -o $(PROGRAMS) @echo "done." #The library $(ROOT_LIBRARY) : $(LIB_OBJS) @echo "Linking $@ ..." ifeq ($(PLATFORM),macosx) # We need to make both the .dylib and the .so $(LD) $(SOFLAGS)$@ $(LDFLAGS) $(G77LDFLAGS) $^ $(OutPutOpt) $@ ifneq ($(subst $(MACOSX_MINOR),,1234),1234) ifeq ($(MACOSX_MINOR),4) ln -sf $@ $(subst .$(DllSuf),.so,$@) else $(LD) -dynamiclib -undefined $(UNDEFOPT) $(LDFLAGS) $(G77LDFLAGS) $^ \ $(OutPutOpt) $(subst .$(DllSuf),.so,$@) endif endif else $(LD) $(SOFLAGS) $(LDFLAGS) $(G77LDFLAGS) $(LIBS) $(LIB_OBJS) -o $@ endif ##-bundle #%.$(OBJSUF) : %.$(SRCSUF) # @echo "<**Compiling**> "$< # $(CXX) $(CXXFLAGS) -c $< -o $@ %.$(OBJSUF) : %.C @echo "<**Compiling**> "$< $(CXX) $(CXXFLAGS) $ -c $< -o $@ %.$(OBJSUF) : %.cc @echo "<**Compiling**> "$< $(CXX) $(CXXFLAGS) $ -c $< -o $@ # added for fortran code compiling %.$(OBJSUF) : %.f @echo "<**Compiling**> "$< $(G77) -c $< eventSimDict.C: $(CLASS_HEADERS) @echo "Generating dictionary ..." @ rm -f *Dict* rootcint $@ -c ${INC_ARA_UTIL} $(CLASS_HEADERS) ${ARA_ROOT_HEADERS} LinkDef.h clean: @rm -f *Dict* @rm -f *.${OBJSUF} @rm -f $(LIBRARY) @rm -f $(ROOT_LIBRARY) @rm -f $(subst .$(DLLSUF),.so,$(ROOT_LIBRARY)) @rm -f $(TEST) #############################################################################