]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - build/module.tpl
Introducing Mac OSX platform (Darwin)
[u/mrichter/AliRoot.git] / build / module.tpl
index 15e76a0b7546691b4f5d8ada0aa09c78b6773e12..e549cc559964fe063ddf9d2ca9be2ecb1070eb79 100644 (file)
@@ -103,8 +103,18 @@ endif
 
 @PACKAGE@LIB:=$(LIBPATH)/lib@PACKAGE@.$(SOEXT)
 
+ifneq ($(DYEXT),)
+@PACKAGE@DLIB:=$(LIBPATH)/lib@PACKAGE@.$(DYEXT)
+endif
+
+@PACKAGE@ALIB:=$(LIBPATH)/lib@PACKAGE@.$(AEXT)
+
 #Add this to the modules libs
 @MODULE@LIBS += $(@PACKAGE@LIB)
+@MODULE@ALIBS += $(@PACKAGE@ALIB)
+ifneq ($(DYEXT),)
+@MODULE@DLIBS += $(@PACKAGE@DLIB)
+endif
 
 #The actual binary file
 
@@ -117,11 +127,21 @@ endif
 
 ifeq ($(TYPE),lib)
 ALLLIBS += $(@PACKAGE@LIB)
+ALLALIBS += $(@PACKAGE@ALIB)
+ifneq ($(DYEXT),)
+ALLLIBS += $(@PACKAGE@DLIB)
+endif
 BINLIBS += -l@PACKAGE@
 else
 ALLEXECS += $(@PACKAGE@BIN)
 endif
 
+ifeq ($(DYEXT),)
+@PACKAGE@LIB := $(@PACKAGE@LIB)
+else
+@PACKAGE@LIB := $(@PACKAGE@LIB)
+endif
+
 # include all dependency files
 INCLUDEFILES +=$(@PACKAGE@DEP)
 
@@ -154,17 +174,49 @@ endif
       cd $(CURDIR) ; rm -rf $$TMPDIR
          $(MUTE)chmod a-w $@
 
+ifneq ($(DYEXT),)
+$(@PACKAGE@DLIB):$(@PACKAGE@O) $(@PACKAGE@DO) @MODULE@/module.mk
+ifndef ALIQUIET
+         @echo "***** Linking library $@ *****"
+endif
+         $(MUTE)TMPDIR=/tmp/@MODULE@$$$$.`date +%M%S` ; \
+         export TMPDIR; mkdir $$TMPDIR ; cd $$TMPDIR ; \
+         find $(CURDIR)/@MODULE@/tgt_$(ALICE_TARGET) -name '*.o' -exec ln -s {} . \; ;\
+         rm -f $(CURDIR)/$@ ;\
+         $(DYLD) $(@PACKAGE@DYFLAGS) -o $(CURDIR)/$@ $(notdir $(@PACKAGE@O) $(@PACKAGE@DO))  $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(DYLIB);
+         $(MUTE)chmod a-w $(CURDIR)/$@ ;\
+         rm -rf $$TMPDIR
+endif
+
+$(@PACKAGE@ALIB):$(@PACKAGE@O) $(@PACKAGE@DO) @MODULE@/module.mk
+ifndef ALIQUIET
+         @echo "***** Linking static library $@ *****"
+endif
+         $(MUTE)TMPDIR=/tmp/@MODULE@$$$$.`date +%M%S` ; \
+         export TMPDIR; mkdir $$TMPDIR ; cd $$TMPDIR ; \
+         find $(CURDIR)/@MODULE@/tgt_$(ALICE_TARGET) -name '*.o' -exec ln -s {} . \; ;\
+      rm -f $(CURDIR)/$@ ;\
+         $(ALLD) $(ALFLAGS) $(CURDIR)/$@ $(notdir $(@PACKAGE@O) $(@PACKAGE@DO))  $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(ALLIB);\
+      cd $(CURDIR) ; rm -rf $$TMPDIR
+         $(MUTE)chmod a-w $@
+
+
 $(@PACKAGE@BIN):$(@PACKAGE@O) $(@PACKAGE@DO) @MODULE@/module.mk
 ifndef ALIQUIET
          @echo "***** Making executable $@ *****"
 endif
-         $(MUTE)$(LD) $(LDFLAGS) $(@PACKAGE@O) $(@PACKAGE@DO) $(BINLIBDIRS) $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(LIBS) $(EXEFLAGS) -o $@ 
+ifeq ($(ALIPROFILE),YES)
+       $(MUTE)$(LD) $(LDFLAGS) $(@PACKAGE@O) $(ARLIBS) $(SHLIBS) $(LIBS) $(EXEFLAGS) -o $@
+else
+         $(MUTE)$(LD) $(LDFLAGS) $(@PACKAGE@O) $(@PACKAGE@DO) $(BINLIBDIRS) $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(LIBS) $(EXEFLAGS) -o $@
+endif
 
 $(@PACKAGE@DS): $(@PACKAGE@CINTHDRS) $(@PACKAGE@DH) @MODULE@/module.mk
 ifndef ALIQUIET
         @echo "***** Creating $@ *****";       
 endif
         @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
+        @rm -f $(patsubst %.cxx,%.d, $@)
         $(MUTE)rootcint -f $@ -c $(@PACKAGE@DEFINE) $(CINTFLAGS) $(@PACKAGE@INC) $(@PACKAGE@CINTHDRS) $(@PACKAGE@DH) 
 
 $(@PACKAGE@DO): $(@PACKAGE@DS)
@@ -177,6 +229,9 @@ endif
 
 ifeq ($(TYPE),lib)
 all-@PACKAGE@: $(@PACKAGE@LIB)
+ifneq ($(DYEXT),)
+all-@PACKAGE@: $(@PACKAGE@DLIB)
+endif
 else
 all-@PACKAGE@: $(@PACKAGE@BIN)
 endif