summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
dd98d07)
ALICE_TAGET to the compiler, so the same platforms (OS's) can have different,
incompatible, compilers (linux g++, linux icc, etc). The PLATFORM is set
in the Makefile.$(ALICE_TARGET) files.
13 files changed:
##### include general path/location macros #####
##### include general path/location macros #####
-ifeq ($(PLATFORM),)
-PLATFORM = $(shell root-config --arch)
-endif
-ALICE_TARGET = $(PLATFORM)
-
-override ALICE_ROOT=$(shell pwd)
+override ALICE_TARGET := $(shell root-config --arch)
+override ALICE_ROOT := $(shell pwd)
include build/Makefile.config
include build/Makefile.config
-##################################################################
-#
-# Where to install libraries and binaries
+##################################################################
+#
+# Where to install libraries and binaries
# and common header files
LIBPATH = lib/tgt_$(ALICE_TARGET)
# and common header files
LIBPATH = lib/tgt_$(ALICE_TARGET)
##################################################################
##################################################################
##################################################################
##################################################################
-# include machine dependent macros
+# include machine dependent macros
-include build/Makefile.$(ALICE_TARGET)
##################################################################
##################################################################
-include build/Makefile.$(ALICE_TARGET)
##################################################################
##################################################################
# Check if called with debug
ifeq ($(ALIDEBUG),YES)
# Check if called with debug
ifeq ($(ALIDEBUG),YES)
-override ALICE_TARGET:=$(ALICE_TARGET)DEBUG
-FFLAGS := -g $(filter-out -O%,$(FFLAGS))
+override ALICE_TARGET := $(ALICE_TARGET)DEBUG
+FFLAGS := -g $(filter-out -O%,$(FFLAGS))
CXXFLAGS := -g $(filter-out -O%,$(CXXLAGS))
CXXFLAGS := -g $(filter-out -O%,$(CXXLAGS))
-CFLAGS := -g $(filter-out -O%,$(CLAGS))
-SOFLAGS := -g $(filter-out -O%,$(SOFLAGS))
-LDFLAGS := -g $(filter-out -O%,$(LDFLAGS))
+CFLAGS := -g $(filter-out -O%,$(CLAGS))
+SOFLAGS := -g $(filter-out -O%,$(SOFLAGS))
+LDFLAGS := -g $(filter-out -O%,$(LDFLAGS))
endif
##################################################################
##################################################################
endif
##################################################################
##################################################################
# Check if called with profile
ifeq ($(ALIPROFILE),YES)
# Check if called with profile
ifeq ($(ALIPROFILE),YES)
-override ALICE_TARGET:=$(ALICE_TARGET)PROF
-FFLAGS += -pg
+override ALICE_TARGET := $(ALICE_TARGET)PROF
+FFLAGS += -pg
-CFLAGS += -pg
-SOFLAGS += -pg
-LDFLAGS += -pg
+CFLAGS += -pg
+SOFLAGS += -pg
+LDFLAGS += -pg
endif
##################################################################
##################################################################
endif
##################################################################
##################################################################
# check if DATE is installed
ifdef DATE_ROOT
# 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)
+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)
CINTFLAGS += $(DATEFLAGS)
endif
##################################################################
##################################################################
#
endif
##################################################################
##################################################################
#
# Uncomment to show some output
#$(warning MAKECMDGOALS=$(MAKECMDGOALS))
# Uncomment to show some output
#$(warning MAKECMDGOALS=$(MAKECMDGOALS))
-ALIROOTMODULES:= STEER PHOS TRD TPC ZDC MUON PMD FMD TOF ITS \
+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 \
JETAN HLT
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 \
JETAN HLT
-CERNMODULES:= PDF PYTHIA6 HIJING MICROCERN HERWIG
+CERNMODULES := PDF PYTHIA6 HIJING MICROCERN HERWIG
-MODULES:=$(ALIROOTMODULES) $(CERNMODULES)
+MODULES := $(ALIROOTMODULES) $(CERNMODULES)
ifeq ($(findstring TFluka,$(MAKECMDGOALS)),TFluka)
MODULES += TFluka
ifeq ($(findstring TFluka,$(MAKECMDGOALS)),TFluka)
MODULES += TFluka
##################################################################
##################################################################
MODDIRS := $(MODULES)
#############################################################
MODDIRS := $(MODULES)
#############################################################
-#
-# Default include dirs for
-# C++, Fortran, Cint, and dependencies
+#
+# Default include dirs for
+# C++, Fortran, Cint, and dependencies
# The module directory will be added by each module
#
# The module directory will be added by each module
#
ALLLIBS :=
ALLEXECS :=
INCLUDEFILES :=
ALLLIBS :=
ALLEXECS :=
INCLUDEFILES :=
-BINLIBS :=
-EXPORTFILES :=
+BINLIBS :=
+EXPORTFILES :=
#############################################################
BINLIBDIRS := -L$(ALICE_ROOT)/$(LIBPATH)
#############################################################
BINLIBDIRS := -L$(ALICE_ROOT)/$(LIBPATH)
include build/module.dep
#############################################################
include build/module.dep
#############################################################
# Check if module.mk is present for the library
%.mk: build/module.tpl
ifndef ALIQUIET
# Check if module.mk is present for the library
%.mk: build/module.tpl
ifndef ALIQUIET
# **************************************************************************
#
# **************************************************************************
#
-# If cleaning, do not include
+# If cleaning, do not include
# dependencies or module.mk files.
ifeq ($(findstring $(MAKECMDGOALS), clean distclean clean-all clean-dicts clean-modules clean-depend clean-objects clean-libs clean-bins),)
# dependencies or module.mk files.
ifeq ($(findstring $(MAKECMDGOALS), clean distclean clean-all clean-dicts clean-modules clean-depend clean-objects clean-libs clean-bins),)
ifneq ($(findstring modules,$(MAKECMDGOALS)),modules)
#############################################################
ifneq ($(findstring modules,$(MAKECMDGOALS)),modules)
#############################################################
--include $(patsubst %,%/module.mk,$(MODULES))
+-include $(patsubst %,%/module.mk,$(MODULES))
.PHONY: alilibs aliroot makedistr clean distclean clean-all \
htmldoc profile
.PHONY: alilibs aliroot makedistr clean distclean clean-all \
htmldoc profile
-modules: $(patsubst %,%/module.mk,$(MODULES))
+modules: $(patsubst %,%/module.mk,$(MODULES))
aliroot: $(BINPATH) $(ALLEXECS) alilibs bin
aliroot: $(BINPATH) $(ALLEXECS) alilibs bin
endif
# Single Makefile "distribution": Makefile + modules + mkdepend scripts
endif
# Single Makefile "distribution": Makefile + modules + mkdepend scripts
tar -cvf MakeDistr.tar $(patsubst %,%/*.pkg,$(MODULES)) \
tar -cvf MakeDistr.tar $(patsubst %,%/*.pkg,$(MODULES)) \
- Makefile create build/*
+ Makefile create build/*
debug:
ifndef ALIQUIET
@echo "***** Entering DEBUG mode. *****"
endif
@(export ALIDEBUG=YES && $(MAKE))
debug:
ifndef ALIQUIET
@echo "***** Entering DEBUG mode. *****"
endif
@(export ALIDEBUG=YES && $(MAKE))
profile:
ifndef ALIQUIET
@echo "***** Entering PROFILE mode. *****"
endif
@(export ALIPROFILE=YES && $(MAKE))
profile:
ifndef ALIQUIET
@echo "***** Entering PROFILE mode. *****"
endif
@(export ALIPROFILE=YES && $(MAKE))
@mkdir lib
@mkdir lib/tgt_$(ALICE_TARGET)
@mkdir lib
@mkdir lib/tgt_$(ALICE_TARGET)
@mkdir bin
@mkdir bin/tgt_$(ALICE_TARGET)
@mkdir bin
@mkdir bin/tgt_$(ALICE_TARGET)
@echo " clean-MODULENAME : Clean everything from module MODULENAME"
@echo " clean-all : Cleans up everything, including cern libraires"
@echo " distclean : Like clean-all + clean all tgt_*'s"
@echo " clean-MODULENAME : Clean everything from module MODULENAME"
@echo " clean-all : Cleans up everything, including cern libraires"
@echo " distclean : Like clean-all + clean all tgt_*'s"
- @echo " clean-modules : Clean all module.mk file in all modules"
+ @echo " clean-modules : Clean all module.mk files in all modules"
@echo " clean-libs : Clean all libraries (not object files)"
@echo "********************************************"
@echo " clean-libs : Clean all libraries (not object files)"
@echo "********************************************"
CHECKMODULES := $(filter-out PDF,$(CHECKMODULES))
CHECKMODULES := $(filter-out MICROCERN,$(CHECKMODULES))
CHECKMODULES := $(filter-out PDF,$(CHECKMODULES))
CHECKMODULES := $(filter-out MICROCERN,$(CHECKMODULES))
-check-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,check-%,$(CHECKMODULES))
+check-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,check-%,$(CHECKMODULES))
-reveng-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,reveng-%,$(CHECKMODULES))
+reveng-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,reveng-%,$(CHECKMODULES))
-revdisp-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,revdisp-%,$(CHECKMODULES))
+revdisp-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,revdisp-%,$(CHECKMODULES))
clean-dicts:
ifndef ALIQUIET
clean-dicts:
ifndef ALIQUIET
ifndef ALIQUIET
@echo "***** Cleaning up module.mk files *****"
endif
ifndef ALIQUIET
@echo "***** Cleaning up module.mk files *****"
endif
- $(MUTE)rm -rf $(patsubst %,%/module.mk,$(MODULES))
+ $(MUTE)rm -rf $(patsubst %,%/module.mk,$(MODULES))
clean-depend:
ifndef ALIQUIET
clean-depend:
ifndef ALIQUIET
endif
$(MUTE)rm -rf bin/tgt_$(ALICE_TARGET)
endif
$(MUTE)rm -rf bin/tgt_$(ALICE_TARGET)
-clean-check-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,clean-check-%,$(CHECKMODULES))
+clean-check-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,clean-check-%,$(CHECKMODULES))
-clean-reveng-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,clean-reveng-%,$(CHECKMODULES))
+clean-reveng-all: $(patsubst %,%/module.mk,$(CHECKMODULES)) $(patsubst %,clean-reveng-%,$(CHECKMODULES))
htmldoc:
@rm -rf html/roothtml
htmldoc:
@rm -rf html/roothtml
PACKFFLAGS := $(FFLAGS) -IPDF/pdf
PACKFFLAGS := $(FFLAGS) -IPDF/pdf
-ifeq ($(PLATFORM),linux)
+ifeq ($(ALICE_TARGET),linux)
GCC_VERSION := $(shell $(CXX) -v 2>&1 | \
grep version | cut -d' ' -f3)
ifeq ($(GCC_VERSION),2.96)
GCC_VERSION := $(shell $(CXX) -v 2>&1 | \
grep version | cut -d' ' -f3)
ifeq ($(GCC_VERSION),2.96)
tpythia6_called_from_cc.F\
openDecayTable.F
tpythia6_called_from_cc.F\
openDecayTable.F
-ifeq ($(PLATFORM),linux)
+ifeq ($(ALICE_TARGET),linux)
GCC_VERSION := $(shell $(CXX) -v 2>&1 | \
grep version | cut -d' ' -f3)
ifeq ($(GCC_VERSION),2.96)
GCC_VERSION := $(shell $(CXX) -v 2>&1 | \
grep version | cut -d' ' -f3)
ifeq ($(GCC_VERSION),2.96)
-ifeq ($(PLATFORM),linux)
+ifeq ($(ALICE_TARGET),linux)
FFLAGS += -fno-automatic
endif
#PACKFFLAGS := $(filter-out -O%,$(FFLAGS))
FFLAGS += -fno-automatic
endif
#PACKFFLAGS := $(filter-out -O%,$(FFLAGS))
-# Makefile to build ALIROOT for OSF1
+# Makefile to build AliRoot for Alpha OSF1
+
+PLATFORM = alpha
# The compilers
CXX = cxx
# The compilers
CXX = cxx
+# Makefile to build AliRoot on HP-UX
+
+PLATFORM = hpux
+
# The compilers
CXX = aCC
F77 = f77
# The compilers
CXX = aCC
F77 = f77
+# Makefile to build AliRoot for Linux
+
+PLATFORM = linux
+
# The compilers
CXX = g++
F77 = g77
# The compilers
CXX = g++
F77 = g77
+# Makefile for AliRoot for Itanium/Linux with Intel icc compiler
+
+PLATFORM = linux
+
# The compilers
CXX = ecc
F77 = efc
# The compilers
CXX = ecc
F77 = efc
+# Makefile for AliRoot for Itanium/Linux with gcc
+
+PLATFORM = linux
+
# The compilers
CXX = g++
F77 = g77
# The compilers
CXX = g++
F77 = g77
+# Makefile for AliRoot for Linux with the Intel icc compiler
+
+PLATFORM = linux
+
# The C/C++ compilers
CXX = icc
CC = icc
# The C/C++ compilers
CXX = icc
CC = icc
+# Makefile for AliRoot for MacOS X with gcc
+
+PLATFORM = macosx
+
# The compilers
CXX = g++
F77 = g77
# The compilers
CXX = g++
F77 = g77
+# Makefile for AliRoot for MacOS X using the IBM xlc compiler
+
+PLATFORM = macosx
+
# The compilers
CXX = xlC
F77 = xlf
# The compilers
CXX = xlC
F77 = xlf
endif
ifndef PACKDCXXFLAGS
endif
ifndef PACKDCXXFLAGS
-ifeq ($(PLATFORM),linuxicc)
+ifeq ($(ALICE_TARGET),linuxicc)
@PACKAGE@DCXXFLAGS:=$(filter-out -O%,$(CXXFLAGS)) -O0
else
@PACKAGE@DCXXFLAGS:=$(filter-out -O%,$(CXXFLAGS))
@PACKAGE@DCXXFLAGS:=$(filter-out -O%,$(CXXFLAGS)) -O0
else
@PACKAGE@DCXXFLAGS:=$(filter-out -O%,$(CXXFLAGS))