3
# Configuration script, to be run before making examples
8
# User-changeable part -------------------------------
11
#LCG platform. Can be needed if external libraries are specified
12
if [ x$MYLCGPLATFORM = x ]; then
13
export MYLCGPLATFORM=x86_64-slc5-gcc43-opt
18
export PYTHIA8LOCATION=..
23
if [ "x$arg" = "x--enable-debug" ] ; then
25
elif [ "x$arg" = "x--enable-shared" ] ; then
27
elif [ "x$arg" = "x--help" ] ; then
28
echo "Usage: ./configure [options] , where options are:"
29
echo "--help : prints this help"
30
echo "--enable-debug : turns on debugging flags and turns off optimization"
31
echo "--enable-shared : use shared library (not yet implemented) (default no)"
32
echo "--lcgplatform=name : LCG platform name, default is slc4_ia32_gcc34"
33
echo "--with-pythia8=p8path : path to pythia8 installation dir to find libs, includes and pars (default is ..)"
34
echo "--with-lhapdf=lhapdfpath : path to LHAPDF libraries dir (LHAPDF must be version 5.3 or higher)"
35
echo "--with-lhapdfversion=v : LHAPDF version (simplified alternative when using CERN AFS MCGenerators, e.g. =5.5.1.a)"
36
echo "--with-lhapdflibname=n : lhapdf library name line (default is -lLHAPDF)"
37
echo "--with-lhapdfsets=path : path to LHAPDF data (default is lhapdfpath/../PDFsets, CERN AFS default is lhapdfpath/../../../share/PDFsets)"
38
echo "--with-fastjet=path : path to fastjet (default = /usr/local)"
39
echo "--with-fastjetversion=v : fastjet version (simplified alternative when using CERN AFS external, e.g. =2.3.3)"
41
elif [ x`echo x${arg} | grep "="` != x ] ; then
42
option=`echo ${arg} | awk -F = '{print $1}'`
43
value=`echo ${arg} | awk -F = '{print $2}'`
44
if [ "x${option}" = "x--lcgplatform" ] ; then
45
MYLCGPLATFORM=${value}
46
elif [ "x${option}" = "x--with-pythia8" ] ; then
47
PYTHIA8LOCATION=${value}
48
elif [ "x${option}" = "x--with-lhapdfversion" ] ; then
49
LHAPDFVERSION=${value}
50
elif [ "x${option}" = "x--with-lhapdf" ] ; then
51
LHAPDFLOCATION=${value}
52
elif [ "x${option}" = "x--with-lhapdflibname" ] ; then
53
LHAPDFLIBNAME=${value}
54
elif [ "x${option}" = "x--with-lhapdfsets" ] ; then
55
LHAPDFSETSLOCATION=${value}
56
elif [ "x${option}" = "x--with-fastjetversion" ] ; then
57
FASTJETVERSION=${value}
58
elif [ "x${option}" = "x--with-fastjet" ] ; then
59
FASTJETLOCATION=${value}
61
echo "${arg}: wrong option. Ignored." >&2
64
echo "${arg}: wrong option. Ignored." >&2
68
echo compilation mode is $COMPMODE
72
# The default values here correspond to CERN AFS (but you may want to change
73
# the version and/or platform).
75
if [ x${LHAPDFLOCATION} != x ]; then
76
if [ x${LHAPDFSETSLOCATION} = x ]; then
77
export LHAPDFSETSLOCATION=${LHAPDFLOCATION}/../PDFsets
78
if [ ! -d ${LHAPDFSETSLOCATION} ]; then
79
export LHAPDFSETSLOCATION=${LHAPDFLOCATION}/../../share/lhapdf/PDFsets
81
if [ ! -d ${LHAPDFSETSLOCATION} ]; then
82
export LHAPDFSETSLOCATION=${LHAPDFLOCATION}/../share/lhapdf/PDFsets
86
if [ x${LHAPDFVERSION} = x ]; then
87
export LHAPDFVERSION=5.7.0
89
if [ x${LHAPDFLOCATION} = x ]; then
90
export LHAPDFLOCATION=/afs/cern.ch/sw/lcg/external/MCGenerators/lhapdf/${LHAPDFVERSION}/${MYLCGPLATFORM}/lib/archive
91
if [ x${LHAPDFSETSLOCATION} = x ]; then
92
export LHAPDFSETSLOCATION=/afs/cern.ch/sw/lcg/external/MCGenerators/lhapdf/${LHAPDFVERSION}/share/PDFsets
96
if [ x${LHAPDFLOCATION} = x ]; then
97
export LHAPDFLOCATION=/afs/cern.ch/sw/lcg/external/MCGenerators/lhapdf/${LHAPDFVERSION}/${MYLCGPLATFORM}/lib/archive
99
if [ x${LHAPDFLIBNAME} = x ]; then
100
export LHAPDFLIBNAME="-lLHAPDF"
102
if [ x${LHAPDFSETSLOCATION} = x ]; then
103
export LHAPDFSETSLOCATION=/afs/cern.ch/sw/lcg/external/MCGenerators/lhapdf/${LHAPDFVERSION}/share/PDFsets
107
if [ x${FASTJETVERSION} != x ]; then
108
export FASTJETLOCATION=/afs/cern.ch/sw/lcg/external/fastjet/${FASTJETVERSION}/${MYLCGPLATFORM}
110
if [ x${FASTJETLOCATION} = x ]; then
111
export FASTJETLOCATION=/usr/local
115
# User-changeable part, experts -----------------------------
118
# export FFLAGS_OPT="-O2 -Wuninitialized"
119
# -Wuninitialized outputs many irrelevant warnings and therefore obscurs
120
export FFLAGS_OPT="-O2"
122
export CFLAGS_OPT=-O2
124
export CXXFLAGS_OPT="-O2 -ansi -pedantic -W -Wall"
125
export CXXFLAGS_DBG="-g -ansi -pedantic -W -Wall"
129
export ARCH0="`uname`"
131
export theGcc=`g++ --version | head -n 1 | awk '{print$3}' | awk -F . '{print $1}'`
132
if [ ${theGcc} = 4 ]; then
133
export ARCH=${ARCH}-gcc4
135
echo Platform is $ARCH
137
#default platform settings:
140
export FFLAGS="${FFLAGS_OPT}"
141
export CFLAGS="${CFLAGS_OPT}"
142
export CXXFLAGS="${CXXFLAGS_OPT}"
143
export FLIBS="-lfrtbegin -lg2c"
144
if [ ${COMPMODE} = OPT ]; then
145
export FFLAGS="${FFLAGS_OPT}"
146
export CFLAGS="${CFLAGS_OPT}"
147
export CXXFLAGS="${CXXFLAGS_OPT}"
149
if [ ${COMPMODE} = DBG ]; then
150
export FFLAGS="${FFLAGS_DBG}"
151
export CFLAGS="${CFLAGS_DBG}"
152
export CXXFLAGS="${CXXFLAGS_DBG}"
154
if [ $ARCH = Linux ]; then
156
export FFLAGS="${FFLAGS_OPT} -Wno-globals"
157
export CFLAGS="${CFLAGS_OPT}"
158
export CXXFLAGS="${CXXFLAGS_OPT}"
159
export FLIBS="-lfrtbegin -lg2c"
160
if [ ${COMPMODE} = OPT ]; then
161
export FFLAGS="${FFLAGS_OPT}"
162
export CFLAGS="${CFLAGS_OPT}"
163
export CXXFLAGS="${CXXFLAGS_OPT}"
165
if [ ${COMPMODE} = DBG ]; then
166
export FFLAGS="${FFLAGS_DBG} -Wno-globals"
167
export CFLAGS="${CFLAGS_DBG}"
168
export CXXFLAGS="${CXXFLAGS_DBG}"
171
# Linux platform with gcc4: new Fortran90 compiler.
172
if [ $ARCH = Linux-gcc4 ]; then
174
export FFLAGS="${FFLAGS_OPT}"
175
export CFLAGS="${CFLAGS_OPT}"
176
export CXXFLAGS="${CXXFLAGS_OPT}"
177
export FLIBS="-lgfortran -lgfortranbegin"
178
if [ ${COMPMODE} = OPT ]; then
179
export FFLAGS="${FFLAGS_OPT}"
180
export CFLAGS="${CFLAGS_OPT}"
181
export CXXFLAGS="${CXXFLAGS_OPT}"
183
if [ ${COMPMODE} = DBG ]; then
184
export FFLAGS="${FFLAGS_DBG}"
185
export CFLAGS="${CFLAGS_DBG}"
186
export CXXFLAGS="${CXXFLAGS_DBG}"
190
if [ $ARCH = Darwin-gcc4 ]; then
192
export FFLAGS="${FFLAGS_OPT}"
193
export CFLAGS="${CFLAGS_OPT}"
194
export CXXFLAGS="${CXXFLAGS_OPT}"
195
export FLIBS="-lgfortran"
196
if [ ${COMPMODE} = OPT ]; then
197
export FFLAGS="${FFLAGS_OPT}"
198
export CFLAGS="${CFLAGS_OPT}"
199
export CXXFLAGS="${CXXFLAGS_OPT}"
201
if [ ${COMPMODE} = DBG ]; then
202
export FFLAGS="${FFLAGS_DBG}"
203
export CFLAGS="${CFLAGS_DBG}"
204
export CXXFLAGS="${CXXFLAGS_DBG}"
207
# Mac-OSX with gcc3; is not tested
208
if [ $ARCH = Darwin ]; then
210
export FFLAGS="${FFLAGS_OPT}"
211
export CFLAGS="${CFLAGS_OPT}"
212
export CXXFLAGS="${CXXFLAGS_OPT}"
213
export FLIBS="-lfrtbegin -lg2c"
214
if [ ${COMPMODE} = OPT ]; then
215
export FFLAGS="${FFLAGS_OPT}"
216
export CFLAGS="${CFLAGS_OPT}"
217
export CXXFLAGS="${CXXFLAGS_OPT}"
219
if [ ${COMPMODE} = DBG ]; then
220
export FFLAGS="${FFLAGS_DBG}"
221
export CFLAGS="${CFLAGS_DBG}"
222
export CXXFLAGS="${CXXFLAGS_DBG}"
226
#Platform & opt/dbg - independent flags and variables:
230
# End of the user-changeable part ---------------------------
235
if [ ! -d ${PYTHIA8LOCATION}/lib ]; then
236
echo ERROR: pythia8 libraries not found at ${PYTHIA8LOCATION}/lib
240
if [ $?LHAPDFLOCATION ]; then
241
if [ x${LHAPDFLOCATION} != x ]; then
242
if [ ! -d ${LHAPDFLOCATION} ]; then
243
echo WARNING in LHAPDFLOCATION: directory ${LHAPDFLOCATION} does not exist
244
echo ...so you cannot run main programs that use LHAPDF
246
if [ ! -d ${LHAPDFSETSLOCATION} ]; then
247
echo WARNING in LHAPDFSETSLOCATION: directory ${LHAPDFSETSLOCATION} does not exist
248
echo ...so you cannot run main programs that use LHAPDF
254
if [ -x ${FASTJETLOCATION}/bin/fastjet-config ]; then
255
FASTJETVERSION1=`${FASTJETLOCATION}/bin/fastjet-config --version`
256
echo Found fastjet version ${FASTJETVERSION1} at ${FASTJETLOCATION}
258
echo WARNING: FastJet not found, the corresponding examples will not work
259
echo ...so you cannot run main programs that use FastJet
260
export FASTJETLOCATION=
265
echo SHELL = /bin/sh > config.mk
266
#echo ARCH = ${ARCH} >> config.mk
267
#echo MYLCGPLATFORM = ${MYLCGPLATFORM} >> config.mk
268
#echo FC = ${FC} >> config.mk
269
#echo CC = ${CC} >> config.mk
270
#echo FFLAGS = ${FFLAGS} >> config.mk
271
#echo CFLAGS = ${CFLAGS} >> config.mk
272
#echo CXXFLAGS = ${CXXFLAGS} >> config.mk
273
#echo FLIBS = ${FLIBS} >> config.mk
275
echo PYTHIA8LOCATION = ${PYTHIA8LOCATION} >> config.mk
276
if [ x${LHAPDFVERSION} != x ]; then
277
echo LHAPDFVERSION = ${LHAPDFVERSION} >> config.mk
279
if [ x${LHAPDFLOCATION} != x ]; then
280
echo LHAPDFLOCATION = ${LHAPDFLOCATION} >> config.mk
282
if [ "x${LHAPDFLIBNAME}" != "x" ]; then
283
echo "LHAPDFLIBNAME = ${LHAPDFLIBNAME}" >> config.mk
287
if [ "x${FASTJETLOCATION}" != "x" ]; then
288
echo "FASTJETLOCATION = ${FASTJETLOCATION}" >> config.mk
293
if [ ${PYTHIA8LOCATION} != .. ]; then
294
if [ ! -e config.csh ]; then
295
echo "#!/bin/csh" > config.csh
296
echo "setenv PYTHIA8DATA ${PYTHIA8LOCATION}/xmldoc" >> config.csh
297
echo "#!/bin/sh" > config.sh
298
echo "export PYTHIA8DATA=${PYTHIA8LOCATION}/xmldoc" >> config.sh
300
echo "setenv PYTHIA8DATA ${PYTHIA8LOCATION}/xmldoc" >> config.csh
301
echo "export PYTHIA8DATA=${PYTHIA8LOCATION}/xmldoc" >> config.sh
305
# For the moment we take archive libraries of lhapdf, so actions with
306
# LD_LIBRARY_PATH are not needed, this is for the future.
307
# Setting LHAPATH is always needed
309
if [ $ARCH0 != Darwin ]; then
310
if [ x${LHAPDFLOCATION} != x ]; then
311
if [ ! -e config.csh ]; then
312
echo "#!/bin/csh" > config.csh
313
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
314
echo " setenv LD_LIBRARY_PATH ${LHAPDFLOCATION}" >> config.csh
315
echo "else" >> config.csh
316
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.csh
317
echo "endif" >> config.csh
318
echo "setenv LHAPATH ${LHAPDFSETSLOCATION}" >> config.csh
319
echo "#!/bin/sh" > config.sh
320
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
321
echo " export LD_LIBRARY_PATH=${LHAPDFLOCATION}" >> config.sh
323
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
324
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.sh
326
echo "export LHAPATH=${LHAPDFSETSLOCATION}" >> config.sh
328
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
329
echo " setenv LD_LIBRARY_PATH ${LHAPDFLOCATION}" >> config.csh
330
echo "else" >> config.csh
331
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.csh
332
echo "endif" >> config.csh
333
echo "setenv LHAPATH ${LHAPDFSETSLOCATION}" >> config.csh
334
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
335
echo " export LD_LIBRARY_PATH=${LHAPDFLOCATION}" >> config.sh
337
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
338
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.sh
340
echo "export LHAPATH=${LHAPDFSETSLOCATION}" >> config.sh
343
if [ x${FASTJETLOCATION} != x ]; then
344
if [ ! -e config.csh ]; then
345
echo "#!/bin/csh" > config.csh
346
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
347
echo " setenv LD_LIBRARY_PATH ${FASTJETLOCATION}/lib" >> config.csh
348
echo "else" >> config.csh
349
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.csh
350
echo "endif" >> config.csh
351
echo "#!/bin/sh" > config.sh
352
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
353
echo " export LD_LIBRARY_PATH=${FASTJETLOCATION}/lib" >> config.sh
355
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
356
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.sh
359
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
360
echo " setenv LD_LIBRARY_PATH ${FASTJETLOCATION}/lib" >> config.csh
361
echo "else" >> config.csh
362
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.csh
363
echo "endif" >> config.csh
364
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
365
echo " export LD_LIBRARY_PATH=${FASTJETLOCATION}/lib" >> config.sh
367
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
368
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.sh
374
if [ x${LHAPDFLOCATION} != x ]; then
375
if [ ! -e config.csh ]; then
376
echo "#!/bin/csh" > config.csh
377
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
378
echo " setenv LD_LIBRARY_PATH ${LHAPDFLOCATION}" >> config.csh
379
echo "else" >> config.csh
380
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.csh
381
echo "endif" >> config.csh
382
echo "setenv LHAPATH ${LHAPDFSETSLOCATION}" >> config.csh
383
echo "#!/bin/sh" > config.sh
384
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
385
echo " export LD_LIBRARY_PATH=${LHAPDFLOCATION}" >> config.sh
387
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
388
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.sh
390
echo "export LHAPATH=${LHAPDFSETSLOCATION}" >> config.sh
392
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
393
echo " setenv LD_LIBRARY_PATH ${LHAPDFLOCATION}" >> config.csh
394
echo "else" >> config.csh
395
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.csh
396
echo "endif" >> config.csh
397
echo "setenv LHAPATH ${LHAPDFSETSLOCATION}" >> config.csh
398
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
399
echo " export LD_LIBRARY_PATH=${LHAPDFLOCATION}" >> config.sh
401
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
402
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${LHAPDFLOCATION}" >> config.sh
404
echo "export LHAPATH=${LHAPDFSETSLOCATION}" >> config.sh
407
if [ x${FASTJETLOCATION} != x ]; then
408
if [ ! -e config.csh ]; then
409
echo "#!/bin/csh" > config.csh
410
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
411
echo " setenv LD_LIBRARY_PATH ${FASTJETLOCATION}/lib" >> config.csh
412
echo "else" >> config.csh
413
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.csh
414
echo "endif" >> config.csh
415
echo "#!/bin/sh" > config.sh
416
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
417
echo " export LD_LIBRARY_PATH=${FASTJETLOCATION}/lib" >> config.sh
419
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
420
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.sh
423
echo 'if( ! $?LD_LIBRARY_PATH ) then' >> config.csh
424
echo " setenv LD_LIBRARY_PATH ${FASTJETLOCATION}/lib" >> config.csh
425
echo "else" >> config.csh
426
echo " setenv LD_LIBRARY_PATH" '${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.csh
427
echo "endif" >> config.csh
428
echo 'if [ ! $?LD_LIBRARY_PATH ]; then' >> config.sh
429
echo " export LD_LIBRARY_PATH=${FASTJETLOCATION}/lib" >> config.sh
431
echo 'if [ $?LD_LIBRARY_PATH ]; then' >> config.sh
432
echo " export LD_LIBRARY_PATH="'${LD_LIBRARY_PATH}'":${FASTJETLOCATION}/lib" >> config.sh