]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG0/Makefile
Renamed
[u/mrichter/AliRoot.git] / PWG0 / Makefile
index 6fcfbf249326c2212069daff4695602dda8e9b22..7c2f603be25e7713848e2b1336f1e621c0869421 100644 (file)
@@ -1,34 +1,76 @@
-PACKAGE = PWG0base
+# $Id$
+
+include Makefile.arch
 
-include $(ROOTSYS)/test/Makefile.arch
-include lib$(PACKAGE).pkg
+PACKAGE = PWG0base
+default-target: lib$(PACKAGE).so
 
-ALICEINC      = -I. 
+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 ($(STEER_INCLUDE),)
-    ALICEINC += -I../$(STEER_INCLUDE)
-  endif
-  ifneq ($(ESD_INCLUDE),)
-    ALICEINC += -I../$(ESD_INCLUDE)
   endif
 endif
 
-CXXFLAGS     += $(ALICEINC)
-SRCS         += dict.cxx
-OBJS          = $(SRCS:.cxx=.o)
+# for building of PWG0dep.par
+ifneq ($(PWG0base_INCLUDE),)
+  ALICEINC += -I../$(PWG0base_INCLUDE)
+endif
+
+CXXFLAGS     += $(ALICEINC) -g
+
+SRCS     = $(wildcard *.cxx */*.cxx)
+HDRS     = $(SRCS:.cxx=.h)
+DHDR     = $(PACKAGE)LinkDef.h
+
+DHDR_PWG0base := $(DHDR)
+HDRS_PWG0base := $(HDRS)
+SRCS_PWG0base := $(SRCS) G__$(PACKAGE).cxx
+OBJS_PWG0base := $(SRCS_PWG0base:.cxx=.o)
+
 PARFILE       = $(PACKAGE).par
 
-lib$(PACKAGE).so: $(OBJS)
+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) $(OBJS) -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"
@@ -36,17 +78,16 @@ endif
 %.o:    %.cxx %.h
        $(CXX) $(CXXFLAGS) -c $< -o $@
 
-clean:
-       @rm -f $(OBJS) core *~ *.so dict.* $(PARFILE)
-
-dict.cxx dict.h: $(HDRS) $(DHDR)
+G__$(PACKAGE).cxx G__$(PACKAGE).h: $(HDRS_PWG0base) $(DHDR_PWG0base)
        @echo "Generating dictionary ..."
-       @[ -f dict ] || rm -f $@
        rootcint -f $@ -c $(ALICEINC) $^
 
+clean:
+       @rm -f $(OBJS_PWG0base) $(OBJS_PWG0dep) $(OBJS_PWG0selectors) *.so G__PWG0base.* G__PWG0dep.* G__PWG0selectors.* $(PARFILE)
+
 ### CREATE PAR FILE
 
-$(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out dict.%, $(HDRS) $(SRCS) $(DHDR) $(PKGFILE) 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)
@@ -60,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."