include $(ALICE_ROOT)/conf/GeneralDef
include $(ALICE_ROOT)/conf/MachineDef.$(ALICE_TARGET)
-MAKEFLAGS =
+MAKEFLAGS += -s
##### MACROS #####
PACKAGE = Main
+DOTS = " ................................................................................"
+
+PRETTY = $(AWK) '{print $$0 substr($(DOTS),1,79-length($$0))}'
+
##### Module libraries #####
-ALIROOT_DIRS = STEER TGeant3 TRD PHOS TPC ZDC MUON PMD FMD TOF ITS CASTOR \
- RICH STRUCT EVGEN
+ALIROOT_DIRS = STEER TGeant3 TRD PHOS TPC ZDC MUON PMD FMD TOF ITS \
+ CASTOR RICH START STRUCT EVGEN RALICE ALIFAST \
+ THijing CONTAINERS MEVSIM TMEVSIM THbtp HBTP EMCAL HBTAN
##### TARGETS #####
@mkdir $@
alilibs: lib
+ echo MAKEFLAGS = $(MAKEFLAGS)
+ for i in $(ALIROOT_DIRS) ; do \
+ echo "Making headers in $$i" | $(PRETTY); \
+ ${MAKE} -C $$i headers ; \
+ done
@for i in $(ALIROOT_DIRS) ; do \
+ echo "Making dependencies in $$i" | $(PRETTY); \
${MAKE} -C $$i depend ; \
done
@for i in $(ALIROOT_DIRS) ; do \
+ echo "Making in $$i" | $(PRETTY); \
${MAKE} -C $$i ; \
done
-aliroot: bin
- @${MAKE} -C ALIROOT
+aliroot geant321 minicern pdf pythia6 hijing: FORCE
+ @DIR=`echo $@ | $(AWK) '{print toupper($$0)}'` ; \
+ echo "Making dependencies in $$DIR" | $(PRETTY); \
+ ${MAKE} -C $$DIR depend;\
+ echo "Making in $$DIR" | $(PRETTY); \
+ ${MAKE} -C $$DIR
-geant321: lib
- @-${MAKE} -C GEANT321 depend
- @${MAKE} -C GEANT321
+TGeant4 AliGeant4 AliFluka : FORCE
+ @DIR=$@; \
+ echo "Making dependencies in $$DIR" | $(PRETTY); \
+ ${MAKE} -C $$DIR depend;\
+ echo "Making in $$DIR" | $(PRETTY); \
+ ${MAKE} -C $$DIR
-pythia: lib
- @-${MAKE} -C PYTHIA depend
- @${MAKE} -C PYTHIA
+cernlibs: geant321 pythia6 minicern pdf hijing
-pdf: lib
- @-${MAKE} -C PDF depend
- @${MAKE} -C PDF
+geant4: TGeant4 AliGeant4
-minicern: lib
- @-${MAKE} -C MINICERN depend
- @${MAKE} -C MINICERN
+Flugg: FORCE
+ @DIR=$@; \
+ echo "Making in $$DIR" | $(PRETTY); \
+ ${MAKE} -C $$DIR/source
-cernlibs: geant321 pythia minicern pdf
+fluka: Flugg TGeant4 AliGeant4 AliFluka
-all: default cernlibs
+all: cernlibs default
FORCE:
############################### General Macros ################################
-include $(ALICE_ROOT)/conf/GeneralMacros
+# include $(ALICE_ROOT)/conf/GeneralMacros
############################### Specific Macros ###############################
STRUCT_DIRS = html conf macros data share include Euclid picts \
- Makefile README .rootrc
+ doc etc Makefile .rootrc
-LIBRARY_DIRS = MINICERN GEANT321 PYTHIA PDF
+LIBRARY_DIRS = MINICERN GEANT321 PYTHIA6 PDF HIJING
-dist: AliRoot3.01.tar.gz
+dist: AliRoot$(VERSION).tar.gz
-AliRoot3.01.tar.gz: $(STRUCT_DIRS) $(ALIROOT_DIRS) ALIROOT
+AliRoot$(VERSION).tar.gz: $(STRUCT_DIRS) $(ALIROOT_DIRS) ALIROOT
-distall: AliOffline3.01.tar.gz
+distall: AliOffline$(VERSION).tar.gz
-AliOffline3.01.tar.gz: $(STRUCT_DIRS) $(ALIROOT_DIRS) $(LIBRARY_DIRS) ALIROOT
+AliOffline$(VERSION).tar.gz: $(STRUCT_DIRS) $(ALIROOT_DIRS) $(LIBRARY_DIRS) ALIROOT
-distlib: AliLib3.10.tar.gz
+distlib: AliLibs$(VERSION).tar.gz
-AliLib3.01.tar.gz: $(LIBRARY_DIRS)
+AliLibs$(VERSION).tar.gz: $(LIBRARY_DIRS)
-AliRoot3.01.tar.gz AliLibs3.01.tar.gz AliOffline3.01.tar.gz:
+AliRoot$(VERSION).tar.gz AliLibs$(VERSION).tar.gz AliOffline$(VERSION).tar.gz:
@rm -f $(ALICE)/$@
@rm -f `find . -name '*~' -print` \
`find . -name '*.bak' -print` \
`find . -name '.*~' -print` \
- `find . -name '*\#*' -print
+ `find . -name '*\#*' -print`
@rm -f /tmp/saves
@ls -1d $^ | sed -e "s/^/$(ALICE_LEVEL)\//" > /tmp/saves
@cd $(ALICE) ; \
gtar cvfz $@ --exclude '*.o' --exclude '*Cint.*' \
- --exclude '*/roothtml/*' --exclude '*/CVS' `cat /tmp/saves`
-
-alidepend:
- @for i in $(ALIROOT_DIRS) ; do \
- ${MAKE} -C $$i depend ; \
- done
+ --exclude 'roothtml' --exclude 'CVS' \
+ --exclude Make-depend --exclude '*html/gif' \
+ --exclude "*tgt_*" --exclude check \
+ `cat /tmp/saves`
htmldocnew: FORCE
@for i in $(ALIROOT_DIRS) ; do \
htmldoc: FORCE
@rm -rf html/roothtml
+ @rm -f html/picts
@rm -f /tmp/macros
@cd html ;\
aliroot -q -b "mkhtml.C(0,1)" ;\
aliroot -b -q "mkhtml.C(\"$$i\")" > /dev/null ;\
done ;\
./makeExampleList ;
- @ln -s ../../picts html/roothtml/gif
- @ln -s ../../../picts html/roothtml/src/gif
- @ln -s ../../../picts html/roothtml/examples/gif
+ @ln -s ../picts html/picts
+ @ln -s ../../picts html/roothtml/picts
+ @ln -s ../../../picts html/roothtml/src/picts
+ @ln -s ../../../picts html/roothtml/examples/picts
clean: FORCE
@rm -f *~ \#*
- @for i in $(ALIROOT_DIRS) ; do \
+ @rm -f include/*
+ @for i in $(ALIROOT_DIRS) ALIROOT; do \
${MAKE} -C $$i macroclean ; \
done
+ ifdef G4INSTALL
+ @for i in TGeant4 AliGeant4; do \
+ ${MAKE} -C $$i macroclean ; \
+ done
+ endif
libclean: FORCE
@rm -f *~ \#*
done
allclean: libclean clean
+
+# IRST coding rule check
+CHECK_DIRS = $(ALIROOT_DIRS) ALIROOT TGeant4 AliGeant4
+check:
+ @for i in $(CHECK_DIRS) ; do \
+ echo "Checking $$i" ; \
+ ${MAKE} -C $$i check ; \
+ done
+
+REVENG_DIRS = $(ALIROOT_DIRS)
+
+reveng:
+ @for i in $(REVENG_DIRS) ; do \
+ echo "Reverse engineering $$i" ; \
+ ${MAKE} -C $$i reveng ; \
+ done
+
+
+
+
+
+
+
+