Streamline libs and check for deleted files
authoralibrary <alibrary@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 16 Jun 2005 11:40:47 +0000 (11:40 +0000)
committeralibrary <alibrary@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 16 Jun 2005 11:40:47 +0000 (11:40 +0000)
14 files changed:
Makefile
build/Makefile.alphacxx6
build/Makefile.config [deleted file]
build/Makefile.hpuxacc
build/Makefile.linux
build/Makefile.linuxia64ecc
build/Makefile.linuxia64gcc
build/Makefile.linuxicc
build/Makefile.linuxx8664gcc
build/Makefile.macosx
build/Makefile.macosxxlc
build/Makefile.solarisCC5
build/header.tpl
build/module.tpl

index 111f487ce0ecbaab2b32240d18f4b5d813352c7b..6e9185d68ae018b6a9cccb2b1f2951e136730565 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -23,11 +23,6 @@ export CLASSPATH IRST_INSTALLDIR IRST_CONFIG_DIR
 CODE_CHECK=java rules.ALICE.ALICERuleChecker
 REV_ENG=$(IRST_INSTALLDIR)/scripts/revEng.sh
 
-#-------------------------------------------------------------------------------
-# Include library definition
-
-include build/Makefile.config
-
 #-------------------------------------------------------------------------------
 # Include machine dependent macros
 
@@ -117,8 +112,17 @@ DEPINC     += $(GENINC)
 #-------------------------------------------------------------------------------
 # Libraries to link binaries against
 # Libraries will be linked against SHLIB
+# ROOT libraries 
+
+ROOTCLIBS     := $(shell root-config --glibs) -lThread -lMinuit -lHtml -lVMC -lGeom
 
-LIBS := $(GLIBS) $(ROOTLIBS) $(SYSLIBS)
+ROOTPLIBS     := -lEG -lEGPythia6
+
+ALILIBS              := -L$(LIBDIR) -lMUON -lTPC -lPMD -lTRD -lFMD -lTOF \
+                -lITS -lPHOS -lCRT -lRICH -lVZERO -lZDC -lSTRUCT \
+                -lSTART -lEVGEN -lSTEER -lCONTAINERS
+
+LIBS := $(ROOTCLIBS) $(ROOTPLIBS) $(SYSLIBS)
 
 #-------------------------------------------------------------------------------
 # default target
@@ -126,6 +130,8 @@ LIBS := $(GLIBS) $(ROOTLIBS) $(SYSLIBS)
 default:
        $(MUTE)$(MAKE) aliroot
 
+FORCE:
+
 #-------------------------------------------------------------------------------
 # Each module will add to these macros
 
index b5c399cf5ca91b76031c635241f484f74ebd98a3..9c03828da0919da6991b51dde0d2b294d40476bd 100644 (file)
@@ -42,15 +42,13 @@ SHLIB         = -lUfor -lfor -lFutil
 SOEXT        = so
 
 #System libraries
-SYSLIBS = -lbsd
 
 # Flags for static libraries
 AFLAGS = $(filter-out -rpath /usr/lib/cmplrs/cxx -msym -shared /usr/lib/cmplrs/cc/crt0.o,$(SOFLAGS))
 AFLAGS += $(SHLIB)
 
 # Additional flags and libraries for building aliroot executable
-EXEFLAGS += -lXm -lXt -lX11 -lPW -lUfor -lfor -lFutil -lots 
-EXEFLAGS += -taso
+SYSLIBS     := -lXm -lXt -lX11 -lPW -lUfor -lfor -lFutil -lots -taso -lbsd
 
 # Cure funny problem 
 # sometimes in dependencies system include files of the sort
diff --git a/build/Makefile.config b/build/Makefile.config
deleted file mode 100644 (file)
index 5b3167a..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-# ROOT libraries 
-ROOTLIBS      := $(shell root-config --glibs) -lThread -lMinuit -lHtml -lEG -lEGPythia6 -lVMC -lGeom \
-                 -L/usr/X11R6/lib -lX11 
-
-# Additional flags for building aliroot executable
-EXEFLAGS = 
-
-ALILIBS              = -L$(LIBDIR) -lMUON -lTPC -lPMD -lTRD -lFMD -lTOF \
-                -lITS -lPHOS -lCRT -lRICH -lVZERO -lZDC -lSTRUCT \
-                -lSTART -lEVGEN -lSTEER -lCONTAINERS
index 4da3286014ae75204b235167be985713c52a13ca..5d59e82c55cb7b4c806d224b42f76b5ebe1f6c39 100644 (file)
@@ -39,11 +39,8 @@ SOFLAGS       = -b /usr/lib/libm.sl
 SOEXT        = sl
 
 # additional ROOT libraries
