source: JEM-EUSO/esaf_cc_at_lal/packages/config.gmk @ 114

Last change on this file since 114 was 114, checked in by moretto, 11 years ago

actual version of ESAF at CCin2p3

File size: 3.6 KB
Line 
1# config.gmk
2
3# $Id: config.gmk 2998 2011-10-26 19:02:43Z mabl $
4#
5# This part of Makefile set some variables based on the settings in Rules
6#
7
8ifndef CONFIG_DONE
9
10# Transform ESAFINSTALL from relative to absolute path
11ESAFINSTALL := $(realpath $(ESAFINSTALL))
12
13include $(ESAFINSTALL)/Rules
14
15# architecture
16ARCH=$(shell uname -m)
17# @echo "ARCH=$(ARCH)"
18
19# Load compiler settings, this supports several levels of granularity:
20# 1. Try to load platform specific settings
21# 2. Try to load compiler specific settings
22# 3. Try to load compiler and platform specific settings
23
24-include $(ESAFINSTALL)/platform/config.$(ARCH)
25-include $(ESAFINSTALL)/platform/config.$(COMPILER)
26-include $(ESAFINSTALL)/platform/config.$(ARCH)$(COMPILER)
27
28
29ifndef CC_DONE
30$(error Could not find platform/ configuration files for you compiler "$(COMPILER)" and arch "$(ARCH)")
31endif
32
33#_Compiler independent settings_________________________________________________
34
35CXXFLAGS        += -DESAFARCH=$(ARCH)
36CXXFLAGS        += -DESAFCXX='$(CPP) v$(CXX_VER)'
37
38#_______________________________________________________________________________
39
40# cern libraries
41ifdef USE_SLAST77
42CERNLIBS +=$(shell cernlib mathlib pawlib)
43CERNLIBS += -L${CERN}/${CERN_LEVEL}/lib
44LDFLAGS += $(CERNLIBS)
45endif
46ifdef ROOTSYS
47ROOTCFLAGS   := $(shell root-config --cflags)
48ROOTLIBS     := $(shell root-config --libs)
49ROOTGLIBS    := $(shell root-config --glibs)
50
51EXTRAROOTLIBS := Geom GeomPainter Minuit Ged Thread Spectrum
52
53CXXFLAGS += -fPIC
54CXXFLAGS += $(ROOTCFLAGS)
55LDFLAGS += $(ROOTGLIBS) $(patsubst %,-l%, $(EXTRAROOTLIBS))
56else
57$(error root not configured properly)
58endif
59
60
61ifeq ($(USE_GUI),1)
62$(info Building with GUI ACTIVATED)
63CXXFLAGS += -DUSE_GUI
64else
65$(info Building with GUI DISABLED)
66endif
67
68ifeq ($(USE_VISUALIZATION),1)
69$(info Building with visualizations ACTIVATED)
70CXXFLAGS += -DUSE_VISUALIZATION
71else
72$(info Building with visualizations DISABLED)
73endif
74
75
76# Temporary Directory
77ESAFTMPALL := $(ESAFTMP)/ESAFTMP.$(shell whoami)
78ESAFTMP := $(ESAFTMPALL)/$(ARCH)
79DUMMY := $(shell [ ! -d $(ESAFTMP) ] && mkdir -p $(ESAFTMP) )
80
81ifeq ($(VERBOSE_COMPILING),1)
82CPPVERBOSE = 1
83endif
84
85
86CPPFLAGS := $(CXXFLAGS)
87endif
88
89# Library Directory
90LIBDIR = $(ESAFINSTALL)/lib/$(ARCH)
91
92# Binary Directory
93BINDIR = $(ESAFINSTALL)/bin/$(ARCH)
94SIMUTARGET = $(BINDIR)/Simu
95RECOTARGET = $(BINDIR)/Reco
96
97# Output Directory
98OUTPUTDIR = $(ESAFINSTALL)/output
99
100# Tmp directory
101TMPDIR = $(ESAFINSTALL)/tmp
102
103# Packages Directory
104ESAFPACKAGES = $(ESAFINSTALL)/packages
105
106#tmp directory
107PACKAGETMP := $(ESAFTMP)/$(PACKAGENAME)
108
109#inlude dir (macro support)
110INCLUDEDIR = $(ESAFINSTALL)/include
111
112# The documentation stuff
113ESAFDOC := $(ESAFINSTALL)/doc
114
115#library prefix
116LIBPREFIX :=
117
118# The goal
119PACKAGELIB := $(LIBDIR)/lib$(LIBPREFIX)$(PACKAGENAME).so
120
121#rlibmap
122ELIBMAP:=$(ROOTSYS)/bin/rlibmap
123
124# .rootmap position
125ESAFMAP:=$(ESAFINSTALL)/.rootmap
126
127PACKAGELIBDEP:=$(ROOTLIBDEP:%=$(ROOTSYS)/lib/lib%.so)
128PACKAGELIBDEP+=$(ESAFLIBDEP:%=$(LIBDIR)/lib%.so)
129
130ifndef CONFIG_DONE
131DUMMY := $(shell [ ! -d $(BINDIR) ] && mkdir -p $(BINDIR) )
132DUMMY := $(shell [ ! -d $(OUTPUTDIR) ] && mkdir -p $(OUTPUTDIR) )
133DUMMY := $(shell [ ! -d $(LIBDIR) ] && mkdir -p $(LIBDIR) )
134DUMMY := $(shell [ ! -d $(TMPDIR) ] && mkdir -p $(TMPDIR) )
135ifeq ($(MAKECMDGOALS),includes)
136DUMMY := $(shell [ ! -d $(INCLUDEDIR) ] && mkdir -p $(INCLUDEDIR) )
137endif
138CONFIG_DONE = 1
139
140export CONFIG_DONE CPP CXX F77 CXXFLAGS FFLAGS LDFLAGS CERNLIBS ESAFTMP ARCH ESAFTMPALL CPPVERBOSE
141export BINDIR SIMUTARGET RECOTARGET OUTPUTDIR INCLUDEDIR ESAFPACKAGES PACKAGETMP ESAFDOC LIBPREFIX PACKAGELIB
142export ELIBMAP ESAFMAP PACKAGELIBDEP USE_VISUALIZATION USE_GUI
143endif   # CONFIG_DONE
144
145
Note: See TracBrowser for help on using the repository browser.