SMELL_DETECTOR_DIR=$(IRST_INSTALLDIR)/smell-detector
+#-------------------------------------------------------------------------------
+# The compilers
+CXX := $(shell root-config --cxx)
+F77 := $(shell root-config --f77)
+CC := $(shell root-config --cc)
+
+CXXWARN =
#-------------------------------------------------------------------------------
# Include machine dependent macros
#-------------------------------------------------------------------------------
# Check if DATE is installed
-ifneq ($(shell date-config 2>&1 | grep -i usage),)
-DATEFLAGS = -DALI_DATE $(shell date-config --cflags | tr \" \')
-CXXFLAGS += $(DATEFLAGS)
-CFLAGS += $(DATEFLAGS)
-CINTFLAGS += $(DATEFLAGS)
-DEPINC += $(DATEFLAGS)
-else
-DATEFLAGS = -D`uname` -DDATE_SYS=`uname` -Dlong32='int' \
+ifeq ($(shell which date-config 2>/dev/null),)
+DATEFLAGS := -D$(shell uname) -DDATE_SYS=$(shell uname) -Dlong32='int' \
-Dlong64='long long' -DdatePointer='long'
+DMONLIBS :=
+else
+DATEFLAGS := -DALI_DATE $(shell date-config --cflags | tr \" \')
+DMONLIBS := $(shell date-config --monitorlibs)
+endif
CXXFLAGS += $(DATEFLAGS)
CFLAGS += $(DATEFLAGS)
CINTFLAGS += $(DATEFLAGS)
DEPINC += $(DATEFLAGS)
-endif
+#-------------------------------------------------------------------------------
+# Add warning flags if any
+
+ifneq ($(ALICXXWARN),no)
+CXXFLAGS += $(CXXWARN)
+endif
#-------------------------------------------------------------------------------
# ROOT Stuff
-lMLP \
-lSpectrum \
-L$(ROOTPLUGDIR)
+CHECKALIEN := $(shell root-config --has-alien)
+CHECKXML := $(shell root-config --has-xml)
#-------------------------------------------------------------------------------
# Location where to install libraries and binaries and common header files
ALIROOTMODULES := STEER PHOS TRD TPC ZDC MUON PMD FMD TOF ITS \
ACORDE HMPID T0 BCM STRUCT EVGEN RALICE VZERO \
- THijing THbtp EMCAL HBTAN \
+ THijing THbtp EMCAL \
THerwig TEPEMGEN FASTSIM TPHIC RAW MONITOR ANALYSIS \
JETAN HLT LHC ESDCheck STAT TTherminator CORRFW DPMJET TDPMjet \
- PWG0 PWG1 PWG2 PWG3 PWG4
+ PWG0 PWG1 PWG2 PWG3 PWG4 TRIGGER
+
+# Additional generators
+ALIROOTMODULES += TUHKMgen
+ALIROOTMODULES += EPOS
ifneq ($(shell $(ROOTCONFIG) --has-pythia8), no)
ALIROOTMODULES += PYTHIA8
ALIROOTMODULES += SHUTTLE
endif
-ifeq ($(findstring Flugg,$(MAKECMDGOALS)),Flugg)
-ALIROOTMODULES += Flugg
-endif
-
CERNMODULES := LHAPDF HIJING MICROCERN HERWIG
ifneq ($(wildcard $(ROOTINCDIR)/TPythia6.h),)
CERNMODULES += PYTHIA6
# Default include dirs for C++, Fortran, Cint, and dependencies
# The module directory will be added by each module
-GENINC := -I$(ALICE_ROOT)/include -I$(shell root-config --incdir)
-CXXFLAGS += $(GENINC)
-CXXFLAGSNO += $(GENINC)
-CINTFLAGS += $(GENINC)
+GENINC := -I$(ALICE_ROOT)/include -isystem$(shell root-config --incdir)
+RCFLAGS := $(shell root-config --auxcflags)
+RLFLAGS := $(shell root-config --ldflags)
+CXXFLAGS += $(GENINC) $(RCFLAGS)
+CXXFLAGSNO += $(GENINC) $(RCFLAGS) -Wno-write-strings
+CFLAGS += $(GENINC) $(RCFLAGS)
+CINTFLAGS += $(GENINC) $(RCFLAGS)
+FFLAGS += $(RCFLAGS)
+LDFLAGS += $(RLFLAGS)
+SOFLAGS += $(RLFLAGS)
DEPINC += $(GENINC)
#-------------------------------------------------------------------------------
ALILIBS := -L$(LIBDIR) -lMUON -lTPC -lPMD -lTRD -lFMD -lTOF \
-lITS -lPHOS -lACORDE -lHMPID -lVZERO -lZDC -lSTRUCT \
- -lT0 -lEVGEN -lSTEER
+ -lT0 -lEVGEN -lSTEER -lTRIGGER
LIBS := $(ROOTCLIBS) $(ROOTPLIBS) $(SYSLIBS)
ARVERSIONFILE := $(EXPORTDIR)/ARVersion.h
-SVNREV := $(strip $(shell svn info | grep "Last Changed Rev:" | \
+SVNREV := $(strip $(shell LANG=C LANGUAGE=C svn info | grep "Last Changed Rev:" | \
cut -d: -f2 ))
-SVNBRANCH := w$(subst //alisoft.cern.ch/AliRoot/,,\
- $(shell svn info | grep "URL:" | cut -d: -f3 ))
+SVNBRANCH := $(subst //alisoft.cern.ch/AliRoot/,,$(shell svn info | grep "URL:" | cut -d: -f3 ))
#-------------------------------------------------------------------------------
# default target
default: $(ARVERSIONFILE)
$(MUTE)$(MAKE) aliroot
-FORCE:
-
#-------------------------------------------------------------------------------
# Write header file with aliroot svn version and url
-$(ARVERSIONFILE): FORCE $(EXPORTDIR)
+$(ARVERSIONFILE): $(ALICE_ROOT)/.svn/entries $(EXPORTDIR)
$(MUTE)rm -f $(ARVERSIONFILE)
@echo "***** Making $(ARVERSIONFILE) *****"
@echo "#ifndef ALIROOT_ARVersion" >> $@
(tar cfzh $@ ALIRECO 2> /dev/null && echo "Package archive" $@ "created in" $(PWD)/$@) || (tar cfzh /tmp/$@ ALIRECO 2> /dev/null && echo "Package archive" $@ "created in /tmp/"$@)
$(MUTE)rm -rf ALIRECO
-ROOTALIBDIR=$(shell root-config --libdir)
+ROOTALIBDIR:=$(shell root-config --libdir)
ALIMDCSPECFILE=$(RAWDIRO)/alimdc.spec
ALIMDCVERSION=$(subst -,.,$(notdir $(subst /RAW/mdc.h,,$(shell svn info RAW/mdc.h | grep "URL:" | cut -d: -f3 ))))
$(LIBPATH)/libAliMDC.a \
$(ROOTALIBDIR)/libRoot.a \
$(ROOTALIBDIR)/libfreetype.a $(ROOTALIBDIR)/libpcre.a \
- -pthread -ldl
+ -pthread -ldl -lcurses
alilibs-static: $(LIBPATH) modules $(ALLALIBS)