-ROOTLIBS  += -lcrypt 
+SYSLIBS      := -lcrypt -L/usr/lib/X11R6 -lX11 
 
-GLIBS         = -L/usr/lib/X11R6 -lX11 
-
-# System libraries
 
 
 
index 2bc9dc1ccb2d3868d5a8e518052c5053757232cd..f8876c797e8a2c24f7d06515d40befa067d17919 100644 (file)
@@ -52,15 +52,12 @@ ALLIB         =
 AEXT         = a
 
 # additional ROOT libraries
-ROOTLIBS  += -lcrypt 
 
 LIBNOVER      = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
-GLIBS         = -L/usr/X11R6/lib -lX11  $(LIBNOVER)
 
 #System libraries
-SYSLIBS = -ldl
+SYSLIBS      := -ldl -lg2c -lcrypt -L/usr/X11R6/lib -lX11  $(LIBNOVER)
 
-EXEFLAGS+= -lg2c
 
 
 
index 355ad3e4aa055afa140448680e51d47982900f19..d66e339d369fd957f0dad9d6a59c1319c83ae2e3 100644 (file)
@@ -45,12 +45,8 @@ ALLIB         =
 AEXT         = a
 
 # additional ROOT libraries
-ROOTLIBS  += -lcrypt 
 
 LIBNOVER      = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
-GLIBS         = $(LIBNOVER)
 
-#System libraries
-SYSLIBS =
-
-EXEFLAGS+= -L/usr/local/lib -lXt -lCEPCF90 -lF90 -lPEPCF90 -lintrins
+SYSLIBS      := $(LIBNOVER) -lcrypt -L/usr/local/lib -lXt -lCEPCF90 -lF90 \
+                -lPEPCF90 -lintrins -L/usr/X11R6/lib -lX11
\ No newline at end of file
index 0cf212ded8a33126aea5900f3b07097b6fcdd7c9..aff5c8026ecbf64f9100ab90af35a68a36424f64 100644 (file)
@@ -44,15 +44,12 @@ ALLIB         =
 AEXT         = a
 
 # additional ROOT libraries
-ROOTLIBS  += -lcrypt 
 
 LIBNOVER      = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
-GLIBS         = -L/usr/X11R6/lib -lX11  $(LIBNOVER)
 
 #System libraries
-SYSLIBS = -ldl -lbsd
+SYSLIBS      := -ldl -lbsd -lg2c -L/usr/X11R6/lib -lX11  $(LIBNOVER)
 
-EXEFLAGS+= -lg2c
 
 
 
index 8efedf2635e811b36c7367c8a0cf18088ce2771c..3bbf67d75696bbbccb3913662da9cd7f3f148f51 100644 (file)
@@ -52,14 +52,10 @@ ALLIB         =
 AEXT         = a
 
 # additional ROOT libraries
-ROOTLIBS     += -lcrypt
 
 LIBNOVER      = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
-GLIBS         = $(LIBNOVER)
 
 #System libraries
-SYSLIBS =
-
-EXEFLAGS     += -L/usr/local/lib -lXt
-EXEFLAGS     += -L$(shell which ifort | sed -e 's|bin/ifort|lib|') \
+SYSLIBS      := -lcrypt -L/usr/X11R6/lib -lX11 $(LIBNOVER) -L/usr/local/lib \
+                -lXt -L$(shell which ifort | sed -e 's|bin/ifort|lib|') 
                 -lifcore -lifport
index ea8509db31829062ce8baf7f1a31adfbb76f0903..1a75a76cbb35698b99784552daf9700aeef69b57 100644 (file)
@@ -44,15 +44,13 @@ ALLIB         =
 AEXT         = a
 
 # additional ROOT libraries
-ROOTLIBS  += -lcrypt 
 
 LIBNOVER      = `find /lib64 -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib64/ -l/'`
