From fb610fb1d3e1de706af962c272663fd430fa34a8 Mon Sep 17 00:00:00 2001 From: Devin Connolly Date: Tue, 13 Feb 2018 13:34:17 -0800 Subject: [PATCH] -> Corrected typos, syntax and logic in Makefile and configure so that everything compiles correctly on smaug -> added new logic in configure to create $PWD/lib/rootbeer and $PWD/lib/rootana -> added above dirs to .gitignore --- .gitignore | 2 ++ Makefile | 43 +++++++++++++++++-------------------------- configure | 21 +++++++++++++++++---- 3 files changed, 36 insertions(+), 30 deletions(-) diff --git a/.gitignore b/.gitignore index e293df0..0e2ee54 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,8 @@ lib/*.dsym lib/.* lib/*.rootmap lib/*.pcm +lib/rootbeer +lib/rootana .nfs* test.xml examples/*.d diff --git a/Makefile b/Makefile index e0b1450..61815d4 100644 --- a/Makefile +++ b/Makefile @@ -11,10 +11,10 @@ ROOTMAPFILE := $(patsubst %.so,%.rootmap,$(SHLIBFILE)) ifeq ($(USE_ROOT),YES) ifeq ($(ROOTMAJORVERSION),6) -MAKE_DRAGON_DICT += $(ROOTCINT) -v -f $@ -s $(SHLIBFILE) -rml $(SHLIBFILE) -rmf $(ROOTMAPFILE) -c $(CINTFLAGS) \ +MAKE_DRAGON_DICT += $(ROOTCINT) -f $@ -s $(SHLIBFILE) -rml $(SHLIBFILE) -rmf $(ROOTMAPFILE) -c $(CINTFLAGS) \ -p $(HEADERS) TError.h TNamed.h TObject.h TString.h TTree.h $(CINT)/Linkdef.h else -MAKE_DRAGON_DICT += $(ROOTCINT) -v -f $@ -s $(SHLIBFILE) -c $(CINTFLAGS) -p $(HEADERS) TTree.h $(CINT)/Linkdef5.h +MAKE_DRAGON_DICT += $(ROOTCINT) -f $@ -c $(CINTFLAGS) -p $(HEADERS) TTree.h $(CINT)/Linkdef5.h endif DRA_DICT = $(DRLIB)/DragonDictionary.cxx DRA_DICT_DEP = $(DRLIB)/DragonDictionary.cxx @@ -85,9 +85,6 @@ OBJECTS += $(OBJ)/utils/TAtomicMass.o endif ## END OBJECTS ## -### MID2ROOT LIBRARY ### -MID2ROOT_LIBS = -lDragon $(MIDASLIBS) - all: $(MAKE_ALL) libDragon: $(SHLIBFILE) @@ -100,9 +97,9 @@ mid2root: $(PWD)/bin/mid2root $(PWD)/bin/mid2root: src/mid2root.cxx $(SHLIBFILE) $(LD) $(MID2ROOT_INC) $(MID2ROOT_LIBS) $< -o $@ \ -rbdragon.o: $(OBJ)/rootbeer/rbdragon.o +#rbdragon.o: $(OBJ)/rootbeer/rbdragon.o -rbdragon_impl.o: $(OBJ)/rootbeer/rbdragon_impl.o +# rbdragon_impl.o: $(OBJ)/rootbeer/rbdragon_impl.o ### OBJECT FILES ### $(OBJ)/utils/%.o: $(SRC)/utils/%.cxx $(DRA_DICT_DEP) @@ -130,11 +127,11 @@ dict: $(DRA_DICT) $(DRA_DICT): $(HEADERS) $(CINT)/Linkdef.h $(MAKE_DRAGON_DICT) \ -$(DRLIB)/anaDragonDict.cxx: $(ROOTANA_HEADERS) $(DRA_DICT) $(SRC)/rootana/Linkdef.h - $(ROOTCINT) -f $@ -c $(CXXFLAGS) $(ROOTANA_FLAGS) -p $(ROOTANA_HEADERS) $(SRC)/rootana/Linkdef.h \ +$(DRLIB)/rootana/anaDragonDict.cxx: $(ROOTANA_HEADERS) $(DRA_DICT) $(SRC)/rootana/Linkdef.h + $(ROOTCINT) -f $@ -c $(CINTFLAGS) $(ROOTANA_FLAGS) -p $(ROOTANA_HEADERS) $(SRC)/rootana/Linkdef.h \ -$(DRLIB)/CutDict.cxx: $(SRC)/rootana/Cut.hxx $(SRC)/rootana/CutLinkdef.h - $(ROOTCINT) -f $@ -c $(CXXFLAGS) $(ROOTANA_FLAGS) -p $(SRC)/rootana/Cut.hxx $(SRC)/rootana/CutLinkdef.h \ +$(DRLIB)/rootana/CutDict.cxx: $(SRC)/rootana/Cut.hxx $(SRC)/rootana/CutLinkdef.h + $(ROOTCINT) -f $@ -c $(CINTFLAGS) $(ROOTANA_FLAGS) -p $(SRC)/rootana/Cut.hxx $(SRC)/rootana/CutLinkdef.h \ libRootanaCut: $(DRLIB)/libRootanaCut.so @@ -148,7 +145,7 @@ $(DRLIB)/libRootanaDragon.so: $(DRLIB)/libDragon.so $(DRLIB)/anaDragonDict.cxx $ -lDragon -lRootanaCut -L$(DRLIB) \ $(PWD)/bin/anaDragon: $(SRC)/rootana/anaDragon.cxx $(DRLIB)/libDragon.so $(DRLIB)/anaDragonDict.cxx $(DRLIB)/libRootanaCut.so $(ROOTANA_OBJS) $(ROOTANA_REMOTE_OBJS) - $(LD) $(ROOTANA_FLAGS) $(ROOTANA_DEFS) -o $@ $< $(DRLIB)/anaDragonDict.cxx $(ROOTANA_OBJS) + $(LD) $(ROOTANA_FLAGS) $(ROOTANA_DEFS) -o $@ $< $(DRLIB)/anaDragonDict.cxx $(ROOTANA_OBJS) \ -lDragon -lRootanaCut -L$(DRLIB) $(ROOTANA_LIBS) $(MIDASLIBS) \ rootana_clean: @@ -157,31 +154,25 @@ rootana_clean: Dragon: $(OBJ)/Dragon.o $(DRLIB)/rootbeer/rootbeerDict.cxx: $(SRC)/rootbeer/rbsymbols.hxx $(DRA_DICT_DEP) $(RB_HOME)/cint/RBDictionary.cxx $(RB_HOME)/cint/MidasDict.cxx - $(ROOTCINT) -f $@ -c $(CXXFLAGS) $(RBINC) -p $< $(CINT)/rootbeer/rblinkdef.h \ + $(ROOTCINT) -f $@ -c $(CINTFLAGS) $(RBINC) -p $< $(CINT)/rootbeer/rblinkdef.h \ $(OBJ)/rootbeer/rbdragon.o: $(SRC)/rootbeer/rbdragon.cxx $(SRC)/rootbeer/*.hxx $(DRA_DICT_DEP) $(DRLIB)/rootbeer/rootbeerDict.cxx - $(CXX) $(RB_DEFS) $(RBINC) -c \ - -o $@ $< \ + $(CXX) $(RB_DEFS) $(RBINC) -c -o $@ $< \ $(OBJ)/rootbeer/rbsonik.o: $(SRC)/rootbeer/rbsonik.cxx $(SRC)/rootbeer/*.hxx $(DRA_DICT_DEP) $(DRLIB)/rootbeer/rootbeerDict.cxx - $(CXX) $(RB_DEFS) $(RBINC) -c \ - -o $@ $< \ + $(CXX) $(RB_DEFS) $(RBINC) -c -o $@ $< \ $(OBJ)/rootbeer/rbdragon_impl.o: $(SRC)/rootbeer/rbdragon_impl.cxx $(SRC)/rootbeer/*.hxx $(DRA_DICT_DEP) $(DRLIB)/rootbeer/rootbeerDict.cxx - $(CXX) $(RB_DEFS) $(RBINC) -c \ - -o $@ $< \ + $(CXX) $(RB_DEFS) $(RBINC) -c -o $@ $< \ $(OBJ)/rootbeer/rbsonik_impl.o: $(SRC)/rootbeer/rbsonik_impl.cxx $(SRC)/rootbeer/*.hxx $(DRA_DICT_DEP) $(DRLIB)/rootbeer/rootbeerDict.cxx - $(CXX) $(RB_DEFS) $(RBINC) -c \ - -o $@ $< \ + $(CXX) $(RB_DEFS) $(RBINC) -c -o $@ $< \ $(PWD)/bin/rbdragon: $(DRLIB)/rootbeer/rootbeerDict.cxx $(RB_DRAGON_OBJECTS) - $(LD) $^ $(RBINC) -L$(PWD)/../../rootbeer/lib -lDragon -lRootbeer -lrbMidas \ - -o $@ \ + $(LD) $^ $(RBINC) $(RB_LIBS) -lDragon -o $@ \ $(PWD)/bin/rbsonik: $(DRLIB)/rootbeer/rootbeerDict.cxx $(RB_SONIK_OBJECTS) - $(LD) $^ $(RBINC) -L$(PWD)/../../rootbeer/lib -lDragon -lRootbeer -lrbMidas \ - -o $@ \ + $(LD) $^ $(RBINC) $(RB_LIBS) -lDragon -o $@ \ Timestamp: $(OBJ)/rootbeer/Timestamp.o @@ -193,7 +184,7 @@ DragonRootbeer: $(OBJ)/rootbeer/DragonRootbeer.o #### REMOVE EVERYTHING GENERATED BY MAKE #### clean: rootana_clean - rm -f $(DRA_DICT) $(SHLIBFILE) $(ROOTMAPFILE) $(OBJECTS) $(RB_DRAGON_OBJECTS) $(RB_SONIK_OBJECTS) $(DRLIB)/*.pcm $(DRLIB)/*.h + rm -f $(DRA_DICT) $(SHLIBFILE) $(ROOTMAPFILE) $(OBJECTS) $(RB_DRAGON_OBJECTS) $(RB_SONIK_OBJECTS) $(DRLIB)/*.pcm $(DRLIB)/*.h $(BIN)/mid2root $(BIN)/rbdragon $(BIN)/rbsonik #### FOR DOXYGEN #### doc:: diff --git a/configure b/configure index 6cd525a..d17d20f 100755 --- a/configure +++ b/configure @@ -33,7 +33,7 @@ function showhelp { if [ $HOSTNAME == 'smaug.triumf.ca' ] || [ $HOSTNAME == 'daenerys.triumf.ca' ]; then USE_ROOT=YES USE_ROOTANA=NO - USE_ROOTBEER=NO + USE_ROOTBEER=YES USE_MIDAS=YES CC=clang CXX=clang++ @@ -102,6 +102,7 @@ do fi USE_ROOTANA=YES ROOTANA=$HOME/packages/rootana + mkdir ./lib/rootana elif [ $var == "--with-rootbeer" ]; then if [ $USE_ROOT == "NO" ]; then echo "Note: USE_ROOTBEER = YES but USE_ROOT = NO; switching on USE_ROOT!" @@ -136,8 +137,10 @@ do fi done +DATE=`date` + echo "### config.mk ###" > config.mk -echo "### Makefile created by ./configure script ###" >> config.mk +echo "### Makefile created by ./configure script on $DATE ###" >> config.mk echo "" >> config.mk echo "DEFINITIONS = -DAMEPP_DEFAULT_FILE=\\\"\$(PWD)/src/utils/mass16.txt\\\"" >> config.mk echo "" >> config.mk @@ -186,6 +189,9 @@ echo "USE_ROOTANA = $USE_ROOTANA" >> config.mk echo "USE_ROOTBEER = $USE_ROOTBEER" >> config.mk echo "USE_MIDAS = $USE_MIDAS" >> config.mk echo "" >> config.mk +echo "### MID2ROOT LIBRARY ###" >> config.mk +echo "MID2ROOT_LIBS = -lDragon \$(MIDASLIBS)" >> config.mk +echo "" >> config.mk if [ $USE_ROOT == "YES" ]; then echo "### USE_ROOT ###" >> config.mk echo "DEFINITIONS += -DUSE_ROOT" >> config.mk @@ -246,7 +252,7 @@ elif [ $UNAME == "Linux" ]; then fi fi if [ $DIST == Ubuntu ] && [ $ROOTMAJORVERSION == 5 ]; then - echo "### The following var is necessary when installing on Ubuntu with ROOT v5 because Ubuntu is very picky" >> config.mk + echo "### The following var is necessary when installing on Ubuntu with ROOT v5 because Ubuntu is very picky ###" >> config.mk echo "NAME = Ubuntu5" >> config.mk fi fi @@ -271,13 +277,17 @@ fi echo "" >> config.mk if [ $USE_ROOTBEER == YES ]; then RB_HOME=$HOME/packages/rootbeer + if [ -z $PWD/lib/rootbeer ]; then + mkdir $PWD/lib/rootbeer + fi echo "### USE_ROOTBEER ###" >> config.mk echo echo "DEFINITIONS += -DUSE_ROOTBEER" >> config.mk echo "RB_HOME = $RB_HOME" >> config.mk echo "RBINC = -I$RB_HOME/src" >> config.mk + echo "RB_LIBS = -L$RB_HOME/lib -lRootbeer -lrbMidas" >> config.mk echo "RB_HEADERS = $SRC/rootbeer/rbdragon.hxx $SRC/rootbeer/rbsonik.hxx" >> config.mk echo "RB_DEFS = -DRB_DRAGON_HOMEDIR=$PWD" >> config.mk - echo "MID2ROOT_LIBS += -L$PWD/../../rootbeer/lib -lRootbeer" >> config.mk + echo "MID2ROOT_LIBS += -L$RB_HOME/lib -lRootbeer" >> config.mk echo "MID2ROOT_INC += -I$RB_HOME/src" >> config.mk echo "RB_DRAGON_OBJECTS = $OBJ/rootbeer/rbdragon.o $OBJ/rootbeer/rbdragon_impl.o" >> config.mk echo "RB_SONIK_OBJECTS = $OBJ/rootbeer/rbdragon.o $OBJ/rootbeer/rbsonik.o $OBJ/rootbeer/rbsonik_impl.o" >> config.mk @@ -290,6 +300,9 @@ fi echo "" >> config.mk if [ $USE_ROOTANA == "YES" ]; then ROOTANA=$HOME/packages/rootana + if [ -z $PWD/lib/rootana ]; then + mkdir $PWD/lib/rootana + fi echo "### USE_ROOTANA ###" >> config.mk echo "DEFINITIONS += -DUSE_ROOTANA" >> config.mk echo "ROOTANA = $ROOTANA" >> config.mk