Updated version of the non-recursive Makefiles. See doc/README.FlatMakefile and build...
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 15 Oct 2001 12:24:22 +0000 (12:24 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 15 Oct 2001 12:24:22 +0000 (12:24 +0000)
31 files changed:
ALIFAST/libALIFAST.pkg
ALIROOT/binaliroot.pkg
CONTAINERS/libCONTAINERS.pkg
EVGEN/libEVGEN.pkg
FMD/libFMD.pkg
HIJING/libhijing.pkg
ITS/libITS.pkg
MINICERN/libminicern.pkg
MUON/libMUON.pkg
Makefile.flat
PDF/libpdf.pkg
PHOS/libPHOS.pkg
PMD/libPMD.pkg
RALICE/libRALICE.pkg
RICH/libRICH.pkg
START/libSTART.pkg
STEER/libSTEER.pkg
STRUCT/libSTRUCT.pkg
TGeant3/libTGeant3.pkg
THbtp/libTHbtp.pkg
THijing/libTHijing.pkg
TMEVSIM/libTMevSim.pkg
TOF/libTOF.pkg
TPC/libTPC.pkg
TRD/libTRD.pkg
ZDC/libZDC.pkg
build/Makefile.config
build/README [new file with mode: 0644]
build/header.tpl
build/module.dep
build/module.tpl

index c497279..2d36c9b 100644 (file)
@@ -1,23 +1,8 @@
-SRCS= \
-AliFast.cxx \
-AliFMaker.cxx \
-AliFDet.cxx \
-AliFTrackMaker.cxx \
-AliFTrack.cxx \
-AliFHistBrowser.cxx \
-AliFBigBang.cxx \
-AliFBrowsable.cxx \
-AliFVirtualDisplay.cxx
+SRCS= AliFast.cxx AliFMaker.cxx AliFDet.cxx AliFTrackMaker.cxx \
+      AliFTrack.cxx AliFHistBrowser.cxx AliFBigBang.cxx \
+      AliFBrowsable.cxx AliFVirtualDisplay.cxx
 
-HDRS= \
-AliFast.h \
-AliFMaker.h \
-AliFDet.h \
-AliFTrackMaker.h \
-AliFTrack.h \
-AliFHistBrowser.h \
-AliFBigBang.h \
-AliFBrowsable.h \
-AliFVirtualDisplay.h
+
+HDRS= $(SRCS:.cxx=.h)
 
 DHDR:=ALIFASTLinkDef.h
index 67fadf5..f6f8d1c 100644 (file)
@@ -1,16 +1,9 @@
 SRCS:=aliroot.cxx
 
-FSRCS:=loadmod.F ludata.F # pydata.F
+FSRCS:=loadmod.F #ludata.F # pydata.F
 
 CSRCS:=dummies.c
 
 ELIBSDIR:= build/tgt_$(ALICE_TARGET)/lib 
 
-ELIBS:= pythia6 pdf THijing hijing \
-            TMevSim mevsim STEER TPC PMD CONTAINERS \
-            ZDC STRUCT RALICE EMCAL ALIFAST CASTOR \
-            FMD START TGeant3 EVGEN TRD geant321 \
-             minicern TOF ITS RICH PHOS MUON 
-
-
-
+ELIBS:= MUON TPC PMD TRD FMD TOF ITS PHOS CASTOR RICH ZDC STRUCT minicern geant321 TGeant3 START EVGEN STEER CONTAINERS EG pythia6 pdf THijing hijing TMevSim mevsim THbtp HBTP
index 951ac69..001bcf3 100644 (file)
@@ -1,28 +1,12 @@
 
-SRCS= \
-AliMemArray.cxx \
-AliClassInfo.cxx  \
-AliDataType.cxx \
-AliObjectArray.cxx \
-TArrayOfArray.cxx \
-AliArrayBranch.cxx \
-AliSegmentID.cxx  \
-AliSegmentArray.cxx \
-AliDigits.cxx \
-AliArrayI.cxx \
-AliArrayS.cxx
+SRCS= AliMemArray.cxx AliClassInfo.cxx  AliDataType.cxx\
+      AliObjectArray.cxx    TArrayOfArray.cxx  AliArrayBranch.cxx\
+      AliSegmentID.cxx  AliSegmentArray.cxx \
+      AliDigits.cxx AliArrayI.cxx AliArrayS.cxx
 
-HDRS= \
-AliMemArray.h \
-AliClassInfo.h  \
-AliDataType.h \
-AliObjectArray.h \
-TArrayOfArray.h \
-AliArrayBranch.h \
-AliSegmentID.h  \
-AliSegmentArray.h \
-AliDigits.h \
-AliArrayI.h \
-AliArrayS.h
+
+HDRS= $(SRCS:.cxx=.h)
 
 DHDR:= CONTAINERSLinkDef.h
+
+EINCLUDE:= TPC
\ No newline at end of file
index 9e6077c..a57733b 100644 (file)
@@ -1,4 +1,4 @@
-SRCS=  AliGenHIJINGpara.cxx AliGenBox.cxx AliGenFixed.cxx \
+SRCS=   AliGenHIJINGpara.cxx AliGenBox.cxx AliGenFixed.cxx \
                AliGenCocktail.cxx AliGenFLUKAsource.cxx \
                AliGenLib.cxx \
                 AliGenMUONlib.cxx AliGenParam.cxx AliGenPythia.cxx \
@@ -11,26 +11,20 @@ SRCS=  AliGenHIJINGpara.cxx AliGenBox.cxx AliGenFixed.cxx \
                AliGenHijingEventHeader.cxx AliGenPythiaEventHeader.cxx \
                AliDecayer.cxx AliDecayerPythia.cxx \
                 AliGenMevSim.cxx AliMevSimParticle.cxx AliMevSimConfig.cxx \
-               AliGenMC.cxx
+               AliGenMC.cxx AliGenCocktailAfterBurner.cxx \
+         AliGenHBTprocessor.cxx 
 
-HDRS= AliGenHIJINGpara.h \
-AliGenBox.h \
-AliGenFixed.h \
-AliGenCocktail.h AliGenFLUKAsource.h \
-AliGenLib.h \
- AliGenMUONlib.h AliGenParam.h AliGenPythia.h \
- AliPythia.h AliDimuCombinator.h AliGenHalo.h \
-AliGenHaloProtvino.h \
-AliGenExtFile.h AliGenScan.h AliGenPHOSlib.h \
-AliGenDoubleScan.h AliGenCocktailEntry.h \
-AliGenGSIlib.h AliGenPMDlib.h\
-AliGenHijing.h \
-AliGenHijingEventHeader.h AliGenPythiaEventHeader.h \
-AliDecayer.h AliDecayerPythia.h \
- AliGenMevSim.h AliMevSimParticle.h AliMevSimConfig.h \
- AliGenMC.h
+# Headerfiels for this particular package (Path respect to own directory)
+HDRS= $(SRCS:.cxx=.h) 
 
+# Headerfiles otherwise needed (Full pathname required)
 
+EHDRS = $(ALICE_ROOT)/include/THijing.h \
+        $(ROOTSYS)/include/TF1.h \
+       $(ROOTSYS)/include/TChain.h \
+        $(ROOTSYS)/include/TParticle.h \
 
 
 DHDR:=EVGENLinkDef.h
+
+EXPORT:=AliPythia.h AliDecayer.h AliDecayerPythia.h AliGenHijingEventHeader.h
\ No newline at end of file
index 252b2d1..fec4548 100644 (file)
@@ -1,13 +1,5 @@
-SRCS= \
-AliFMD.cxx \
-AliFMDv0.cxx \
-AliFMDv1.cxx \
-AliFMDhit.cxx \
-AliFMDdigit.cxx \
-AliFMDMerger.cxx \
-AliFMDReconstruction.cxx \
-AliFMDReconstParticles.cxx \
-AliFMDSDigitizer.cxx
+SRCS= AliFMD.cxx AliFMDv0.cxx AliFMDv1.cxx AliFMDhit.cxx AliFMDdigit.cxx AliFMDMerger.cxx AliFMDReconstruction.cxx AliFMDReconstParticles.cxx AliFMDSDigitizer.cxx
+
 
 HDRS= $(SRCS:.cxx=.h)
 
index 850d2b9..5ade4fd 100644 (file)
@@ -155,4 +155,4 @@ hipyset1_35/ulangl_hijing.F \
 hipyset1_35/ulmass_hijing.F
 
 
-EINCLUDE:= hijing
\ No newline at end of file
+EINCLUDE:= HIJING/hijing
index 223c601..1b65068 100644 (file)
@@ -1,10 +1,10 @@
 SRCS          = AliITS.cxx AliITSv1.cxx AliITSv3.cxx AliITSv5.cxx \
-      AliITSv5symm.cxx AliITSv5asymm.cxx \
-      AliITSvPPRcoarseasymm.cxx AliITSvPPRcoarsesymm.cxx\
-      AliITSvPPRasymm.cxx AliITSvPPRsymm.cxx\
-      AliITShit.cxx AliITSDetType.cxx \
+               AliITSv5symm.cxx AliITSv5asymm.cxx \
+               AliITSvPPRcoarseasymm.cxx AliITSvPPRcoarsesymm.cxx\
+               AliITSvPPRasymm.cxx AliITSvPPRsymm.cxx\
+               AliITShit.cxx AliITSDetType.cxx \
                AliITSgeom.cxx AliITSgeomMatrix.cxx \
-      AliITSgeomSPD.cxx AliITSgeomSDD.cxx \
+               AliITSgeomSPD.cxx AliITSgeomSDD.cxx \
                AliITSgeomSSD.cxx AliITSmodule.cxx \
                 AliITSGeant3Geometry.cxx \
                AliITSsimulationFastPoints.cxx \
@@ -32,11 +32,11 @@ SRCS          = AliITS.cxx AliITSv1.cxx AliITSv3.cxx AliITSv5.cxx \
                AliITSvtest.cxx \
                 AliITSclusterV2.cxx AliITStrackV2.cxx AliITStrackerV2.cxx \
                AliITSVertex.cxx                
+#              AliITSAlignmentTrack.cxx AliITSAlignmentModule.cxx \
 
 HDRS:=  $(SRCS:.cxx=.h)
 
 DHDR=ITSLinkDef.h
 
-
-
+EINCLUDE:=TGeant3 TPC CONTAINERS
 
index 711412a..88d1aa7 100644 (file)
@@ -230,7 +230,7 @@ endif
 
 
 
-EINCLUDE:= packlib/kernlib/kerngen packlib/zebra packlib/kernlib/kernnum mathlib/gen
+EINCLUDE:= MINICERN/packlib/kernlib/kerngen MINICERN/packlib/zebra MINICERN/packlib/kernlib/kernnum MINICERN/mathlib/gen
 
 
 
index 9f0bc34..a09bfe7 100644 (file)
@@ -1,6 +1,6 @@
 FSRCS= extrap.F
 
-SRCS         =  AliMUONChamber.cxx AliMUONChamberTrigger.cxx \
+SRCS         =   AliMUONChamber.cxx AliMUONChamberTrigger.cxx \
               AliMUONSegmentationV0.cxx\
               AliMUONResponse.cxx AliMUONResponseV0.cxx \
               AliMUONSegmentationV01.cxx \
@@ -27,35 +27,16 @@ SRCS         =  AliMUONChamber.cxx AliMUONChamberTrigger.cxx \
               AliMUONSegmentationSlatModule.cxx AliMUONSegmentationSlatModuleN.cxx \
               AliMUONSegmentationSlat.cxx AliMUONSegmentationSlatN.cxx \
               AliMUONRecoEvent.cxx AliMUONRecoDisplay.cxx \
-               AliMUONMerger.cxx AliMUONFactory.cxx
+               AliMUONMerger.cxx AliMUONFactory.cxx AliMUONDigitizer.cxx 
+
+
+HDRS         =  $(SRCS:.cxx=.h) 
+
+EHDRS        = $(ROOTSYS)/include/TF1.h \
+               $(ROOTSYS)/include/TH3.h \
+               $(ROOTSYS)/include/TMarker3DBox.h \
+               $(ROOTSYS)/include/TMatrix.h \
+               $(ROOTSYS)/include/TTree.h \
 
-HDRS         =  AliMUONChamber.h AliMUONChamberTrigger.h \
-              AliMUONSegmentationV0.h\
-              AliMUONResponse.h AliMUONResponseV0.h \
-              AliMUONSegmentationV01.h \
-               AliMUONSegmentationV02.h AliMUONSegmentationV04.h \
-              AliMUONSegmentationV05.h\
-              AliMUONSegmentationTrigger.h  AliMUONResponseTrigger.h\
-               AliMUONResponseTriggerV1.h\
-              AliMUONSegmentationTriggerX.h AliMUONSegmentationTriggerY.h \
-               AliMUONSegmentationV1.h AliMUON.h AliMUONv0.h AliMUONv1.h \
-               AliMUONDisplay.h AliMUONPoints.h \
-               AliMUONClusterFinderVS.h \
-               AliMUONHitMapA1.h \
-              AliMUONHit.h AliMUONPadHit.h AliMUONDigit.h \
-               AliMUONTransientDigit.h AliMUONRawCluster.h \
-              AliMUONReconstHit.h \
-               AliMUONEventReconstructor.h \
-              AliMUONTriggerDecision.h \
-               AliMUONHitForRec.h AliMUONSegment.h \
-               AliMUONTrack.h AliMUONTrackHit.h AliMUONTrackParam.h \
-               AliMUONTriggerCircuit.h AliMUONTriggerLut.h \
-               AliMUONGlobalTrigger.h AliMUONLocalTrigger.h \
-               AliMUONTriggerConstants.h  AliMUONConstants.h \
-              AliMUONClusterInput.h  \
-              AliMUONSegmentationSlatModule.h AliMUONSegmentationSlatModuleN.h \
-              AliMUONSegmentationSlat.h AliMUONSegmentationSlatN.h \
-              AliMUONRecoEvent.h AliMUONRecoDisplay.h \
-               AliMUONMerger.h AliMUONFactory.h
 
 DHDR:= MUONLinkDef.h
index e014592..bb6835c 100644 (file)
@@ -8,69 +8,96 @@
 override ALICE_ROOT=$(shell pwd)
 
 include build/Makefile.config
+################################################################## 
+# 
+#            Where to install libraries and binaries 
+#                 and common header files
 
-# Where to install libraries and binaries
 LIBPATH=lib/tgt_$(ALICE_TARGET)
 BINPATH=bin/tgt_$(ALICE_TARGET)
+EXPORTDIR = $(ALICE_ROOT)/include
+##################################################################
 
-##### include machine dependent macros #####
+##################################################################
+# include machine dependent macros 
 
-#include $(filter-out DEBUG,build/Makefile.$(ALICE_TARGET))
 include build/Makefile.$(ALICE_TARGET)
+##################################################################
+
+##################################################################
+# 
+#               Check if called with debug
 
-# Check if called with debug
 ifeq ($(ALIDEBUG),YES)
 override ALICE_TARGET:=$(ALICE_TARGET)DEBUG
 FFLAGS := -g $(filter-out -O%,$(FFLAGS))
 CXXFLAGS := -g $(filter-out -O%,$(CXXLAGS))
 CFLAGS := -g $(filter-out -O%,$(CLAGS))
 endif
+##################################################################
 
-
-##### Modules to build #####
-
-#needs to add:  VZERO TGeant4 AliGeant4 GEODB Euclid  
+##################################################################
 #
+#                   Modules to build 
 
-MODULES:=STEER TPC PMD CONTAINERS ZDC STRUCT RALICE EMCAL \
-       ALIFAST CASTOR FMD START TGeant3 EVGEN THijing TMEVSIM \
-        MEVSIM PDF PYTHIA PYTHIA6  TRD GEANT321 MINICERN TOF \
-       ITS RICH PHOS MUON HIJING LHC HBTP THbtp
+MODULES:=PDF PYTHIA PYTHIA6 GEANT321 MINICERN STEER HIJING\
+        TGeant3 PHOS TRD TPC ZDC MUON PMD FMD TOF ITS \
+         CASTOR RICH START STRUCT EVGEN RALICE ALIFAST \
+        THijing CONTAINERS MEVSIM TMEVSIM THbtp HBTP 
+##################################################################
 
 MODULES += ALIROOT 
 
 MODDIRS := MODULES
                 
-# look for include files in each of the moduled
+
+#############################################################
+# 
+#               Default include dirs for 
+#          C++, Fortran, Cint, and dependencies 
+#      The module directory will be added by each module
+#
+
 CXXFLAGS += $(patsubst %,-I%,$(ALICE_ROOT))
-CXXFLAGS += $(patsubst %,-I$(ALICE_ROOT)/%,$(MODULES))
+CXXFLAGS += -I$(ALICE_ROOT)/include
 CXXFLAGS += $(patsubst %,-I%,$(ROOTSYS)/include)
 
 FFLAGS += $(patsubst %,-I%,$(ALICE_ROOT))
-FFLAGS += $(patsubst %,-I$(ALICE_ROOT)/%,$(MODULES))
+FFLAGS += -I$(ALICE_ROOT)/include
 FFLAGS += $(patsubst %,-I%,$(ROOTSYS)/include)
 
 CINTFLAGS += $(patsubst %,-I%,$(ALICE_ROOT))
-CINTFLAGS += $(patsubst %,-I$(ALICE_ROOT)/%,$(MODULES))
+CINTFLAGS += -I$(ALICE_ROOT)/include
 CINTFLAGS += $(patsubst %,-I%,$(ROOTSYS)/include)
 
 DEPINC += $(patsubst %,-I%,$(ALICE_ROOT))
-DEPINC += $(patsubst %,-I$(ALICE_ROOT)/%,$(MODULES))
+DEPINC  += -I$(ALICE_ROOT)/include
 DEPINC += $(patsubst %,-I%,$(ROOTSYS)/include)
+#############################################################
 
 
+#############################################################
+#
+#             Libraries to link binaries against
+#            Libraries will be linked againstSHLIB
 LIBS := $(ROOTLIBS) $(SYSLIBS) $(GLIBS)
+#############################################################
 
 
 # default target
 default:     alilibs  aliroot
 
-# each module must add to this
+
+#############################################################
+#
+#            Each module will add to this
+
 ALLLIBS :=
 ALLEXECS :=
 INCLUDEFILES :=
 BINLIBS := 
-
+EXPORTFILES := 
+#############################################################
 
 BINLIBDIRS := -L$(ALICE_ROOT)/$(LIBPATH)
 
@@ -80,23 +107,38 @@ BINLIBDIRS := -L$(ALICE_ROOT)/$(LIBPATH)
 
 include build/module.dep
 
-# Check if module.mk is present for the library
+#############################################################
+# 
+#        Check if module.mk is present for the library
 %.mk:
        @echo "***** Creating $@ file *****";
        share/alibtool mkmodule  $(patsubst %/module.mk,%,$@) > $@;
+#############################################################
+
+# **************************************************************************
+#
+#               If cleaning, do not include 
+#             dependencies or module.mk files.
 
-# If cleaning, do not include dependencies or module.mk files.
 ifneq ($(findstring clean,$(MAKECMDGOALS)),clean)
 
-# description of each module
+#############################################################
+# 
+#                Include the modules
 include $(patsubst %,%/module.mk,$(MODULES))
+#############################################################
 
-# include dependencies if not making them!
+#############################################################
+#
+#          include dependencies if not making them!
 ifneq ($(MAKECMDGOALS),depend)
 include $(INCLUDEFILES)
 endif
+#############################################################
 
 endif
+# **************************************************************************
+
 
 # targets
 
@@ -112,7 +154,7 @@ makedistr: $(MODULES)
 
 all: aliroot
 
-depend: $(INCLUDEFILES)
+depend: $(INCLUDEFILES) 
 
 debug:
        @echo "***** Entering DEBUG mode. *****"
@@ -138,15 +180,19 @@ $(LIBPATH):
        mkdir -p $@
 
 
-cleanall:
+cleanall: clean-modules
        @echo "***** Cleaning up everything ****"
        rm -rf $(patsubst %,%/module.mk,$(MODULES)) 
        rm -rf $(patsubst %,%/tgt_$(ALICE_TARGET),$(MODULES))
        rm -rf lib/tgt_$(ALICE_TARGET)
        rm -rf bin/tgt_$(ALICE_TARGET)
+       rm -rf $(EXPORTDIR)
 
-clean: clean-modules clean-depend clean-objects clean-libs clean-bins
+clean: clean-modules  clean-objects clean-libs clean-bins clean-ditcs
 
+clead-dicts:
+       @echo "***** Cleaning up G__ files *****"
+       rm -rf */tgt_$(ALICE_TARGET)/G__*
 clean-modules:
        @echo "***** Cleaning up module.mk files *****"
        rm -rf $(patsubst %,%/module.mk,$(MODULES)) 
index 03d06a3..e12bfe5 100644 (file)
@@ -389,4 +389,4 @@ spdf/whit6q.F \
 npdf/eks98.F \
 npdf/eksarp.F \
 npdf/sfeks98.F \
-npdf/structa.F 
\ No newline at end of file
+npdf/structa.F 
index 0645c3b..bf12d97 100644 (file)
@@ -1,29 +1,31 @@
-SRCS          =  AliPHOS.cxx AliPHOSv0.cxx AliPHOSv1.cxx \
+SRCS          =    AliPHOS.cxx AliPHOSv0.cxx AliPHOSv1.cxx \
                  AliPHOSvFast.cxx AliPHOSvImpacts.cxx \
-                 AliPHOSImpact.cxx AliPHOSHit.cxx \
+                 AliPHOSImpact.cxx \
+                 AliPHOSHit.cxx \
                  AliPHOSGeometry.cxx \
-                        AliPHOSEMCAGeometry.cxx \
-                        AliPHOSCPVGeometry.cxx AliPHOSCPVBaseGeometry.cxx \
-                        AliPHOSSupportGeometry.cxx \
-                        AliPHOSCPVDigit.cxx AliPHOSDigit.cxx  \
+                AliPHOSEMCAGeometry.cxx \
+                AliPHOSCPVGeometry.cxx AliPHOSCPVBaseGeometry.cxx \
+                AliPHOSSupportGeometry.cxx \
+                AliPHOSCPVDigit.cxx AliPHOSDigit.cxx  \
                  AliPHOSRecPoint.cxx AliPHOSEmcRecPoint.cxx \
-                        AliPHOSCpvRecPoint.cxx \
-                        AliPHOSClusterizer.cxx AliPHOSClusterizerv1.cxx  \
+                AliPHOSCpvRecPoint.cxx \
+                AliPHOSClusterizer.cxx AliPHOSClusterizerv1.cxx  \
                  AliPHOSLink.cxx AliPHOSSDigitizer.cxx AliPHOSDigitizer.cxx\
-                        AliPHOSReconstructioner.cxx  AliPHOSTrackSegment.cxx \
+                AliPHOSReconstructioner.cxx  AliPHOSTrackSegment.cxx \
                  AliPHOSTrackSegmentMaker.cxx AliPHOSTrackSegmentMakerv1.cxx \
                  AliPHOSRecParticle.cxx AliPHOSPID.cxx AliPHOSPIDv1.cxx \
                  AliPHOSAnalyze.cxx AliPHOSFastRecParticle.cxx \
                  AliPHOSGetter.cxx AliPHOSTick.cxx \
-                        AliPHOSQAVirtualCheckable.cxx AliPHOSQAIntCheckable.cxx \
+                AliPHOSQAVirtualCheckable.cxx AliPHOSQAIntCheckable.cxx \
                  AliPHOSQAFloatCheckable.cxx\
-                 AliPHOSQAObjectCheckable.cxx AliPHOSQAChecker.cxx \
-                 AliPHOSQAMeanChecker.cxx AliPHOSQAAlarm.cxx \
+                 AliPHOSQAObjectCheckable.cxx AliPHOSQAChecker.cxx AliPHOSQAMeanChecker.cxx AliPHOSQAAlarm.cxx \
                  AliPHOSIhepAnalyze.cxx AliPHOSEvalRecPoint.cxx \
-                 AliPHOSRecManager.cxx AliPHOSRecCpvManager.cxx \
-                 AliPHOSRecEmcManager.cxx AliPHOSClusterizerv2.cxx
+                 AliPHOSRecManager.cxx AliPHOSRecCpvManager.cxx AliPHOSRecEmcManager.cxx \
+                 AliPHOSClusterizerv2.cxx
 
-HDRS:= $(SRCS:.cxx=.h)
+HDRS:= $(SRCS:.cxx=.h) 
+
+EHDRS:=$(ROOTSYS)/include/TTree.h
 
 DHDR= PHOSLinkDef.h
 
index bf3c21e..8e54a4a 100644 (file)
@@ -1,5 +1,8 @@
 SRCS:= AliPMD.cxx AliPMDv0.cxx AliPMDv1.cxx AliPMDRecPoint.cxx
+       
 
-HDRS:= $(SRCS:.cxx=.h)
+HDRS:= $(SRCS:.cxx=.h) 
+
+EHDRS:=$(ROOTSYS)/include/TClonesArray.h 
 
 DHDR:=PMDLinkDef.h
index 002d845..c4acdea 100644 (file)
@@ -1,43 +1,10 @@
-SRCS= \
-Ali3Vector.cxx \
-Ali4Vector.cxx \
-AliBoost.cxx \
-AliCalcluster.cxx \
-AliCalmodule.cxx \
-AliCalorimeter.cxx \
-AliInvmass.cxx \
-AliJet.cxx \
-AliMath.cxx \
-AliPosition.cxx \
-AliRandom.cxx \
-AliSample.cxx \
-AliSignal.cxx \
-AliTrack.cxx \
-AliVertex.cxx \
-Ali3VectorObj.cxx \
-Ali4VectorObj.cxx \
-AliPositionObj.cxx \
-AliEvent.cxx
+SRCS=  Ali3Vector.cxx Ali4Vector.cxx AliBoost.cxx AliCalcluster.cxx \
+       AliCalmodule.cxx AliCalorimeter.cxx AliInvmass.cxx AliJet.cxx \
+       AliMath.cxx AliPosition.cxx AliRandom.cxx AliSample.cxx AliSignal.cxx \
+       AliTrack.cxx AliVertex.cxx Ali3VectorObj.cxx Ali4VectorObj.cxx \
+       AliPositionObj.cxx AliEvent.cxx
+
+HDRS= $(SRCS:.cxx=.h)
 
-HDRS= \
-Ali3Vector.h \
-Ali4Vector.h \
-AliBoost.h \
-AliCalcluster.h \
-AliCalmodule.h \
-AliCalorimeter.h \
-AliInvmass.h \
-AliJet.h \
-AliMath.h \
-AliPosition.h \
-AliRandom.h \
-AliSample.h \
-AliSignal.h \
-AliTrack.h \
-AliVertex.h \
-Ali3VectorObj.h \
-Ali4VectorObj.h \
-AliPositionObj.h \
-AliEvent.h
 
 DHDR:=RALICELinkDef.h
index c802585..4cc9e73 100644 (file)
@@ -1,4 +1,4 @@
-SRCS   = AliRICH.cxx AliRICHv0.cxx AliRICHv1.cxx AliRICHv2.cxx\
+SRCS   =  AliRICH.cxx AliRICHv0.cxx AliRICHv1.cxx AliRICHv2.cxx\
         AliRICHDisplay.cxx AliRICHPoints.cxx AliRICHGeometry.cxx\
         AliRICHSegmentationV0.cxx AliRICHTresholdMap.cxx\
         AliRICHSegmentationV1.cxx AliRICHResponse.cxx AliRICHResponseV0.cxx \
@@ -9,15 +9,5 @@ SRCS   = AliRICH.cxx AliRICHv0.cxx AliRICHv1.cxx AliRICHv2.cxx\
         AliRICHRawCluster.cxx AliRICHRecHit1D.cxx AliRICHRecHit3D.cxx AliRICHEllipse.cxx \
         AliRICHMerger.cxx
 
-HDRS =   AliRICH.h AliRICHv0.h AliRICHv1.h AliRICHv2.h\
-        AliRICHDisplay.h AliRICHPoints.h AliRICHGeometry.h\
-        AliRICHSegmentationV0.h AliRICHTresholdMap.h\
-        AliRICHSegmentationV1.h AliRICHResponse.h AliRICHResponseV0.h \
-        AliRICHClusterFinder.h AliRICHHitMapA1.h\
-        AliRICHChamber.h AliRICHDetect.h AliRICHPatRec.h \
-         AliRICHHit.h AliRICHCerenkov.h AliRICHSDigit.h \
-        AliRICHDigit.h AliRICHTransientDigit.h \
-        AliRICHRawCluster.h AliRICHRecHit1D.h AliRICHRecHit3D.h AliRICHEllipse.h \
-        AliRICHMerger.h
-
+HDRS =  $(SRCS:.cxx=.h)
 DHDR= RICHLinkDef.h
\ No newline at end of file
index 06043da..2e3d7a5 100644 (file)
@@ -1,18 +1,7 @@
-SRCS= \
-AliSTART.cxx \
-AliSTARTv0.cxx \
-AliSTARTv1.cxx \
-AliSTARThit.cxx \
-AliSTARTdigit.cxx \
-AliSTARTvertex.cxx
+SRCS= AliSTART.cxx AliSTARTv0.cxx AliSTARTv1.cxx AliSTARThit.cxx AliSTARTdigit.cxx AliSTARTvertex.cxx
+
+HDRS= $(SRCS:.cxx=.h)
 
-HDRS= \
-AliSTART.h \
-AliSTARTv0.h \
-AliSTARTv1.h \
-AliSTARThit.h \
-AliSTARTdigit.h \
-AliSTARTvertex.h
 
 DHDR:= STARTLinkDef.h
 
index 64d0a26..073562f 100644 (file)
@@ -1,19 +1,21 @@
-SRCS          = AliDetector.cxx        AliHeader.cxx   AliMagF.cxx \
-                AliDigit.cxx   AliHit.cxx      AliPoints.cxx \
-                AliDisplay.cxx AliMC.cxx       AliRun.cxx AliGenerator.cxx \
-               AliLego.cxx     AliModule.cxx   AliDigitNew.cxx \
-               AliGeometry.cxx AliRecPoint.cxx AliSegmentation.cxx \
-               AliHitMap.cxx   AliMagFC.cxx    AliMagFCM.cxx \
-               AliMagFDM.cxx   AliLegoGenerator.cxx AliLegoGeneratorXYZ.cxx\
-                AliLegoGeneratorPhiZ.cxx AliLegoGeneratorEta.cxx \
-                AliRndm.cxx \
-               AliKalmanTrack.cxx AliCluster.cxx AliTracker.cxx\
-               AliMCQA.cxx AliPDG.cxx AliDebugVolume.cxx \
-               AliGenEventHeader.cxx AliStack.cxx AliConfig.cxx \
-               AliRunDigitizer.cxx AliDigitizer.cxx AliStream.cxx \
-               AliMergeCombi.cxx
+SRCS          =   \
+AliDetector.cxx        AliHeader.cxx   AliMagF.cxx \
+AliDigit.cxx   AliHit.cxx      AliPoints.cxx \
+AliDisplay.cxx AliMC.cxx       AliRun.cxx AliGenerator.cxx \
+AliLego.cxx    AliModule.cxx   AliDigitNew.cxx \
+AliGeometry.cxx        AliRecPoint.cxx AliSegmentation.cxx \
+AliHitMap.cxx  AliMagFC.cxx    AliMagFCM.cxx \
+AliMagFDM.cxx  AliLegoGenerator.cxx AliLegoGeneratorXYZ.cxx\
+AliLegoGeneratorPhiZ.cxx AliLegoGeneratorEta.cxx \
+AliRndm.cxx \
+AliKalmanTrack.cxx AliCluster.cxx AliTracker.cxx\
+AliMCQA.cxx AliPDG.cxx AliDebugVolume.cxx \
+AliGenEventHeader.cxx AliStack.cxx AliConfig.cxx \
+AliRunDigitizer.cxx AliDigitizer.cxx AliStream.cxx \
+AliMergeCombi.cxx
 
-HDRS:= $(SRCS:.cxx=.h)
+HDRS:= $(SRCS:.cxx=.h) 
 
 DHDR= STEERLinkDef.h
 
+EXPORT:=$(SRCS:.cxx=.h) AliConst.h AliCallf77.h AliMCProcess.h 
index 3c2f6db..ee29931 100644 (file)
@@ -1,46 +1,12 @@
-SRCS= \
-AliMAG.cxx \
-AliABSO.cxx \
-AliABSOv0.cxx \
-AliDIPO.cxx \
-AliDIPOv1.cxx \
-AliDIPOv2.cxx \
-AliFRAME.cxx \
-AliFRAMEv0.cxx \
-AliFRAMEv1.cxx \
-AliFRAMEv2.cxx \
-AliHALL.cxx \
-AliSHIL.cxx \
-AliSHILv0.cxx \
-AliSHILvF.cxx \
-AliPIPE.cxx \
-AliPIPEv0.cxx \
-AliPIPEv1.cxx \
-AliPIPEv3.cxx \
-AliBODY.cxx \
-AliALIFE.cxx
+SRCS=  AliMAG.cxx      AliABSO.cxx       AliABSOv0.cxx \
+       AliDIPO.cxx     AliDIPOv1.cxx     AliDIPOv2.cxx \
+       AliFRAME.cxx    AliFRAMEv0.cxx    AliFRAMEv1.cxx AliFRAMEv2.cxx  \
+       AliHALL.cxx     AliSHIL.cxx       AliSHILv0.cxx AliSHILvF.cxx\
+       AliPIPE.cxx     AliPIPEv0.cxx     AliPIPEv1.cxx \
+       AliPIPEv3.cxx   AliBODY.cxx       AliALIFE.cxx
 
-HDRS= \
-AliMAG.h \
-AliABSO.h \
-AliABSOv0.h \
-AliDIPO.h \
-AliDIPOv1.h \
-AliDIPOv2.h \
-AliFRAME.h \
-AliFRAMEv0.h \
-AliFRAMEv1.h \
-AliFRAMEv2.h \
-AliHALL.h \
-AliSHIL.h \
-AliSHILv0.h \
-AliSHILvF.h \
-AliPIPE.h \
-AliPIPEv0.h \
-AliPIPEv1.h \
-AliPIPEv3.h \
-AliBODY.h \
-AliALIFE.h
+
+HDRS= $(SRCS:.cxx=.h)
 
 DHDR:=STRUCTLinkDef.h
 
index 8e74bc5..8d0a5a1 100644 (file)
@@ -1,34 +1,18 @@
-SRCS:=  \
-TGeant3.cxx \
-TPaveTree.cxx \
-THIGZ.cxx \
-AliG3Medium.cxx \
-AliGeant3.cxx \
-AliG3Material.cxx \
-AliG3Volume.cxx \
-AliGUISliders.cxx \
-AliGuiGeomDialog.cxx \
-AliGuiGeomMain.cxx \
-AliGeant3GeometryGUI.cxx \
-AliNode.cxx \
-AliG3toRoot.cxx
+SRCS:=  TGeant3.cxx TPaveTree.cxx THIGZ.cxx AliG3Medium.cxx \
+                 AliGeant3.cxx AliG3Material.cxx AliG3Volume.cxx \
+                AliGUISliders.cxx AliGuiGeomDialog.cxx AliGuiGeomMain.cxx \
+                AliGeant3GeometryGUI.cxx AliNode.cxx AliG3toRoot.cxx
 
 FSRCS:=galicef.F
 
-HDRS:= \
-TGeant3.h \
-TPaveTree.h \
-THIGZ.h \
-AliG3Medium.h \
-AliGeant3.h \
-AliG3Material.h \
-AliG3Volume.h \
-AliGUISliders.h \
-AliGuiGeomDialog.h \
-AliGuiGeomMain.h \
-AliGeant3GeometryGUI.h \
-AliNode.h \
-AliG3toRoot.h
+HDRS:= $(filter-out gucode.h,$(SRCS:.cxx=.h))
+
+EHDRS:=$(ALICE_ROOT)/include/AliMC.h \
+$(ALICE_ROOT)/include/AliDecayer.h \
+$(ALICE_ROOT)/include/AliPDG.h
+
+EINCLUDE = GEANT321/geant321 GEANT321
 
 DHDR:=TGeant3LinkDef.h
 
+
index ff53429..75351fa 100644 (file)
@@ -3,3 +3,6 @@ SRCS= THBTprocessor.cxx
 HDRS= $(SRCS:.cxx=.h)
 
 DHDR= THBTprocessorLinkDef.h
+
+EXPORT:=HBTprocCOMMON.h THBTprocessor.h
+
index 876fc62..4413491 100644 (file)
@@ -3,3 +3,5 @@ SRCS= THijing.cxx
 HDRS= THijing.h
 
 DHDR:=THijingLinkDef.h
+
+EXPORT:=THijing.h
\ No newline at end of file
index 09f5835..c00fbeb 100644 (file)
@@ -1,11 +1,10 @@
-SRCS= \
-TMevSim.cxx \
-TMevSimPartTypeParams.cxx \
-TMevSimConverter.cxx
+SRCS= TMevSim.cxx TMevSimPartTypeParams.cxx TMevSimConverter.cxx
 
 HDRS= \
 TMevSim.h \
 TMevSimPartTypeParams.h \
 TMevSimConverter.h
 
-DHDR=TMevSimLinkDef.h
\ No newline at end of file
+DHDR=TMevSimLinkDef.h
+
+EXPORT:=TMevSim.h MevSimCommon.h TMevSimPartTypeParams.h TMevSimConverter.h
\ No newline at end of file
index 06afb7a..59817e8 100644 (file)
@@ -1,18 +1,5 @@
-SRCS  = \
-AliTOF.cxx  \
-AliTOFv0.cxx  \
-AliTOFv1.cxx  \
-AliTOFv2.cxx  \
-AliTOFv3.cxx  \
-AliTOFv4.cxx \
-AliTOFhit.cxx  \
-AliTOFdigit.cxx \
-AliTOFRawSector.cxx  \
-AliTOFRoc.cxx  \
-AliTOFRawDigit.cxx \
-AliTOFDigitizer.cxx \
-AliTOFSDigitizer.cxx \
-AliTOFMerger.cxx
+SRCS  = AliTOF.cxx  AliTOFv0.cxx  AliTOFv1.cxx  AliTOFv2.cxx  AliTOFv3.cxx  AliTOFv4.cxx AliTOFhit.cxx  AliTOFdigit.cxx AliTOFRawSector.cxx  AliTOFRoc.cxx  AliTOFRawDigit.cxx AliTOFDigitizer.cxx AliTOFSDigitizer.cxx AliTOFMerger.cxx
+
 
 HDRS:= $(SRCS:.cxx=.h)
 
index 0f062d2..a5293e9 100644 (file)
@@ -1,59 +1,20 @@
-SRCS:= \
-AliTPCClusterFinder.cxx \
-AliTPC.cxx\
-AliTPCv0.cxx\
-AliTPCv1.cxx\
-AliTPCv2.cxx\
-AliTPCv3.cxx\
-AliDetectorParam.cxx\
-AliTPCParam.cxx\
-AliTPCParamSR.cxx\
-AliTPCParamCR.cxx\
-AliTPCPRF2D.cxx\
-AliTPCRF1D.cxx\
-AliSimDigits.cxx\
-AliDigitsArray.cxx\
-AliTPCDigitsArray.cxx\
-AliComplexCluster.cxx\
-AliClusters.cxx\
-AliClustersArray.cxx\
-AliTPCClustersRow.cxx\
-AliTPCClustersArray.cxx\
-AliH2F.cxx\
-AliTPCcluster.cxx\
-AliTPCclusterer.cxx\
-AliTPCtrack.cxx\
-AliTPCtracker.cxx\
-AliTPCTrackHits.cxx
+SRCS:=  AliTPCClusterFinder.cxx  AliTPC.cxx  AliTPCv0.cxx    AliTPCv1.cxx      AliTPCv2.cxx  \
+       AliTPCv3.cxx AliDetectorParam.cxx AliTPCParam.cxx \
+       AliTPCParamSR.cxx AliTPCParamCR.cxx  AliTPCPRF2D.cxx \
+       AliTPCRF1D.cxx \
+       AliSimDigits.cxx AliDigitsArray.cxx  AliTPCDigitsArray.cxx \
+       AliComplexCluster.cxx AliClusters.cxx AliClustersArray.cxx \
+       AliTPCClustersRow.cxx \
+       AliTPCClustersArray.cxx AliH2F.cxx \
+        AliTPCcluster.cxx AliTPCclusterer.cxx \
+        AliTPCtrack.cxx AliTPCtracker.cxx \
+       AliTPCTrackHits.cxx\
+
+
+HDRS:= $(SRCS:.cxx=.h)
 
-HDRS:= \
-AliTPCClusterFinder.h \
-AliTPC.h\
-AliTPCv0.h\
-AliTPCv1.h\
-AliTPCv2.h\
-AliTPCv3.h\
-AliDetectorParam.h\
-AliTPCParam.h\
-AliTPCParamSR.h\
-AliTPCParamCR.h\
-AliTPCPRF2D.h\
-AliTPCRF1D.h\
-AliSimDigits.h\
-AliDigitsArray.h\
-AliTPCDigitsArray.h\
-AliComplexCluster.h\
-AliClusters.h\
-AliClustersArray.h\
-AliTPCClustersRow.h\
-AliTPCClustersArray.h\
-AliH2F.h\
-AliTPCcluster.h\
-AliTPCclusterer.h\
-AliTPCtrack.h\
-AliTPCtracker.h\
-AliTPCTrackHits.h
 
 DHDR:= TPCLinkDef.h
 
+EINCLUDE:= CONTAINERS
 
index e8da82a..e9db9fc 100644 (file)
@@ -1,41 +1,26 @@
-SRCS=\
-AliTRD.cxx \
-AliTRDv0.cxx \
-AliTRDv1.cxx \
-AliTRDhit.cxx AliTRDdigit.cxx                    \
-AliTRDpixel.cxx AliTRDmatrix.cxx                 \
-AliTRDgeometry.cxx AliTRDgeometryFull.cxx        \
-AliTRDgeometryHole.cxx AliTRDdigitizer.cxx       \
-AliTRDclusterizer.cxx AliTRDclusterizerV0.cxx    \
-AliTRDclusterizerV1.cxx AliTRDrecPoint.cxx       \
-AliTRDsegmentArray.cxx AliTRDdataArray.cxx       \
-AliTRDdataArrayI.cxx AliTRDdataArrayF.cxx        \
-AliTRDdigitsManager.cxx AliTRDsim.cxx            \
-AliTRDsegmentID.cxx AliTRDsegmentArrayBase.cxx   \
-AliTRDarrayI.cxx AliTRDarrayF.cxx                \
-AliTRDpoints.cxx AliTRDtimeBin.cxx               \
-AliTRDtrackingSector.cxx                         \
-AliTRDtrack.cxx AliTRDtracker.cxx                \
-AliTRDcluster.cxx 
+SRCS= AliTRD.cxx AliTRDv0.cxx AliTRDv1.cxx             \
+      AliTRDhit.cxx AliTRDdigit.cxx                    \
+      AliTRDpixel.cxx AliTRDmatrix.cxx                 \
+      AliTRDgeometry.cxx AliTRDgeometryFull.cxx        \
+      AliTRDgeometryHole.cxx AliTRDdigitizer.cxx       \
+      AliTRDclusterizer.cxx AliTRDclusterizerV0.cxx    \
+      AliTRDclusterizerV1.cxx AliTRDrecPoint.cxx       \
+      AliTRDsegmentArray.cxx AliTRDdataArray.cxx       \
+      AliTRDdataArrayI.cxx AliTRDdataArrayF.cxx        \
+      AliTRDdigitsManager.cxx AliTRDsim.cxx            \
+      AliTRDsegmentID.cxx AliTRDsegmentArrayBase.cxx   \
+      AliTRDarrayI.cxx AliTRDarrayF.cxx                \
+      AliTRDpoints.cxx AliTRDtimeBin.cxx               \
+      AliTRDtrackingSector.cxx                         \
+      AliTRDtrack.cxx AliTRDtracker.cxx                \
+      AliTRDcluster.cxx  
+
+
+HDRS= $(SRCS:.cxx=.h)                
+
+EHDRS   :=   $(ROOTSYS)/include/TF1.h       \
+            $(ROOTSYS)/include/TFile.h     \
+             $(ROOTSYS)/include/TObjArray.h \
 
-HDRS=\
-AliTRD.h \
-AliTRDv0.h \
-AliTRDv1.h \
-AliTRDhit.h AliTRDdigit.h                    \
-AliTRDpixel.h AliTRDmatrix.h                 \
-AliTRDgeometry.h AliTRDgeometryFull.h        \
-AliTRDgeometryHole.h AliTRDdigitizer.h       \
-AliTRDclusterizer.h AliTRDclusterizerV0.h    \
-AliTRDclusterizerV1.h AliTRDrecPoint.h       \
-AliTRDsegmentArray.h AliTRDdataArray.h       \
-AliTRDdataArrayI.h AliTRDdataArrayF.h        \
-AliTRDdigitsManager.h AliTRDsim.h            \
-AliTRDsegmentID.h AliTRDsegmentArrayBase.h   \
-AliTRDarrayI.h AliTRDarrayF.h                \
-AliTRDpoints.h AliTRDtimeBin.h               \
-AliTRDtrackingSector.h                         \
-AliTRDtrack.h AliTRDtracker.h                \
-AliTRDcluster.h
 
 DHDR= TRDLinkDef.h
\ No newline at end of file
index 58c98a3..8536b45 100644 (file)
@@ -1,13 +1,8 @@
-SRCS= AliZDC.cxx \
-AliZDCv1.cxx  \
-AliZDCv2.cxx \
-AliZDCHit.cxx \
-AliZDCDigit.cxx \
-AliGenZDC.cxx \
-AliZDCFragment.cxx \
-AliZDCMerger.cxx \
-AliZDCMergedHit.cxx
+SRCS= AliZDC.cxx AliZDCv1.cxx AliZDCv2.cxx AliZDCHit.cxx AliZDCDigit.cxx \
+      AliGenZDC.cxx AliZDCFragment.cxx AliZDCMerger.cxx AliZDCMergedHit.cxx
 
-HDRS= $(SRCS:.cxx=.h)
+HDRS= $(SRCS:.cxx=.h) 
+
+EHDRS = $(ROOTSYS)/include/TClonesArray.h
 
 DHDR:=ZDCLinkDef.h
index 961e364..935a997 100644 (file)
@@ -6,3 +6,6 @@ ROOTLIBS  += -L/usr/X11R6/lib -lX11
 # Additional flags for building aliroot executable
 EXEFLAGS = 
 
+ALILIBS              = -L$(LIBDIR) -lMUON -lTPC -lPMD -lTRD -lFMD -lTOF \
+                -lITS -lPHOS -lCASTOR -lRICH -lZDC -lSTRUCT \
+                -lTGeant3 -lSTART -lEVGEN -lSTEER -lCONTAINERS
diff --git a/build/README b/build/README
new file mode 100644 (file)
index 0000000..ec6992c
--- /dev/null
@@ -0,0 +1,162 @@
+****************************************************
+*                                                   *
+*         Flat makefile for AliRoot                 *
+*                                                   *
+*   This README describes how to use the             *
+*   Makefile.flat for AliRoot                       *
+*                                                   *
+*   Author: Jan-Erik Revsbech <revsbech@fys.ku.dk>  *
+*****************************************************
+
+** RUNNING **
+
+Use these makefile with
+
+make -f Makefile.flat
+
+
+** DESCRIPTION **
+
+As the name suggests this is a flat makefile structure for
+Aliroot. That means that there is only one makefile for aliroot and
+not as before on makefile for every package. This way the
+Makefile.flat knows about all dependencies and does not have to
+recursively go through all directories several time.
+
+Instead of having a makefile for each package, all the packages have
+one module.mk file. This file contains information about the package.
+Each package can contain several libraries
+and binaries to be made. The module.mk file is automatically created
+by a script, by using a template. The script must know about what
+files each desired library or binary consists of. This is specified
+in .pkg files. For example a module in directory STEER could make two
+libraries libSTEER and libSTEERDummy.so and one binary called
+STEERTest. In this example the directory STEER would contain three
+files: libSTEER.pkg, libSTEERDummy.pkg and binSTEERTest.pkg. These
+files will contain information about which source and header files the
+library or binary consists of and specific options. See the section package file for
+further information about what the pkg files contains.
+The libraries are put in the directory LIBPATH, set in Makefile.flat
+and binaries in BINPATH. These directories are set to
+bin/tgt_$ALICE_TARGET and lib/tgt_$ALICE_TARGET respectively.
+In this example we would produce three outoutfiles called libSTEER.so,
+libSTEERDummy.so and STEERTest. These names are created from the name
+of the .pkg files!!
+
+The module.mk files will be automatically generated by Makefile.flat
+if they do not exist. Also the build/moudle.dep contains a list of
+dependencies for the module.mk files. This means that for the above
+example the build/module.dep would contain a line like this:
+
+STEER/module.mk:   libSTEER.pkg libSTEERDummy.pkg binSTEERTest.pkg
+
+In this way if a change is made to one of the package-files (a
+source-file is added or something), the module.mk file will be re-generated.
+
+The Makefile.flat has in the start a variable called MODULES, this
+variables lists all the subdirectories to look for module.mk files.
+
+** PACKAGE FILES **
+
+The .pkg files uses make syntax, so be careful with tabs!!!
+
+As a minimum all package files must specify which source-code files and
+headers it consist of. This is done with the variables
+HDRS,SRCS,FSRCS,CSRCS which is Heades, C++ sources, Fortran sources
+and C-source-files.
+
+For example the Package libSTEERDummy.pkg could consist of 
+
+SRCS:= AliSTEERDummy.cxx
+
+FSRCS:= AliSTEERFortranRoutines.f
+
+HDRS:= AliSTEERDummy.cxx
+
+Since the pkg files use make syntax HDRS can also be specified as
+
+HDRS:=$(SRCS:.cxx=.h)
+
+which is useful if there is a lot of files.
+
+If the library (or binary) uses include files in other directories
+than its own it should be specified in the variable EHDRS (for External
+headers). By default the Makefile.flat will look in $ALICE_ROOT,
+$ALICE_ROOT/MODULE (in this case $ALICE_ROOT/STEER), $ROOTSYS/inlude
+and in $ALICE_ROOT/include. If more include directories is needed it
+can be specified with the variable EINCLUDE. *DO NOT* put the -I flag
+it will be put automatically, just write the name of the directory.
+
+If the package exports any header files fo use by other libraries it can be put
+in the variable EXPORT. These files will be copied to  
+$ALICE_ROOT/include and can be used by other libraries without directly
+including this module.
+
+If a root dictionary file is used it can be specified with
+
+DHDR:= STEERLinkdef.h
+
+This will be processed with rootcint with all the header-files
+(specified in HDRS), and default cint includedir (set in CINTFLAGS)
+plus the directories specified in EINCLUDE
+
+By default all libraries are linked against libraries specified in
+SHLIB and binaries against LIBS. If desired extra libraries can be
+specified with the ELIBS variable. *DO NOT* specify the -l flag, just
+write the library like
+
+ELIBS:= CONTAINERS
+
+this will be translated into -lCONTAINERS
+
+Extra library directories can be specified with ELIBSDIR
+
+If very special compilation flags is needed it can be specified with
+the three variables:
+
+PACKFFLAGS:=
+PACKCXXFLAGS:=
+PACKCFLAGS:=
+
+*WARNING* if these flags are set, the default FFLAGS,CXXFLAGS and CFLAGS
+ will be overwritten. Normally they  will be used like this:
+
+PACKCXXFLAGS:= $(filter-out -O%,CXXFLAGS) 
+
+This will set the C++ compiler-flags to the default ones, but without
+optimisation.
+
+** LIST OF Variables in .pkg files **
+
+SRCS:=
+HDRS:=
+FSRCS:=
+DHDR:=
+CSRCS:=
+CHDRS:=
+EINCLUDE:=
+ELIBS:=
+ELIBSDIR:=
+PACKFFLAGS:=
+PACKCXXFLAGS:=
+PACKCFLAGS:=
+EXPORT:=
+EHDRS:=
+
+
+** ADDING NEW DIRECTORIES **
+
+When adding a new direcotry you must make a new .pkg file. If your
+library is going to be libEXAMPLE.so then make a new file called
+libEXAMPLE.pkg in the new direcotry. Now you need to add this
+direcotry to the Makefile.flat. Add it to the MODULES variable.
+A last step is to edit the build/module.dep file. Add a line like
+this:
+
+NEWDIR/module.mk: libEXAMPLE.pkg
+
+Please let the module.mk file depend on all .pkg files in the new
+directory. If you want aliroot to be linked against it, then edit
+ALIROOT/binaliroot.pkg and add you new lirbrary to the ELIBS variable.
+
+
index ba49911..f5c9c48 100644 (file)
@@ -24,3 +24,6 @@ ELIBSDIR:=
 PACKFFLAGS:=
 PACKCXXFLAGS:=
 PACKCFLAGS:=
+EXPORT:=
+EHDRS:=
+CINTHDRS:=
\ No newline at end of file
index a4bf0a3..4f66ebe 100644 (file)
@@ -30,3 +30,5 @@ TPC/module.mk:                TPC/libTPC.pkg
 TRD/module.mk:         TRD/libTRD.pkg
 ZDC/module.mk:         ZDC/libZDC.pkg
 LHC/module.mk:         LHC/libLHC.pkg
+THbtp/module.mk:       THbtp/libTHbtp.pkg
+HBTP/module.mk:                HBTP/libHBTP.pkg 
index 5aebb6b..fb44332 100644 (file)
@@ -1,4 +1,5 @@
 
+
 ifndef PACKFFLAGS
 @PACKAGE@FFLAGS:=$(FFLAGS)
 else
@@ -24,8 +25,16 @@ else
 WITHDICT=
 endif
 
+# Headerfiles exported to common place:
+@PACKAGE@EXPORT:=$(EXPORT)
+@PACKAGE@EXPORTDEST:=$(patsubst %,$(EXPORTDIR)/%,$(EXPORT))
+
+
 #Extra include,libs etc.
-@PACKAGE@INC:=$(patsubst %,-I$(MODDIR)/%,$(EINCLUDE))
+#@PACKAGE@INC:=$(patsubst %,-I@MODULE@/%,$(EINCLUDE)) -I@MODULE@
+
+@PACKAGE@INC:=$(patsubst %,-I%,$(EINCLUDE)) -I@MODULE@
+
 @PACKAGE@ELIBS:=$(patsubst %,-l%,$(ELIBS))
 @PACKAGE@ELIBSDIR:=$(patsubst %,-L%,$(ELIBSDIR))
 
@@ -39,8 +48,19 @@ endif
 
 #c++ sources and header
 @PACKAGE@S:=$(patsubst %,$(MODDIR)/%,$(SRCS))
-@PACKAGE@H:=$(patsubst %,$(MODDIR)/%,$(HDRS))
+@PACKAGE@H:=$(patsubst %,$(MODDIR)/%,$(HDRS)) $(EHDRS)
+
+#############################################################################
+#
+#            If special rootcint headerfiles is specified use them
+#                         else use all headers
 
+ifndef CINTHDRS
+@PACKAGE@CINTHDRS:=$(@PACKAGE@H) 
+else
+@PACKAGE@CINTHDRS:=$(CINTHDRS)
+endif
+#############################################################################
 
 # Package Dictionary 
 
@@ -75,7 +95,7 @@ endif
 @PACKAGE@BIN:=$(BINPATH)/@PACKAGE@
 
 
-# for using in the main Makefile
+# Use in the main Makefile
 
 ifeq ($(TYPE),lib)
 ALLLIBS += $(@PACKAGE@LIB)
@@ -87,25 +107,35 @@ endif
 # include all dependency files
 INCLUDEFILES +=$(@PACKAGE@DEP)
 
+EXPORTFILES += $(@PACKAGE@EXPORTDEST)
 
 #local rules
 
+#The exportfiles only include if any!!
+
+ifdef @PACKAGE@EXPORT
+$(@PACKAGE@EXPORTDEST): $(patsubst %,@MODULE@/%,$(@PACKAGE@EXPORT))
+         @echo "***** Copying file @MODULE@/$(notdir $@) to $@ WRONG !!!*****"
+         @[ -d $(dir $@) ] || mkdir $(dir $@)
+         cp @MODULE@/$(notdir $@) $@   
+endif
+
 $(@PACKAGE@LIB):$(@PACKAGE@O) $(@PACKAGE@DO) @MODULE@/module.mk
          @echo "***** Linking library $@ *****"
          $(SHLD) $(SOFLAGS) $(@PACKAGE@ELIBSDIR) $(@PACKAGE@ELIBS) $(SHLIB)  -o $@ $(@PACKAGE@O) $(@PACKAGE@DO)
-         
 $(@PACKAGE@BIN):$(@PACKAGE@O) $(@PACKAGE@DO) @MODULE@/module.mk
          @echo "***** Makeing executable $@ *****"
-         $(LD) $(LDFLAGS) $(@PACKAGE@O) $(@PACKAGE@DO) $(BINLIBDIRS)  $(LIBS) $(@PACKAGE@ELIBS) $(EXEFLAGS) -o $@ 
+         $(LD) $(LDFLAGS) $(@PACKAGE@O) $(@PACKAGE@DO) $(BINLIBDIRS) $(LIBS) $(@PACKAGE@ELIBS) $(EXEFLAGS) -o $@ 
 
-$(@PACKAGE@DS): $(@PACKAGE@H) $(@PACKAGE@DH)
+$(@PACKAGE@DS): $(@PACKAGE@CINTHDRS) $(@PACKAGE@DH)
         @echo "***** Creating $@ *****";       
         @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-        @rootcint -f $@ -c $(CINTFLAGS) $^
+        rootcint -f $@ -c $(CINTFLAGS) $(@PACKAGE@INC) $^
 
 $(@PACKAGE@DO): $(@PACKAGE@DS)
                @echo "***** (Re)compiling $< *****";
-               @$(CXX) -c $< -o $@ $(CXXFLAGS)
+               $(CXX) -c $(@PACKAGE@INC)  $< -o $@ $(@PACKAGE@CXXFLAGS)
 
 #Different targets for the module
 
@@ -118,7 +148,7 @@ depend-@PACKAGE@: $(@PACKAGE@DEP)
 $(MODDIRO)/%.o: $(MODDIR)/%.cxx $(MODDIRO)/%.d 
        @echo "***** (Re)compiling $< *****";
        @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-       $(CXX) -c $(@PACKAGE@INC) $< -o $@ $(@PACKAGE@CXXFLAGS)
+       $(CXX) -c $(@PACKAGE@INC)   $< -o $@ $(@PACKAGE@CXXFLAGS)
 
 $(MODDIRO)/%.o: $(MODDIR)/%.F $(MODDIRO)/%.d 
        @echo "***** (Re)compiling $< *****";
@@ -133,29 +163,29 @@ $(MODDIRO)/%.o: $(MODDIR)/%.f $(MODDIRO)/%.d
 $(MODDIRO)/%.o: $(MODDIR)/%.c $(MODDIRO)/%.d 
        @echo "***** (Re)compiling $< *****";
        @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-       $(CC) -c $< -o $@ $(@PACKAGE@INC)  $(@PACKAGE@CFLAGS)
+       $(CC) -c  $(@PACKAGE@INC)  $< -o $@   $(@PACKAGE@CFLAGS)
 
 $(@PACKAGE@DDEP): $(@PACKAGE@DS)
                @echo "***** Making dependencies for $< *****";
                @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
                @share/alibtool depend "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
 
-$(MODDIRO)/%.d: $(MODDIRS)/%.cxx
+$(MODDIRO)/%.d: $(MODDIRS)/%.cxx $(EXPORTFILES)
                @echo "***** Making dependencies for $< *****";
                @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-               @share/alibtool depend "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
-$(MODDIRO)/%.d: $(MODDIRS)/%.f
+               share/alibtool depend "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
+$(MODDIRO)/%.d: $(MODDIRS)/%.f $(EXPORTFILES)
                @echo "***** Making dependencies for $< *****";
                @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-               @share/alibtool dependF "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
-$(MODDIRO)/%.d: $(MODDIRS)/%.F 
+               share/alibtool dependF "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
+$(MODDIRO)/%.d: $(MODDIRS)/%.F  $(EXPORTFILES)
                @echo "***** Making dependencies for $< *****";
                @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-               @share/alibtool dependF "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
-$(MODDIRO)/%.d: $(MODDIRS)/%.c 
+               share/alibtool dependF "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC)  $<" > $@
+$(MODDIRO)/%.d: $(MODDIRS)/%.c $(EXPORTFILES)
                @echo "***** Making dependencies for $< *****";
                @(if [ ! -d '$(dir $@)' ]; then echo "***** Making directory $(dir $@) *****"; mkdir -p $(dir $@); fi;)
-               @share/alibtool depend "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC) $<" > $@
+               share/alibtool depend "$(@PACKAGE@ELIBSDIR) $(@PACKAGE@INC) $(DEPINC) $<" > $@
 
 
 #Directory creation