-GLIBS         = -L/usr/X11R6/lib64 -lX11  $(LIBNOVER)
 
 #System libraries
-SYSLIBS = -ldl
+SYSLIBS      := -ldl -lcrypt -L/usr/X11R6/lib64 -lX11  $(LIBNOVER)
 
-EXEFLAGS+= -lg2c
+EXEFLAGS     := -lg2c
 
 
 
index 5bd59174f42033107c0efc11b4ef7dc6971ba247..ae0e5a10e072e19791de37128296d7e6c001db06 100644 (file)
@@ -29,6 +29,9 @@ CXXOPT        = $(OPT)
 CXXNOOPT      = $(NOOPT) 
 COPT         = $(OPT)
 FOPT         = $(OPT) -fno-second-underscore 
+ifeq (g95,$(findstring g95,$(ROOTBUILD)))
+FOPT        += -fbounds-check
+endif
 
 # CERNLIB defines
 CLIBDEFS      = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ -DCERNLIB_PPC
@@ -37,7 +40,7 @@ CLIBCOPT      =
 CLIBFOPT      = $(CLIBDEFS)
 
 # Compiler flags
-CXXFLAGS      = $(CXXOPT)   -Wall -W -Wno-long-double -pipe -fsigned-char -fno-common -fmessage-length=0 -I$(FINK_ROOT)/include 
+CXXFLAGS      = $(CXXOPT)   -Wall -W -Wno-long-double -pipe -fbounds-check -fsigned-char -fno-common -fmessage-length=0 -I$(FINK_ROOT)/include #-Weffc++ -Woverloaded-virtual 
 
 ifeq (g95,$(findstring g95,$(ROOTBUILD)))
 CXXFLAGS+=-DFORTRAN_G95
@@ -75,16 +78,14 @@ AEXT              = a
 
 DEPENDCXXFLAGS = $(CXXFLAGS) -I/usr/include/sys
 
-GLIBS         = -L/usr/X11R6/lib -lX11
+SYSLIBS      := -L/usr/X11R6/lib -lX11
 
-EXEFLAGS     += -bind_at_load 
+EXEFLAGS     := -bind_at_load 
 
 #System libraries
 
 ifeq (g95,$(findstring g95,$(ROOTBUILD)))
-SYSLIBS := -L$(dir $(shell find $(FINK_ROOT) -name libf95.a)) -lf95
+SYSLIBS += -L$(dir $(shell find $(FINK_ROOT) -name libf95.a)) -lf95
 else
-SYSLIBS := -ldl -L$(dir $(shell find $(FINK_ROOT) -name libgfortran.dylib)) -lgfortranbegin -lgfortran
+SYSLIBS += -ldl -L$(dir $(shell find $(FINK_ROOT) -name libgfortran.dylib)) -lgfortranbegin -lgfortran
 endif
-
-
index 825898d469f9fc2085a8428d800886cabca457d9..68ecf4295ec09dbfc563973819f419f148e32e50 100644 (file)
@@ -59,12 +59,11 @@ ALFLAGS       = cr
 ALLIB         = 
 AEXT         = a
 
-GLIBS         = -L/usr/X11R6/lib -lX11
 
 #System libraries
-SYSLIBS = -ldl
+SYSLIBS      := -ldl -L/usr/X11R6/lib -lX11
 
-EXEFLAGS+= -Wl,-bind_at_load
+EXEFLAGS     := -Wl,-bind_at_load
 
 
 
index 797db7c6589be2e9985b587e538b770d0b53923d..02dcc3a90b5ac58ae4655497998300ccd784081c 100644 (file)
@@ -40,10 +40,12 @@ LDFLAGS       = $(OPT) -Qoption ld -t
 SHLD         = $(LD)
 SOFLAGS       = -G $(LDFLAGS) $(SHLIB)  
 
-ROOTLIBS += -lm -ldl -lnsl -lsocket
+SYSLIBS      := -L/usr/dt/lib -L/usr/openwin/lib -L/usr/ccs/lib -lXm -lXt \
+                -lX11 -lm -lgen -ldl -lsocket -lsunmath -lrtc -lnsl
 
 # Additional flags and libraries for building aliroot executable
