X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ANALYSIS%2FMakefile;h=a097b3b6e030e4ad50cb48923684ffc53a89e8a9;hb=b0801932c81d2dc20db873f51ae573874e6d97fd;hp=a60e53a2fa6e258d42ee41044b34f40c6d106b73;hpb=c52c2132edf0525e05b46ca57d7715be79ddb52c;p=u%2Fmrichter%2FAliRoot.git diff --git a/ANALYSIS/Makefile b/ANALYSIS/Makefile index a60e53a2fa6..a097b3b6e03 100644 --- a/ANALYSIS/Makefile +++ b/ANALYSIS/Makefile @@ -1,28 +1,56 @@ -include $(ROOTSYS)/test/Makefile.arch +include Makefile.arch -default-target: libANALYSIS.so +PACKAGE = ANALYSISalice + +default-target: lib$(PACKAGE).so ALICEINC = -I. -### define include dir for local case and par case +# add include paths from other par files ifneq ($(ESD_INCLUDE),) ALICEINC += -I../$(ESD_INCLUDE) -else +endif + +ifneq ($(AOD_INCLUDE),) + ALICEINC += -I../$(AOD_INCLUDE) +endif + +ifneq ($(STEERBase_INCLUDE),) + ALICEINC += -I../$(STEERBase_INCLUDE) +endif + +ifneq ($(ANALYSIS_INCLUDE),) + ALICEINC += -I../$(ANALYSIS_INCLUDE) +endif + +ifneq ($(OADB_INCLUDE),) + ALICEINC += -I../$(OADB_INCLUDE) +endif + +ifneq ($(ANALYSISalice_INCLUDE),) + ALICEINC += -I../$(ANALYSISalice_INCLUDE) +endif + +# only if no par file was loaded before +ifeq ($(ALICEINC),-I.) ifneq ($(ALICE_ROOT),) - ALICEINC += -I$(ALICE_ROOT)/include + ALICEINC += -I$(ALICE_ROOT)/include -I$(ALICE_ROOT)/ANALYSIS/Tender -I$(ALICE_ROOT)/TOF -I$(ALICE_ROOT)/TRD/Cal -I$(ALICE_ROOT)/VZERO -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/T0 -I$(ALICE_ROOT)/EMCAL endif endif -# for building of ANALYSIS.par -ifneq ($(ANALYSIS_INCLUDE),) - ALICEINC += -I../$(ANALYSIS_INCLUDE) +CHECKXML := $(shell root-config --has-xml) + +ifeq ($(CHECKXML),yes) + CXXFLAGS += -DWITHXML + CINTFLAGS += -DWITHXML endif -CXXFLAGS += $(ALICEINC) -g +CXXFLAGS += $(ALICEINC) -g -PACKAGE = ANALYSIS -include lib$(PACKAGE).pkg +SRCS = $(wildcard *.cxx) +HDRS = $(SRCS:.cxx=.h) +DHDR = $(PACKAGE)LinkDef.h DHDR_ANALYSIS := $(DHDR) HDRS_ANALYSIS := $(HDRS) @@ -36,9 +64,26 @@ lib$(PACKAGE).so: $(OBJS_ANALYSIS) @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" @@ -51,11 +96,11 @@ clean: G__$(PACKAGE).cxx G__$(PACKAGE).h: $(HDRS) $(DHDR) @echo "Generating dictionary ..." - rootcint -f $@ -c $(ALICEINC) $^ + rootcint -f $@ -c $(CINTFLAGS) $(ALICEINC) $^ ### CREATE PAR FILE -$(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_ANALYSIS) $(SRCS_ANALYSIS) $(DHDR_ANALYSIS) Makefile Makefile.arch lib$(PACKAGE).pkg PROOF-INF)) +$(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_ANALYSIS) $(SRCS_ANALYSIS) $(DHDR_ANALYSIS) Makefile Makefile.arch PROOF-INF)) @echo "Creating archive" $@ ... @tar cfzh $@ $(PACKAGE) @rm -rf $(PACKAGE)