-##### 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 START STRUCT EVGEN RALICE ALIFAST THijing CONTAINERS
-
-##### TARGETS #####
-
-default: lib bin alilibs aliroot
-
-lib bin:
- @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 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
-
-TGeant4 AliGeant4: FORCE
- @DIR=$@; \
- echo "Making dependencies in $$DIR" | $(PRETTY); \
- ${MAKE} -C $$DIR depend;\
- echo "Making in $$DIR" | $(PRETTY); \
- ${MAKE} -C $$DIR
-
-cernlibs: geant321 pythia6 minicern pdf hijing
-
-geant4: TGeant4 AliGeant4
-
-all: cernlibs default
-
-FORCE:
+# IRST coding rule check
+IRST_INSTALLDIR=$(ALICE)/local/IRST
+IRST_CONFIG_DIR=$(IRST_INSTALLDIR)/userConfig/ALICE
+CLASSPATH=$(IRST_INSTALLDIR)
+export CLASSPATH IRST_INSTALLDIR IRST_CONFIG_DIR
+CODE_CHECK=java rules.ALICE.ALICERuleChecker
+REV_ENG=$(IRST_INSTALLDIR)/scripts/revEng.sh
+
+
+include build/Makefile.config
+##################################################################
+#
+# Where to install libraries and binaries
+# and common header files
+
+LIBPATH=lib/tgt_$(ALICE_TARGET)
+BINPATH=bin/tgt_$(ALICE_TARGET)
+EXPORTDIR = $(ALICE_ROOT)/include
+##################################################################
+
+##################################################################
+# include machine dependent macros
+
+-include build/Makefile.$(ALICE_TARGET)
+##################################################################
+
+##################################################################
+#
+# 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))
+SOFLAGS := -g $(filter-out -O%,$(SOFLAGS))
+LDFLAGS := -g $(filter-out -O%,$(LDFLAGS))
+endif
+##################################################################
+
+##################################################################
+#
+# Check if called with profile
+
+ifeq ($(ALIPROFILE),YES)
+override ALICE_TARGET:=$(ALICE_TARGET)PROF
+FFLAGS += -pg
+CXXFLAGS += -pg
+CFLAGS += -pg
+SOFLAGS += -pg
+LDFLAGS += -pg
+endif
+##################################################################
+
+##################################################################
+#
+# Check if HLT code is there
+
+ifeq ($(ALIHLT_USEPACKAGE),ALIROOT)
+HLTFLAGS = -DALI_HLT -Duse_aliroot -Duse_root
+ifeq ($(ALIHLT_DOMC),true)
+HLTFLAGS += -Ddo_mc
+endif
+HLTFLAGS += -I$(ALIHLT_TOPDIR)/src -I$(ALIHLT_TOPDIR)/hough -I$(ALIHLT_TOPDIR)/misc -I$(ALIHLT_TOPDIR)/comp
+CXXFLAGS += $(HLTFLAGS)
+CFLAGS += $(HLTFLAGS)
+CINTFLAGS += $(HLTFLAGS)
+DEPINC += $(HLTFLAGS)
+endif
+##################################################################
+
+##################################################################
+#
+# check if DATE is installed
+
+ifdef DATE_ROOT
+DATEFLAGS = -DALI_DATE -D${DATE_SYS} -DDATE_SYS=${DATE_SYS} -Dlong32=${DATE_LONG32} -Dlong64=${DATE_LONG64} -DdatePointer=${DATE_POINTER}
+CXXFLAGS += $(DATEFLAGS)
+CFLAGS += $(DATEFLAGS)
+CINTFLAGS += $(DATEFLAGS)
+DEPINC += $(DATEFLAGS)
+endif
+##################################################################
+
+##################################################################
+#
+# Modules to build
+
+# Uncomment to show some output
+#$(warning MAKECMDGOALS=$(MAKECMDGOALS))
+
+ALIROOTMODULES:= STEER PHOS TRD TPC ZDC MUON PMD FMD TOF ITS \
+ CRT RICH START STRUCT EVGEN RALICE ALIFAST VZERO \
+ THijing CONTAINERS MEVSIM TMEVSIM THbtp HBTP EMCAL HBTAN \
+ THerwig TEPEMGEN EPEMGEN FASTSIM TPHIC RAW MONITOR DISPLAY ANALYSIS
+
+CERNMODULES:= PDF PYTHIA6 HIJING MICROCERN HERWIG
+
+MODULES:=$(ALIROOTMODULES) $(CERNMODULES)
+
+ifeq ($(findstring TFluka,$(MAKECMDGOALS)),TFluka)
+MODULES += TFluka
+endif
+
+ifeq ($(findstring Flugg,$(MAKECMDGOALS)),Flugg)
+MODULES += Flugg
+endif
+
+##################################################################
+
+MODULES += ALIROOT
+
+MODDIRS := $(MODULES)
+
+#############################################################
+#
+# Default include dirs for
+# C++, Fortran, Cint, and dependencies
+# The module directory will be added by each module
+#
+
+CXXFLAGS += -I$(ALICE_ROOT)/include
+CXXFLAGS += $(patsubst %,-I%,$(ROOTSYS)/include)
+
+CINTFLAGS += -I$(ALICE_ROOT)/include
+CINTFLAGS += $(patsubst %,-I%,$(ROOTSYS)/include)
+
+DEPINC += -I$(ALICE_ROOT)/include
+DEPINC += $(patsubst %,-I%,$(ROOTSYS)/include)
+#############################################################
+
+
+#############################################################
+#
+# Libraries to link binaries against
+# Libraries will be linked againstSHLIB
+LIBS := $(GLIBS) $(ROOTLIBS) $(SYSLIBS)
+#############################################################