X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWG0%2FMakefile;h=7c2f603be25e7713848e2b1336f1e621c0869421;hb=5391e9f65c36240dfb46867d2e6c71c7d9a2be6e;hp=38bc8679a28277b3e7f56df8f6629525277cc704;hpb=f2f977f4b246cc8170eabadd01cd7080a45d1866;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWG0/Makefile b/PWG0/Makefile index 38bc8679a28..7c2f603be25 100644 --- a/PWG0/Makefile +++ b/PWG0/Makefile @@ -1,24 +1,44 @@ # $Id$ -include $(ROOTSYS)/test/Makefile.arch +include Makefile.arch -default-target: libPWG0base.so libPWG0dep.so libPWG0selectors.so +PACKAGE = PWG0base +default-target: lib$(PACKAGE).so ALICEINC = -I. ### define include dir for local case and par case -ifneq ($(ALICE_ROOT),) - ALICEINC += -I$(ALICE_ROOT)/include +ifneq ($(ESD_INCLUDE),) + ALICEINC += -I../$(ESD_INCLUDE) + ifneq ($(STEERBase_INCLUDE),) + ALICEINC += -I../$(STEERBase_INCLUDE) + endif + ifneq ($(AOD_INCLUDE),) + ALICEINC += -I../$(AOD_INCLUDE) + endif + ifneq ($(ANALYSIS_INCLUDE),) + ALICEINC += -I../$(ANALYSIS_INCLUDE) + endif + ifneq ($(ANALYSISalice_INCLUDE),) + ALICEINC += -I../$(ANALYSISalice_INCLUDE) + endif +else + ifneq ($(ALICE_ROOT),) + ALICEINC += -I$(ALICE_ROOT)/include -I$(ALICE_ROOT)/PYTHIA6 -I$(ALICE_ROOT)/EVGEN -I$(ALICE_ROOT)/RAW -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/PWG0 else - ifneq ($(ESD_INCLUDE),) - ALICEINC += -I../$(ESD_INCLUDE) endif endif +# for building of PWG0dep.par +ifneq ($(PWG0base_INCLUDE),) + ALICEINC += -I../$(PWG0base_INCLUDE) +endif + CXXFLAGS += $(ALICEINC) -g -PACKAGE = PWG0base -include lib$(PACKAGE).pkg +SRCS = $(wildcard *.cxx */*.cxx) +HDRS = $(SRCS:.cxx=.h) +DHDR = $(PACKAGE)LinkDef.h DHDR_PWG0base := $(DHDR) HDRS_PWG0base := $(HDRS) @@ -31,9 +51,26 @@ lib$(PACKAGE).so: $(OBJS_PWG0base) @echo "Linking" $@ ... @/bin/rm -f $@ ifeq ($(PLATFORM),macosx) - @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@ +# We need to make both the .dylib and the .so + $(LD) $(SOFLAGS)$@ $(LDFLAGS) $^ $(OutPutOpt) $@ +ifneq ($(subst $(MACOSX_MINOR),,1234),1234) +ifeq ($(MACOSX_MINOR),4) + ln -sf $@ $(subst .$(DllSuf),.so,$@) else - @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@ + $(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ \ + $(OutPutOpt) $(subst .$(DllSuf),.so,$@) +endif +endif +else +ifeq ($(PLATFORM),win32) + bindexplib $* $^ > $*.def + lib -nologo -MACHINE:IX86 $^ -def:$*.def \ + $(OutPutOpt)$(EVENTLIB) + $(LD) $(SOFLAGS) $(LDFLAGS) $^ $*.exp $(LIBS) \ + $(OutPutOpt)$@ +else + $(LD) $(SOFLAGS) $(LDFLAGS) $^ $(OutPutOpt) $@ $(EXPLLINKLIBS) +endif endif @chmod a+x $@ @echo "done" @@ -41,7 +78,7 @@ endif %.o: %.cxx %.h $(CXX) $(CXXFLAGS) -c $< -o $@ -G__PWG0base.cxx G__PWG0base.h: $(HDRS_PWG0base) $(DHDR_PWG0base) +G__$(PACKAGE).cxx G__$(PACKAGE).h: $(HDRS_PWG0base) $(DHDR_PWG0base) @echo "Generating dictionary ..." rootcint -f $@ -c $(ALICEINC) $^ @@ -50,7 +87,7 @@ clean: ### CREATE PAR FILE -$(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_PWG0base) $(SRCS_PWG0base) $(DHDR_PWG0base) Makefile Makefile.arch lib$(PACKAGE).pkg PROOF-INF)) +$(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_PWG0base) $(SRCS_PWG0base) $(DHDR_PWG0base) Makefile Makefile.arch PROOF-INF)) @echo "Creating archive" $@ ... @tar cfzh $@ $(PACKAGE) @rm -rf $(PACKAGE) @@ -64,17 +101,17 @@ $(PACKAGE)/Makefile: Makefile #.$(PACKAGE) $(PACKAGE)/Makefile.arch: $(ROOTSYS)/test/Makefile.arch @echo Copying $< to $@ @[ -d $(dir $@) ] || mkdir -p $(dir $@) - @cp $^ $@ + @cp -a $^ $@ $(PACKAGE)/PROOF-INF: PROOF-INF.$(PACKAGE) @echo Copying $< to $@ @[ -d $(dir $@) ] || mkdir -p $(dir $@) - @cp -r $^ $@ + @cp -a -r $^ $@ $(PACKAGE)/%: % @echo Copying $< to $@ @[ -d $(dir $@) ] || mkdir -p $(dir $@) - @cp $< $@ + @cp -a $< $@ test-%.par: %.par @echo "INFO: The file $< is now tested, in case of an error check in par-tmp." @@ -82,50 +119,3 @@ test-%.par: %.par @cd par-tmp; tar xfz ../$<; cd $(subst .par,,$<); PROOF-INF/BUILD.sh @rm -rf par-tmp @echo "INFO: Testing succeeded (already cleaned up)" - -## libPWG0dep part -include libPWG0dep.pkg - -DHDR_PWG0dep := $(DHDR) -HDRS_PWG0dep := $(HDRS) -SRCS_PWG0dep := $(SRCS) G__PWG0dep.cxx -OBJS_PWG0dep := $(SRCS_PWG0dep:.cxx=.o) - -libPWG0dep.so: $(OBJS_PWG0dep) - @echo "Linking" $@ ... - @/bin/rm -f $@ -ifeq ($(PLATFORM),macosx) - @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@ -else - @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@ -endif - @chmod a+x $@ - @echo "done" - -G__PWG0dep.cxx G__PWG0dep.h: $(HDRS_PWG0dep) $(DHDR_PWG0dep) - @echo "Generating dictionary ..." - rootcint -f $@ -c $(ALICEINC) $^ - -## libPWG0selectors part -include libPWG0selectors.pkg - -DHDR_PWG0selectors := $(DHDR) -HDRS_PWG0selectors := $(HDRS) -SRCS_PWG0selectors := $(SRCS) G__PWG0selectors.cxx -OBJS_PWG0selectors := $(SRCS_PWG0selectors:.cxx=.o) - -libPWG0selectors.so: $(OBJS_PWG0selectors) - @echo "Linking" $@ ... - @/bin/rm -f $@ -ifeq ($(PLATFORM),macosx) - @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@ -else - @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@ -endif - @chmod a+x $@ - @echo "done" - -G__PWG0selectors.cxx G__PWG0selectors.h: $(HDRS_PWG0selectors) $(DHDR_PWG0selectors) - @echo "Generating dictionary ..." - rootcint -f $@ -c $(ALICEINC) $^ -