-EXEFLAGS += -O -Qoption ld -t -L/usr/dt/lib -L/usr/openwin/lib -L/usr/ccs/lib -lXm -lXt -lX11 -lm -lgen -ldl -lsocket -lsunmath -lrtc
+
+EXEFLAGS     := -O -Qoption ld -t 
 
 
 
index c2dae5c0c43a8cc313c0fc4a1ade3fcd73cf976c..b51c9ca4748bc3c39a4c7a0299c975b319fb6ce9 100644 (file)
@@ -28,6 +28,7 @@ PACKCFLAGS:=
 PACKDYFLAGS:=
 PACKSOFLAGS:=
 PACKLDFLAGS:=
+PACKBLIBS:=
 EXPORT:=
 EHDRS:=
 CINTHDRS:=
index 4df3c786e7009d2d13b482da063285c92baddddf..97b8b7eefbfc89a468755df0e56bb4e24ca1a241 100644 (file)
@@ -45,6 +45,12 @@ else
 @PACKAGE@DCXXFLAGS:=$(PACKDCXXFLAGS)
 endif
 
+ifndef PACKBLIBS
+@PACKAGE@BLIBS:=$(LIBS)
+else
+@PACKAGE@BLIBS:=$(PACKBLIBS)
+endif
+
 
 ifdef DHDR
 WITHDICT=YES
@@ -95,10 +101,8 @@ endif
 #############################################################################
 
 # Package Dictionary 
-
 @PACKAGE@DH:=$(MODDIR)/$(DHDR)
 
-
 #All objects
 @PACKAGE@CO:=$(patsubst %,$(MODDIRO)/%, $(CSRCS:.c=.o))
 TEMP:=$(FSRCS:.F=.o)
@@ -241,12 +245,12 @@ ifndef ALIQUIET
          @echo "***** Making executable $@ *****"
 endif
 ifeq ($(ALIPROFILE),YES)
-       $(MUTE)$(LD) $(@PACKAGE@LDFLAGS) $(@PACKAGE@O) $(ARLIBS) $(SHLIBS) $(LIBS) $(EXEFLAGS) -o $@
+       $(MUTE)$(LD) $(@PACKAGE@LDFLAGS) $(@PACKAGE@O) $(ARLIBS) $(SHLIBS) $(@PACKAGE@BLIBS) $(EXEFLAGS) -o $@
 else
-         $(MUTE)$(LD) $(@PACKAGE@LDFLAGS) $(@PACKAGE@O) $(@PACKAGE@DO) $(BINLIBDIRS) $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(LIBS) $(EXEFLAGS) -o $@
+         $(MUTE)$(LD) $(@PACKAGE@LDFLAGS) $(@PACKAGE@O) $(@PACKAGE@DO) $(BINLIBDIRS) $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(@PACKAGE@BLIBS) $(EXEFLAGS) -o $@
 endif
 
-$(@PACKAGE@DS): $(@PACKAGE@CINTHDRS) $(@PACKAGE@DH) @MODULE@/module.mk
+$(@PACKAGE@DS): $(@PACKAGE@CINTHDRS) $(@PACKAGE@DH) @MODULE@/module.mk @MODULE@/tgt_$(ALICE_TARGET)/@PACKAGE@_srcslist
 ifndef ALIQUIET
         @echo "***** Creating $@ *****";       
 endif
@@ -260,6 +264,14 @@ ifndef ALIQUIET
 endif
                $(MUTE)$(CXX) $(@PACKAGE@DEFINE) -c $(@PACKAGE@INC)  -I$(ALICE_ROOT) $< -o $@ $(@PACKAGE@DCXXFLAGS)
 
+$(MODDIRO)/@PACKAGE@_srcslist: FORCE
+       @for i in $(@PACKAGE@CS) $(@PACKAGE@S); do echo $$i; done | sort > $@.new ;\
+       diff $@ $@.new | sed -n -e "s?^\< *@MODULE@?@MODULE@/tgt_$(ALICE_TARGET)?p" | \
+       sed -e "s?\.c.*\$$?.\*?" | xargs \rm -f ;\
+       diff -q -w >/dev/null 2>&1 $@ $@.new ;\
+       if [ $$? -ne 0 ]; then \mv $@.new $@; echo "***** Source changed, remaking $(@PACKAGE@DS) *****";\
+       else \rm $@.new; fi
+
 #Different targets for the module
 
 ifeq ($(TYPE),lib)