]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/configure.ac
adding compatibility check for AliTPCClusterParam r40128
[u/mrichter/AliRoot.git] / HLT / configure.ac
CommitLineData
b521659f 1dnl -*- mode: autoconf -*-
2dnl
3dnl $Id$
4dnl template for the configuration script for the Alice HLT
5dnl framework and components
6dnl
7dnl ------------------------------------------------------------------
408c5899 8
9dnl Take either the AliRoot tag as version id or the current revision
10AC_INIT([Alice High Level Trigger] ,
7233bc62 11 m4_esyscmd([url=`svn info 2> /dev/null | grep "URL:" | cut -d: -f3 | sed -e 's|[/]*HLT[/]*$||' | sed -e 's|^[/]*||g' | cut -d '/' -f 4`; \
12 revision=`svn info 2> /dev/null | grep "Revision:" | cut -d ' ' -f 2 | cut -d '/' -f 4`; \
13 if test "x$url" != "x"; then echo -n $url; \
14 elif test "x$revision" != "x"; then echo -n $revision ; \
15 elif test -e .revision && test x`cat .revision` != x; then \
16 cat .revision; \
17 else \
18 echo -n invalid-version; \
19 fi]),
408c5899 20 [Matthias.Richter@ift.uib.no],
21 [alice-hlt])
b521659f 22
23dnl ------------------------------------------------------------------
24dnl the package from CVS contains the old Makefiles as well. In order to
25dnl prevent them from becoming overwritten, we require a separate build
26dnl directory
27if test "`dirname $0`" = "." ; then
28 AC_ERROR([please run the script from a separate build directory])
29fi
30
31dnl ------------------------------------------------------------------
32AC_CANONICAL_SYSTEM
33AC_PREFIX_DEFAULT(${PWD})
34AC_CONFIG_SRCDIR(BASE/AliHLTComponent.cxx)
b59c004b 35AM_INIT_AUTOMAKE([-Wno-portability])
b521659f 36AC_PROG_CC
37AC_PROG_CXX
38AC_PROG_LIBTOOL
39
40AC_DEBUG
5b1c9727 41AC_PROFILING
b521659f 42AC_OPTIMIZATION
dc8f7cb7 43AM_CONDITIONAL(STANDALONE_SAMPLELIB, test 0 )
44
45dnl ------------------------------------------------------------------
46dnl A warning posted into the auto-generated files
47dnl Does NOT concern this file ;-)
48AUTOGENERATED_WARNING="!!!!!!! DO NOT EDIT THIS FILE !!!!!!"
49AC_SUBST([AUTOGENERATED_WARNING])
b521659f 50
51dnl ------------------------------------------------------------------
52dnl
53dnl Check for ROOT
54dnl
55ROOT_PATH(, [have_root=1], [AC_ERROR([Stop! The HLT package needs ROOT.])])
56AM_CONDITIONAL(HAVE_ROOT, test "x$have_root" = "x1" )
53feaef5 57AC_SUBST([ROOTSYS])
dc8f7cb7 58ROOTBINDIR=`dirname $ROOTEXEC`
59AC_SUBST([ROOTBINDIR])
60
dfaa582a 61dnl test for additional required root libraries and headers
62LIBS='-ldl'
63if test "x$have_root" = "x1"; then
64 AC_LANG_PUSH(C++)
65 save_CPPFLAGS=$CPPFLAGS
66 save_LDFLAGS=$LDFLAGS
67 save_LIBS=$LIBS
68 CPPFLAGS=`echo $save_CPPFLAGS; for i in ${ROOTINCDIR}; do echo -n "-I$i " ; done`
69
dc8f7cb7 70 # we check for the libSTEER library which is linked to
71 # - the ROOT libs libGeom libMinuit libVMC libEG
72 # - the AliRoot libESD libRAWData (libRAWDatarec from v4-04-Rev-07)
73 # - ROOT libCint needs also libdl
74 # - from Nov 1 2006 TTreeFormula is needed by AliTagAnalysis and requires
75 # libTreePlayer.so
76 # - from Jan 07 libESD also depends on libXMLIO
fbf4d793 77 # - libSTEER depends on libProofPlayer since Oct 2007 (after v4-07-Release)
0776a74c 78 # - libCDB.so depends on libXMLParser since Mar 11 2009 r 31411
79 ROOT_CHECKLIBS='Geom Minuit EG VMC TreePlayer XMLIO Thread Proof ProofPlayer XMLParser'
dc8f7cb7 80 for CHECKLIB in $ROOT_CHECKLIBS ; do
dc8f7cb7 81 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR}"
82 LIBS="$save_LIBS $ROOTLIBS $ADD_ROOTLIBS"
83 AC_CHECK_LIB([$CHECKLIB],[_init], [ADD_ROOTLIBS="$ADD_ROOTLIBS -l$CHECKLIB"])
84 done
dfaa582a 85
86 # TBuffer.h has been made pure virtual in root v5-15-02 and one
87 # has to derive from TBufferFile.h (needed for BASE/AliHLTMessage.h)
ba4b0dd7 88 AC_CHECK_HEADER([TBufferFile.h], [], [HAVE_NOT_TBUFFERFILE])
dfaa582a 89
0b6c2560 90 # TView.h has been made pure virtual right after root v5-15-02 and one
91 # has to derive from TView3D.h (needed for TPCLib/OnlineDisplay/AliHLTTPCDisplay3D)
ba4b0dd7 92 AC_CHECK_HEADER([TView3D.h], [], [HAVE_NOT_TVIEW3D])
0b6c2560 93
dc8f7cb7 94 CPPFLAGS=$save_CPPFLAGS
95 LDFLAGS=$save_LDFLAGS
96 LIBS=$save_LIBS
dfaa582a 97 AC_LANG_POP(C++)
dc8f7cb7 98fi
b521659f 99
100dnl ------------------------------------------------------------------
101# TODO: make this configurable through arguments
102#Define whether you want to run with ALIROOT or only ROOT
103AH_TEMPLATE([ALIHLT_USEPACKAGE],[running environment])
104ALIHLT_USEPACKAGE=ALIROOT
105#ALIHLT_USEPACKAGE=ROOT
106#ALIHLT_USEPACKAGE=STANDALONE
107AC_DEFINE(use_aliroot)
108AC_DEFINE(use_root)
85869391 109CPPFLAGS="$CPPFLAGS ${ROOTCFLAGS}"
7233bc62 110save_CPPFLAGS=$CPPFLAGS
111save_LDFLAGS=$LDFLAGS
112save_LIBS=$LIBS
85869391 113
114dnl ------------------------------------------------------------------
74c73e5a 115dnl check for AliRoot features
116AC_LANG_PUSH(C++)
74c73e5a 117have_aliroot=no
2bbbadd1 118AC_ARG_WITH(aliroot,[ --with-aliroot top of the AliRoot installation],
119 [test -d $with_aliroot && ALICE_ROOT=$with_aliroot],
120 [])
121
122if test "x$ALICE_ROOT" != "x" && test -d $ALICE_ROOT ; then
123 dnl ------------------------------------------------------------------
124 dnl Try to estimate the system architecture
125 case $host_os:$host_cpu in
126 linux*:x86_64*) alice_target='linuxx8664gcc' ;;
127 linux*) alice_target='linux' ;;
128 *) alice_target='unknown' ;;
129 esac
130 if test "x$alice_target" = "xunknown" ; then
131 if test -z $ALICE_TARGET ; then
132 AC_MSG_ERROR([Can not estimate system architecture.
133 To avoid the problem, set the ALICE_TARGET variable appropriately.
134 Please send the following information to Matthias.Richter@ift.uib.no:
135 ${PACKAGE}: no AliRoot target definition for os=$host_os and cpu=$host_cpu ])
136 else
137 AC_MSG_NOTICE([Unknown system architecture.
138 Please send the following information to Matthias.Richter@ift.uib.no:
139 ${PACKAGE}: no AliRoot target definition for os=$host_os and cpu=$host_cpu ])
140 fi
141 else
142 if test "x$ALICE_TARGET" != "x" && test "x$ALICE_TARGET" != "x$alice_target" ; then
143 AC_MSG_WARN([The ALICE_TARGET variable does not match your current system
144 overriding $ALICE_TARGET by $alice_target])
145 fi
146 ALICE_TARGET=$alice_target
147 fi
dc8f7cb7 148 ALIROOTBINDIR=${ALICE_ROOT}/bin/tgt_${ALICE_TARGET}
74c73e5a 149 ALIROOTLIBDIR=${ALICE_ROOT}/lib/tgt_${ALICE_TARGET}
150 ALIROOTINCDIR=${ALICE_ROOT}/include
dc8f7cb7 151 test -d ${ALIROOTBINDIR} || AC_MSG_WARN([can not find AliRoot binary directory $ALIROOTBINDIR])
2bbbadd1 152 test -d ${ALIROOTLIBDIR} || AC_MSG_WARN([can not find AliRoot library directory $ALIROOTLIBDIR])
153 test -d ${ALIROOTINCDIR} || AC_MSG_WARN([can not find AliRoot include directory $ALIROOTINCDIR])
74c73e5a 154fi
2bbbadd1 155
156AC_MSG_CHECKING([for AliRoot])
74c73e5a 157if test "x$ALICE_ROOT" != "x" \
dc8f7cb7 158 && test -d ${ALIROOTBINDIR} \
74c73e5a 159 && test -d ${ALIROOTLIBDIR} \
160 && test -d ${ALIROOTINCDIR}; then
161 have_aliroot=$ALICE_ROOT
162else
dc8f7cb7 163 ALIROOTBINDIR=
74c73e5a 164 ALIROOTLIBDIR=
165 ALIROOTINCDIR=
166fi
167AC_MSG_RESULT([$have_aliroot])
168
169if test ! "x$have_aliroot" = "xno" ; then
74c73e5a 170 ALIROOT_CPPFLAGS="-I${ALIROOTINCDIR} -I${ALICE_ROOT}/RAW"
171 ALIROOT_LDFLAGS="-L${ALIROOTLIBDIR}"
cef8ce36 172 ALIROOT_LIBS="$ADD_ROOTLIBS"
74c73e5a 173 save_CPPFLAGS=$CPPFLAGS
174 save_LDFLAGS=$LDFLAGS
175 save_LIBS=$LIBS
176 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS"
db16520a 177 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
2bbbadd1 178
f8c5e339 179 # check for certain AliRoot libraries/files/features
c018a1bd 180 # libSTEERBase present since Aug 7 2007
1df31a70 181 # ###########################################
182 # temporary workaround for circular dependency libSTEERbase libSTEER
183 # https://savannah.cern.ch/bugs/index.php?49914
184 # disable the sequence of checks and load libraries in parallel
185 ALIROOT_LIBS="$ALIROOT_LIBS -lAOD -lCDB -lRAWDatabase -lRAWDatarec -lESD -lSTEER"
98a0e47f 186 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
c018a1bd 187 CHECKLIB=STEERBase
188 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
189
98a0e47f 190 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
f5bf5fc3 191 CHECKLIB=AOD
192 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
193
cef8ce36 194 # CBD library is present since AliRoot version v4-05-00 (02.06.2006)
98a0e47f 195 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
cef8ce36 196 CHECKLIB=CDB
197 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
198
2bbbadd1 199 # splitted RAW libraries since AliRoot version v4-04-Rev-07 (09.08.2006)
200 have_alirawdata=no
201 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
202 CHECKLIB=RAWDatabase
203 AC_CHECK_LIB([$CHECKLIB],[_init],
204 [ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"
cef8ce36 205 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS -lESD -lSTEER"
2bbbadd1 206 CHECKLIB=RAWDatarec
207 AC_CHECK_LIB([$CHECKLIB],[_init],
208 [ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"
2bbbadd1 209 have_alirawdata=$CHECKLIB])],
210 [# second pass with -RAWData
211 CHECKLIB="-lRAWData"
212 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $CHECKLIB -lSTEER"
213 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliRawReaderMemory.h>
214 #include <AliRawReaderFile.h>
215 #include <AliRawReaderDate.h>
216 #include <AliRawReaderRoot.h>],
217 [AliRawReaderMemory mreader;
218 AliRawReaderFile freader;
219 AliRawReaderDate dreader(NULL,0);
220 AliRawReaderRoot rreader(NULL,0);])],
e962f438 221 [ALIROOT_LIBS="$ALIROOT_LIBS $CHECKLIB"
2bbbadd1 222 have_alirawdata=$CHECKLIB],
223 [have_alirawdata=no])
224 ]) dnl AC_CHECK_LIB RAWDatabase
fa274626 225 AC_MSG_CHECKING([for AliRawReader classes in RAWData libraries])
226 AC_MSG_RESULT([$have_alirawdata])
227
fbf4d793 228 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS -lSTEER"
cef8ce36 229 CHECKLIB=ESD
fbf4d793 230 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
231
232 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
233 CHECKLIB=STEER
234 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"],[have_aliroot=no])
235
236 dnl
237 dnl check whether AliLog supports notification callback
22a5325b 238 dnl 2010-03-03: revision 38921 introduces AliLog::GetRootLogger in order to make AliLog
239 dnl a pure sigleton, introduce a 2-level check here
fbf4d793 240 dnl
241 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
242 have_alilog_notification=no
243 if test ! "x$have_aliroot" = "xno" ; then
244 AC_MSG_CHECKING([whether AliLog supports notification callback])
245 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliLog.h>],
22a5325b 246 [AliLog* logger=AliLog::GetRootLogger();])],
247 [have_alilog_notification=yes],
248 [AC_DEFINE(NO_ALILOG_GETROOTLOGGER)
249 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliLog.h>],
250 [AliLog::AliLogNotification fct])],
251 [have_alilog_notification=yes],
252 [AC_DEFINE(NO_ALILOG_NOTIFICATION)])
253 ])
fbf4d793 254 AC_MSG_RESULT([$have_alilog_notification])
255 fi
256
257 if test "x$have_aliroot" = "xno" ; then
258 # 2007-08-18 dont reset ALIROOT_CPPFLAGS in order to allow compilation
259 # but library dependencies might not be resolved completely
260 #ALIROOT_CPPFLAGS=
261 AC_MSG_WARN([some of the AliRoot library dependencies are not resolved.
262 This can happen from time to time due to development in AliRoot. You can
263 force compilation of detector libs by --enable-<detector>, but be aware
264 of unresolved references at runtime.])
265 AC_MSG_WARN([ ------------------------------------------ ])
266 AC_MSG_WARN([ Report this to $PACKAGE_BUGREPORT ])
267 AC_MSG_WARN([ please include config.log ])
268 AC_MSG_WARN([ ------------------------------------------ ])
269 ALIROOT_LDFLAGS=
270 ALIROOT_LIBS=
271 fi
272
f527516f 273 dnl
274 dnl ESD supports non-std content
275 dnl
276 have_esd_nonstd=no
277 AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <AliESDEvent.h>
278 #include <AliExternalTrackParam.h>
279 #include <TTree.h>
280 #include <TClonesArray.h>],
281 [AliESDEvent esd;
282 esd.CreateStdContent();
283 TTree* tree=new TTree("esdTree", "Tree with HLT ESD objects");
f527516f 284 TClonesArray* a=new TClonesArray("AliExternalTrackParam");
285 a->SetName("SomeObject");
286 esd.AddObject(a);
50a3793d 287 esd.WriteToTree(tree);
f527516f 288 if (!tree->FindBranch("SomeObject")) return 1;
289 return 0;])],
290 [have_esd_nonstd=yes],
291 [AC_DEFINE(HAVE_NOT_ESD_NONSTD)])
292 AC_MSG_CHECKING(whether ESD supports non standard content)
293 AC_MSG_RESULT([$have_esd_nonstd])
294
83cb7e1d 295 dnl
296 dnl ESD copy function added May 9 2008 rev 25667
297 dnl
f527516f 298 if test "x$have_esd_nonstd" != "xyes"; then
83cb7e1d 299 have_esd_copy=no
300 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliESDEvent.h>],
301 [AliESDEvent esd1;
302 AliESDEvent esd2;
303 esd2=esd1;])],
9877121c 304 [have_esd_copy=yes],
305 [AC_DEFINE(HAVE_NOT_ESD_COPY)])
83cb7e1d 306 AC_MSG_CHECKING(for ESD assignment operator)
307 AC_MSG_RESULT([$have_esd_copy])
f527516f 308 fi
83cb7e1d 309
296b5188 310 dnl
311 dnl AliRawReaderMemory support for multiple buffers added
c03e064d 312 dnl revision 26829 Jun 2008
296b5188 313 dnl
314 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/RAW"
315 have_rawreadermemory_multbuffers=no
316 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliRawReaderMemory.h>],
317 [AliRawReaderMemory rr;
318 rr.AddBuffer(NULL, 0, 0);])],
319 [have_rawreadermemory_multbuffers=yes],
320 [AC_DEFINE(HAVE_NOT_ALIRAWREADERMEMORY_ADDBUFFER)])
c03e064d 321 AC_MSG_CHECKING(AliRawReaderMemory support for multiple buffers)
296b5188 322 AC_MSG_RESULT([$have_rawreadermemory_multbuffers])
323
a553c904 324 dnl
325 dnl Changes in the magnetic field implementation
326 dnl revision 30848 Feb 1 2009
327 dnl
328 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/STEER"
329 have_alimagf30848=no
330 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliMagF.h>],
331 [int test=AliMagF::k5kG;])],
332 [have_alimagf30848=yes],
333 [AC_DEFINE(HAVE_NOT_ALIMAGF30848)])
334 AC_MSG_CHECKING(AliMagF contains field definitions)
335 AC_MSG_RESULT([$have_alimagf30848])
336
337 dnl
338 dnl Cleanup of the RunLoader implementation
339 dnl revision 30859 Feb 2 2009
340 dnl
341 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/STEER"
342 have_alirunloader30859=no
343 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliRunLoader.h>],
344 [AliRunLoader* rl=AliRunLoader::Instance();])],
345 [have_alirunloader30859=yes],
346 [AC_DEFINE(HAVE_NOT_ALIRUNLOADER30859)])
347 AC_MSG_CHECKING(AliRunLoader::Instance)
348 AC_MSG_RESULT([$have_alirunloader30859])
349
73c1ebf5 350 have_aliqav1=no
351 AC_CHECK_HEADER([AliQAv1.h], [have_aliqav1=yes], [])
352 AM_CONDITIONAL(EN_HLT_QA, test x$have_aliqav1 = xyes)
95ea76b5 353 AC_CHECK_HEADER([AliESDHLTDecision.h], [], [AC_DEFINE(HAVE_NOT_ALIESDHLTDECISION)])
73c1ebf5 354
f5bf5fc3 355 dnl
fbf4d793 356 dnl required header files and libraries for modules
f5bf5fc3 357 dnl
04dbc9e4 358
f59fee6d 359 dnl
360 dnl Check for the interface of AliExternalTrackParam which has been changed
361 dnl in revision 1.17 of AliExternalTrackParam.h (AliRoot version v4-05-04
362 dnl or higher)
363 externaltrackparam_version=1
364 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliExternalTrackParam.h>],
365 [AliExternalTrackParam trackparam;
366 Double_t param[[5]]; Double_t covar[[15]];
367 trackparam.Set(0., 0., param, covar);])],
368 [externaltrackparam_version=2],
369 [AC_DEFINE(EXTERNALTRACKPARAM_V1)])
370 AC_MSG_CHECKING(for version of AliExternalTrackParam)
371 AC_MSG_RESULT($externaltrackparam_version)
372
4646c6e3 373 dnl The AliShuttleInterface was changed in rev 29388. Some return types
374 dnl had been const, now changed according to gcc 4.3 warnings
375 AC_MSG_CHECKING(for version of AliShuttleInterface.h)
376 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/"
377 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
378 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $ALITPC_LIBS"
379 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliShuttleInterface.h>],
380 [class dummy : public AliShuttleInterface {
381 public:
382 const UInt_t GetStartTimeDCSQuery() {;}
383 };])],
384 [AC_DEFINE(SHUTTLE_PRE_REV29388_INTERFACE)
385 alishuttleinterface_version=pre.rev.29388],
386 [alishuttleinterface_version=up.to.date])
387 AC_MSG_RESULT([$alishuttleinterface_version])
388
74c73e5a 389 CPPFLAGS=$save_CPPFLAGS
390 LDFLAGS=$save_LDFLAGS
391 LIBS=$save_LIBS
7233bc62 392fi # if test ! "x$have_aliroot" = "xno"
f59fee6d 393
74c73e5a 394AC_LANG_POP(C++)
5f5b708b 395AC_SUBST([ALICE_ROOT])
74c73e5a 396AC_SUBST([ALIROOT_CPPFLAGS])
397AC_SUBST([ALIROOT_LDFLAGS])
dc8f7cb7 398AC_SUBST([ALIROOTBINDIR])
53feaef5 399AC_SUBST([ALIROOTLIBDIR])
593a08ea 400
401ALIROOT_LIBS="$ALIROOT_LIBS $ADD_ROOTLIBS"
74c73e5a 402AC_SUBST([ALIROOT_LIBS])
0f51f5b8 403AM_CONDITIONAL(USE_TPC_MAPPING, test x$have_tpc_mapping = xyes)
85869391 404
6c1a9d9e 405HLTBASE_CPPFLAGS='-I${top_srcdir}/BASE'
406HLTBASE_LDFLAGS=
407AC_SUBST([HLTBASE_CPPFLAGS])
408AC_SUBST([HLTBASE_LDFLAGS])
409
78b557c2 410dnl ------------------------------------------------------------------
411dnl check for the HLT PubSub Framework
f8c5e339 412dnl namely for the existence of the HOMER library
413dnl from Sep 2007, the HOMER lib has been incorporated into the alice-hlt
414dnl package. It os though possible to choose an external. library
415dnl In order to make the origni of the HOMER lib clear, the one in AliRoot
416dnl got the name libAliHLTHOMER
78b557c2 417AC_MSG_CHECKING([for HLT PubSub Framework])
418AC_ARG_WITH(pubsub, [installation path of the HLT PubSub framework],
419 [],
420 [ test -n $ALIHLT_DC_DIR && with_pubsub=$ALIHLT_DC_DIR ])
421if test -z $with_pubsub || ! test -d $with_pubsub ; then
422 with_pubsub=no
423fi
424AC_MSG_RESULT([$with_pubsub])
f8c5e339 425HOMER_VERSION=2
5f1685a0 426HOMER_LIBS=
78b557c2 427
428AH_TEMPLATE([HAVE_HOMERREADER],[the HLT PubSub Homer Reader interface])
429if test "x$with_pubsub" != "xno" ; then
430 save_CPPFLAGS=$CPPFLAGS
431 save_LDFLAGS=$LDFLAGS
432 save_LIBS=$LIBS
4a6b4894 433 # currently the different versions of the HLT PubSub framework have a different
434 # directory layout
20b6dd9a 435 if test -d ${with_pubsub}/include/HOMER ; then
5235c3e9 436 # the 'early' location of the include files with separated HOMER sub dirs
9ce4bf4a 437 HOMER_INCDIRS="${with_pubsub}/include/HOMER ${with_pubsub}/include/HOMER/reader"
5235c3e9 438 elif test -d ${with_pubsub}/include/Util/HOMER ; then
439 # location for HLT Framework versions after Sep 2006
9ce4bf4a 440 HOMER_INCDIRS="${with_pubsub}/include/Util/HOMER"
5235c3e9 441 elif test -d ${with_pubsub}/src/Util/HOMER/include ; then
442 # fall back if include files were not installed (versions after Sep 06)
9ce4bf4a 443 HOMER_INCDIRS="${with_pubsub}/src/Util/HOMER/include"
4a6b4894 444 else
5235c3e9 445 # fall back if include files were not installed (versions before Sep 06)
9ce4bf4a 446 HOMER_INCDIRS="${with_pubsub}/src/Util/HOMER/reader/include ${with_pubsub}/src/Util/HOMER/data/include"
4a6b4894 447 fi
9ce4bf4a 448 HOMER_CPPFLAGS=`for i in ${HOMER_INCDIRS}; do echo -n "-I$i " ; done`
5894eaa5 449
450 AC_ARG_ENABLE(pubsub-debug,
451 [AC_HELP_STRING([--disable-pubsub-debug],
452 [force the production version of the PubSub framework])],
453 [],[enable_pubsub_debug=yes])
454 homer_type="none"
455 HOMER_TARGET="`uname -s`-`uname -m`"
456 AC_MSG_CHECKING([for HLT PubSub Framework release type])
457 if test -d "${with_pubsub}/lib/${HOMER_TARGET}-release" ; then
458 homer_type="production"
459 HOMER_TARGET="${HOMER_TARGET}-release"
460 elif test "x$enable_pubsub_debug" = "xyes" && test -d "${with_pubsub}/lib/${HOMER_TARGET}-debug" ; then
461 homer_type="debug"
462 HOMER_TARGET="${HOMER_TARGET}-debug"
463 fi
464 AC_MSG_RESULT([${homer_type}])
f8c5e339 465 HOMERREADER_HEADER=HOMERReader.h
5894eaa5 466 HOMER_BINDIR="${with_pubsub}/bin/${HOMER_TARGET}"
467 HOMER_LIBDIR="${with_pubsub}/lib/${HOMER_TARGET}"
53feaef5 468 HOMER_LDFLAGS="-L${HOMER_LIBDIR}"
78b557c2 469 CPPFLAGS="$save_CPPFLAGS $HOMER_CPPFLAGS"
470 LDFLAGS="$save_LDFLAGS $HOMER_LDFLAGS"
471 LIBS="$save_LIBS "
472 with_homer=no
473 AC_LANG_PUSH(C++)
f8c5e339 474 AC_CHECK_HEADER([$HOMERREADER_HEADER],
5f1685a0 475 [ AC_CHECK_LIB([HOMER],[_init],
476 [with_homer=yes
477 HOMER_LIBS="-lHOMER"],
478 [ AC_CHECK_LIB([HOMERReader],[_init],
479 [with_homer=yes
480 HOMER_LIBS="-lHOMERReader"])])
481 LIBS="$LIBS $HOMER_LIBS"
9ce4bf4a 482 AC_MSG_CHECKING([version of HOMER library])
5f1685a0 483 dnl The Homer library has no versioning, so we do our own
484 dnl version description
485 dnl ----------------------------------------------------------------------
486 dnl 1 inintial version
487 dnl 2 GetBlockStatusFlags added to the interface
488 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <HOMERReader.h>],
489 [HOMERReader reader("dummy", 0);
490 reader.GetBlockStatusFlags(0);])],
f8c5e339 491 [],
492 [HOMER_VERSION=1])
5f1685a0 493 AC_MSG_RESULT([$HOMER_VERSION])
f8c5e339 494 ],
495 [HOMERREADER_HEADER=]) #AC_CHECK_HEADER([$HOMERREADER_HEADER])
78b557c2 496 AC_LANG_POP(C++)
f8c5e339 497 HOMER_INBUILT_LIB=
498else
499dnl no pubsub version defined, check if the HOMER lib is available in AliRoot
500 topdir=`dirname $0`
501 HOMER_CPPFLAGS="-I`(cd $topdir; pwd)`/BASE/HOMER"
502 HOMERREADER_HEADER=AliHLTHOMERReader.h
503 HOMER_INBUILT_LIB=`pwd`/BASE/HOMER/libAliHLTHOMER.la
504 HOMER_BINDIR=
505 HOMER_LIBDIR=
506 HOMER_LDFLAGS=
507fi
508
78b557c2 509 if test "x$with_homer" = "xno" ; then
510 HOMER_CPPFLAGS=
511 HOMER_LDFLAGS=
5f1685a0 512 HOMER_LIBS=
78b557c2 513 else
5f1685a0 514 HOMER_CPPFLAGS="$HOMER_CPPFLAGS -DHOMER_VERSION=$HOMER_VERSION"
78b557c2 515 AC_DEFINE(HAVE_HOMERREADER)
516 fi
517 CPPFLAGS="$save_CPPFLAGS"
518 LDFLAGS="$save_LDFLAGS"
519 LIBS="$save_LIBS"
f8c5e339 520
521AC_SUBST([HOMERREADER_HEADER])
522AC_SUBST([HOMER_INBUILT_LIB])
78b557c2 523AC_SUBST([HOMER_CPPFLAGS])
524AC_SUBST([HOMER_LDFLAGS])
53feaef5 525AC_SUBST([HOMER_LIBDIR])
526AC_SUBST([HOMER_BINDIR])
5f1685a0 527AC_SUBST([HOMER_LIBS])
78b557c2 528
7233bc62 529dnl ------------------------------------------------------------------
530AC_ARG_ENABLE(all,
531 [AC_HELP_STRING([--disable-all],
532 [disable all detector modules, individual modules can be switched on by --enable-det])],
533 [disable_all=yes],[])
534
85869391 535dnl ------------------------------------------------------------------
536AC_MSG_CHECKING([whether to impose strict coding conventions])
537AC_ARG_ENABLE(strict,
2028353f 538 [AC_HELP_STRING([--disable-strict],
539 [disable coding convention checks ])],
540 [],[enable_strict=yes])
85869391 541if test "x$enable_strict" = "xyes" ; then
f7561f8d 542 CPPFLAGS="$CPPFLAGS -W -Weffc++ -Wall -Wshadow"
85869391 543fi
544AC_MSG_RESULT([$enable_strict])
b521659f 545
5b6ab198 546dnl ------------------------------------------------------------------
547AC_MSG_CHECKING([whether to enable component statistics])
548AC_ARG_ENABLE(component-stat,
549 [AC_HELP_STRING([--enable-component-stat],
550 [enable component statistics ])],
24dc45d8 551 [],[])
552
553dnl enable component statistics if not explicitely disabled
554if test "x$enable_component_stat" != "xno" &&
555 test "x$enable_debug" = "xyes" ; then
556 enable_component_stat=yes.debug
557fi
558
559if test "x$enable_component_stat" = "x" ; then
560 enable_component_stat=no
561fi
562
563if test "x$enable_component_stat" != "xno" ; then
5b6ab198 564 AC_DEFINE(HLT_COMPONENT_STATISTICS)
565fi
566AC_MSG_RESULT([$enable_component_stat])
567
cad2d06c 568dnl ------------------------------------------------------------------
569dnl ---- module checks
570dnl ------------------------------------------------------------------
571save_CPPFLAGS=$CPPFLAGS
572save_LDFLAGS=$LDFLAGS
573save_LIBS=$LIBS
574
c8500eef 575dnl ------------------------------------------------------------------
576AC_MSG_NOTICE([-------------------------------------------------])
577AC_MSG_NOTICE([checking dependencies for HLTbase library])
578HLTBASE_CHECKLIBS='XMLParser'
579for CHECKLIB in $HLTBASE_CHECKLIBS ; do
580 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR}"
581 LIBS="$save_LIBS $ROOTLIBS $ALIHLTBASE_LIBS"
582 AC_CHECK_LIB([$CHECKLIB],[_init], [ALIHLTBASE_LIBS="$ALIHLTBASE_LIBS -l$CHECKLIB"])
583done
584AC_SUBST([ALIHLTBASE_LIBS])
585
b521659f 586dnl ------------------------------------------------------------------
587AC_MSG_CHECKING([whether to compile sample library])
588AH_TEMPLATE([HLT_SAMPLE],[hlt sample library])
589AC_ARG_ENABLE(sample,
c018a1bd 590 [AC_HELP_STRING([--disable-sample],
b521659f 591 [compile the sample library ])],
2e742d30 592 [],
593 [if test "x$have_aliroot" = "xno" ; then
594 enable_sample="no...requires.AliRoot"
595 else
596 enable_sample=yes
597 fi
598 ])
599
b521659f 600if test "x$enable_sample" = "xyes" ; then
601 AC_DEFINE(HLT_SAMPLE)
602fi
603AM_CONDITIONAL(EN_HLT_SAMPLE, test x$enable_sample = xyes)
604AC_MSG_RESULT([$enable_sample])
605
c018a1bd 606dnl ------------------------------------------------------------------
c018a1bd 607AH_TEMPLATE([HLT_UTIL],[HLT utility library])
b59c004b 608ALIUTIL_LIBS=
609CHECK_HLTMODULE([util],
610 [],
611 [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/STEER -I$ALICE_ROOT/RAW -I$ALICE_ROOT/PYTHIA6],
612 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS], [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS],
613 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
614 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
615
616if test "x$enable_module" = "xmissheader"; then
617 enable_module="no...missing.headers"
618 enable_util=$enable_module
619elif test "x$enable_module" = "xforce"; then
620 enable_util="yes"
621else
622 enable_util=$enable_module
623fi
c018a1bd 624if test "x$enable_util" = "xyes" ; then
625 AC_DEFINE(HLT_UTIL)
b59c004b 626 ALIUTIL_LIBS=$ALIHLTMODULE_LIBS
c018a1bd 627fi
628AM_CONDITIONAL(EN_HLT_UTIL, test x$enable_util = xyes)
b59c004b 629AC_MSG_CHECKING([whether to compile Util library])
630AC_MSG_RESULT([$enable_module])
631AC_SUBST([ALIUTIL_LIBS])
c018a1bd 632
b521659f 633dnl ------------------------------------------------------------------
b521659f 634AH_TEMPLATE([HLT_TPC],[hlt tpc library])
f59fee6d 635
e642ae99 636ALITPC_LIBS=
f59fee6d 637CHECK_HLTMODULE([tpc],
e962f438 638 [AliTPCRawStream.h],
639 [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/TPC],
70d00903 640 [Gui ANALYSIS STAT], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS], [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS],
e642ae99 641 [TPCbase TPCrec TPCcalib], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
f59fee6d 642 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
643
c6b46c3f 644if test "x$enable_module" = "xmissheader"; then
645 enable_module="no...missing.headers"
50a3793d 646 enable_tpc=$enable_module
c6b46c3f 647elif test "x$enable_module" = "xforce"; then
648 enable_tpc="yes"
f59fee6d 649else
650 enable_tpc=$enable_module
651fi
2e742d30 652
b521659f 653if test "x$enable_tpc" = "xyes" ; then
e642ae99 654 AC_LANG_PUSH(C++)
b521659f 655 AC_DEFINE(HLT_TPC)
e642ae99 656 ALITPC_LIBS=$ALIHLTMODULE_LIBS
657 dnl
658 dnl Check for functionality in the TPC reconstruction required for online
659 dnl processing
660 dnl
661 have_tpc_hltoffline_rec=no
662 AC_MSG_CHECKING(for on-line features of TPC offline reconstruction)
663 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/TPC"
664 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
665 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $ALITPC_LIBS"
666 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliTPCtrackerMI.h>
667 #include <AliTPCclustererMI.h>
668 #include <TObjArray.h>],
669 [AliTPCtrackerMI tracker;
670 TObjArray* array=NULL;
671 tracker.LoadClusters(array);
672 AliTPCclustererMI cl(NULL, NULL);
89c2e505 673 cl.GetOutputClonesArray();])],
e642ae99 674 [have_tpc_hltoffline_rec=yes],
675 [AC_DEFINE(HAVE_NOT_TPCOFFLINE_REC)])
676 AC_MSG_RESULT([$have_tpc_hltoffline_rec])
677
0f058f3e 678 have_alitpcclusterparam_r40128=no
679 AC_MSG_CHECKING([checking for AliTPCClusterParam r40128])
680 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliTPCClusterParam.h>],
681 [AliTPCClusterParam param;
682 float test=param.ParamS0Par(0,0,0)]);],
683 [have_alitpcclusterparam_r40128=yes],
684 [AC_DEFINE(HAVE_NOT_ALITPCCLUSTERPARAM_r40128)])
685 AC_MSG_RESULT([$have_alitpcclusterparam_r40128])
686
687 LIBS=$save_LIBS
688
689
e642ae99 690 AC_CHECK_HEADER([AliTPCCalibPulser.h], [], [AC_DEFINE(HAVE_NOT_ALITPCCALIBPULSER)])
691 AC_CHECK_HEADER([AliTPCCalibPedestal.h], [], [AC_DEFINE(HAVE_NOT_ALITPCCALIBPEDESTAL)])
a553c904 692 AC_CHECK_HEADER([AliAltroRawStreamV3.h], [], [AC_DEFINE(HAVE_NOT_ALTRORAWSTREAMV3)])
e642ae99 693
694 have_tpc_mapping=no
695 if test ! "x$have_aliroot" = "xno" ; then
696 # the TPCLib/AliHLTTPCRawReader needs the actual Pad layout of the TPC
697 # which is stored in the TPC/mapping/Patchx.data files from
698 # AliRoot version v4-04-Release (May 2006)
699 AH_TEMPLATE([HAVE_TPC_MAPPING],[TPC pad mapping available])
700 TPC_PAD_MAPPING_PATH=$have_aliroot/TPC/mapping
701 AC_CHECK_FILE( [$TPC_PAD_MAPPING_PATH/Patch0.data],
702 [have_tpc_mapping=yes
703 AC_SUBST(TPC_PAD_MAPPING_PATH)
704 AC_DEFINE(HAVE_TPC_MAPPING)],
705 [])
706
707 fi
708 AC_MSG_CHECKING([for TPC mapping layout])
709 AC_MSG_RESULT([$have_tpc_mapping])
710 AC_LANG_POP(C++)
711
adec4ad4 712else
713 enable_module=$enable_tpc
b521659f 714fi
715AM_CONDITIONAL(EN_HLT_TPC, test x$enable_tpc = xyes)
d6e2c707 716AC_MSG_CHECKING([whether to compile TPC library])
c6b46c3f 717AC_MSG_RESULT([$enable_module])
f59fee6d 718AC_SUBST([ALITPC_LIBS])
b521659f 719
5e3820e2 720dnl ------------------------------------------------------------------
721AH_TEMPLATE([HLT_RCU],[hlt rcu library])
722
723CHECK_HLTMODULE([rcu],
724 [AliAltroDecoder.h],
725 [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/RAW],
726 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
727 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
728 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
729
730if test "x$enable_module" = "xmissheader"; then
731 enable_module="no...missing.headers"
50a3793d 732 enable_rcu=$enable_module
5e3820e2 733elif test "x$enable_module" = "xforce"; then
734 enable_rcu="yes"
735else
736 AC_LANG_PUSH(C++)
5e3820e2 737 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS"
738 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
739 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
740 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliAltroDecoder.h>],
741 [AliAltroDecoder decoder;
742 decoder.CopyBackward(NULL, 0);])],
743 [enable_rcu=$enable_module],
744 [enable_module="no...requires.AliRoot>v4-10-Release"
745 enable_rcu="no...requires.AliRoot>v4-10-Release"])
746 CPPFLAGS=$save_CPPFLAGS
747 LDFLAGS=$save_LDFLAGS
748 LIBS=$save_LIBS
749 AC_LANG_POP(C++)
750fi
751
752if test "x$enable_rcu" = "xyes" ; then
753 AC_DEFINE(HLT_RCU)
adec4ad4 754else
755 enable_module=$enable_rcu
5e3820e2 756fi
757AM_CONDITIONAL(EN_HLT_RCU, test x$enable_rcu = xyes)
d6e2c707 758AC_MSG_CHECKING([whether to compile RCU library])
5e3820e2 759AC_MSG_RESULT([$enable_module])
760AC_SUBST([ALIRCU_LIBS])
761
fe8738cf 762dnl ------------------------------------------------------------------
763AH_TEMPLATE([HLT_CALO],[hlt calo(rimeter) library])
764
765ALICALO_LIBS=
766CHECK_HLTMODULE([calo],
767 [], [$ALIROOT_CPPFLAGS],
768 [RAWDatasim], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS], [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS],
769 [PHOSUtils PHOSbase PHOSrec PHOSsim PHOSshuttle], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
770 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
771
772if test "x$enable_module" = "xmissheader"; then
773 enable_module="no...missing.headers"
774 enable_calo=$enable_module
775elif test "x$enable_module" = "xforce"; then
776 enable_calo="yes"
777else
778 have_alicalorawstream=no
779 if test ! "x$have_aliroot" = "xno" ; then
780 AC_LANG_PUSH(C++)
781 save_CPPFLAGS="$CPPFLAGS"
782 # this can not be used as AliCaloRawStream.h indirectly depends on TString.h
783 #AC_CHECK_HEADERS([AliCaloRawStream.h], [have_alicalorawstream=yes])
784 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I$ALICE_ROOT/PHOS"
785 AC_MSG_CHECKING([for AliCaloRawStream.h usability])
786 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <TString.h>
787 #include <AliCaloRawStream.h>],
788 [int i])],
789 [AC_DEFINE(HAVE_ALICALORAWSTREAM)
790 have_alicalorawstream=yes],
791 [])
792 AC_MSG_RESULT([$have_alicalorawstream])
793 AC_LANG_POP(C++)
794 CPPFLAGS="$save_CPPFLAGS"
795 fi
796 if test "x$have_alicalorawstream" != "xyes"; then
797 enable_calo="no...requires.AliRoot>v4-05-07"
798 else
799 enable_calo=$enable_module
800 fi
801fi
802
803if test "x$enable_calo" = "xyes" ; then
804 AC_DEFINE(HLT_CALO)
805 ALICALO_LIBS=$ALIHLTMODULE_LIBS
806else
807 enable_module=$enable_calo
808fi
809AM_CONDITIONAL(EN_HLT_CALO, test x$enable_calo = xyes)
810AC_MSG_CHECKING([whether to compile CALO library])
811AC_MSG_RESULT([$enable_module])
812AC_SUBST([ALICALO_LIBS])
813
c160eda8 814dnl ------------------------------------------------------------------
c160eda8 815AH_TEMPLATE([HLT_PHOS],[hlt phos library])
f59fee6d 816
817ALIPHOS_LIBS=
818CHECK_HLTMODULE([phos],
819 [], [$ALIROOT_CPPFLAGS],
820 [RAWDatasim], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS], [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS],
70979a80 821 [PHOSUtils PHOSbase PHOSrec PHOSsim PHOSshuttle], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
f59fee6d 822 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
823
c6b46c3f 824if test "x$enable_module" = "xmissheader"; then
825 enable_module="no...requires.AliRoot>v4-05-07"
50a3793d 826 enable_phos=$enable_module
c6b46c3f 827elif test "x$enable_module" = "xforce"; then
828 enable_phos="yes"
f59fee6d 829else
830 have_alicalorawstream=no
831 if test ! "x$have_aliroot" = "xno" ; then
832 AC_LANG_PUSH(C++)
833 save_CPPFLAGS="$CPPFLAGS"
834 # this can not be used as AliCaloRawStream.h indirectly depends on TString.h
835 #AC_CHECK_HEADERS([AliCaloRawStream.h], [have_alicalorawstream=yes])
56584e00 836 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I$ALICE_ROOT/PHOS"
f59fee6d 837 AC_MSG_CHECKING([for AliCaloRawStream.h usability])
838 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <TString.h>
839 #include <AliCaloRawStream.h>],
840 [int i])],
841 [AC_DEFINE(HAVE_ALICALORAWSTREAM)
842 have_alicalorawstream=yes],
843 [])
fe8738cf 844 AC_MSG_RESULT([$have_alicalorawstream])
ae1c1854 845 AC_MSG_CHECKING([for required EMC functionality in AliPHOSRecoParam.h ])
846 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliPHOSRecoParam.h>],
847 [AliPHOSRecoParam param;
848 param.GetEMCClusteringThreshold()])],
849 [have_aliphosrecoparam=yes],
850 [AC_DEFINE(HAVE_NOT_PHOSRECOPARAMEMC)])
fe8738cf 851 AC_MSG_RESULT([$have_aliphosrecoparam])
f59fee6d 852 AC_LANG_POP(C++)
853 CPPFLAGS="$save_CPPFLAGS"
854 fi
855 if test "x$have_alicalorawstream" != "xyes"; then
856 enable_phos="no...requires.AliRoot>v4-05-07"
857 else
858 enable_phos=$enable_module
859 fi
860fi
2e742d30 861
c160eda8 862if test "x$enable_phos" = "xyes" ; then
863 AC_DEFINE(HLT_PHOS)
f59fee6d 864 ALIPHOS_LIBS=$ALIHLTMODULE_LIBS
adec4ad4 865else
866 enable_module=$enable_phos
c160eda8 867fi
868AM_CONDITIONAL(EN_HLT_PHOS, test x$enable_phos = xyes)
d6e2c707 869AC_MSG_CHECKING([whether to compile PHOS library])
c6b46c3f 870AC_MSG_RESULT([$enable_module])
f59fee6d 871AC_SUBST([ALIPHOS_LIBS])
c160eda8 872
fe8738cf 873dnl ------------------------------------------------------------------
874AH_TEMPLATE([HLT_EMCAL],[hlt emcal library])
875
876ALIEMCAL_LIBS=
877CHECK_HLTMODULE([emcal],
c1482104 878 [], [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/EMCAL -I$ALICE_ROOT/VZERO],
fe8738cf 879 [RAWDatasim], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
c1482104 880 [EMCALrec EMCALsim EMCALbase EMCALUtils VZERObase], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
fe8738cf 881 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
882
883if test "x$enable_module" = "xmissheader"; then
884 enable_module="no...header.missing"
885 enable_emcal=$enable_module
886elif test "x$enable_module" = "xforce"; then
887 enable_emcal="yes"
888else
889 enable_emcal=$enable_module
890fi
891
892if test "x$enable_emcal" = "xyes" ; then
893 AC_DEFINE(HLT_EMCAL)
894 ALIEMCAL_LIBS=$ALIHLTMODULE_LIBS
895else
896 enable_module=$enable_emcal
897fi
898AM_CONDITIONAL(EN_HLT_EMCAL, test x$enable_emcal = xyes)
899AC_MSG_CHECKING([whether to compile EMCAL library])
900AC_MSG_RESULT([$enable_module])
901AC_SUBST([ALIEMCAL_LIBS])
902
c6b46c3f 903dnl ------------------------------------------------------------------
904AH_TEMPLATE([HLT_TRD],[hlt trd library])
905
f59fee6d 906ALITRD_LIBS=
907CHECK_HLTMODULE([trd],
908 [], [],
b3f74118 909 [MLP XMLParser], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
5b44f496 910 [STAT TRDbase TRDrec], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
f59fee6d 911 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
912
c6b46c3f 913if test "x$enable_module" = "xmissheader"; then
914 enable_module="no...requires.AliRoot>v4-07-Release"
50a3793d 915 enable_trd=$enable_module
c6b46c3f 916elif test "x$enable_module" = "xforce"; then
917 enable_trd="yes"
f59fee6d 918else
919 enable_trd=$enable_module
920 if test "x$enable_trd" = "xyes" ; then
921 AC_LANG_PUSH(C++)
922 save_CPPFLAGS="$CPPFLAGS"
923 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I$ALICE_ROOT/TRD"
adec4ad4 924 # AliTRDclusterizer::SetRawVersion() requires >v4-07-Release
925 # changed to AliTRDrecoParam::SetSeedingOn() due to revision 26327, Mon Jun 2 2008
0d66dbf5 926 # changed to AliTRDReconstructor::SetStreamLevel() due to revision 27797, Tue Aug 5 2008
ae5bf1dd 927 # changed to AliTRDReconstructor::SetClusters() according to revision 28069, Mon Aug 18 2008
cef8ce36 928 # changed to AliTRDCluster according to revision 30461, Thu Dec 18 2008
53eb3786 929 # changed to AliTRDclusterizer::GetAddedClusters according to revision 31299, Wed Mar 4 2009
5b44f496 930 # changed to AliTRDclusterizer::GetNTimeBins according to revision 37102 Sun Nov 22 2009
53eb3786 931 AC_MSG_CHECKING([for required functions in AliTRDclusterizer])
932 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliTRDclusterizer.h>],
933 [AliTRDclusterizer c;
5b44f496 934 c.GetNTimeBins()])],
f59fee6d 935 [],
5b44f496 936 [enable_trd="no...requires.AliRoot>v4-18-Release"])
f59fee6d 937 AC_MSG_RESULT([$enable_trd])
2fc8c061 938
939 if test "x$enable_trd" = "xyes" ; then
35e2b984 940 have_alitrdseedv1_r39693=no
941 AC_MSG_CHECKING([checking for AliTRDseedV1 r39693])
942 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliTRDseedV1.h>],
943 [AliTRDseedV1 seed;
944 seed.SetC(0.0, 1)]);],
945 [have_alitrdseedv1_r39693=yes],
946 [AC_DEFINE(HAVE_NOT_ALITRD_SEEDV1_r39693)])
947 AC_MSG_RESULT([$have_alitrdseedv1_r39693])
5b44f496 948
949 have_alitrdrawstream_r39608=no
950 AC_MSG_CHECKING([checking for AliTRDrawStream r39608])
951 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliTRDrawStreamBase.h>],
952 [AliTRDrawStreamBase::SetRawStreamVersion(AliTRDrawStreamBase::kTRDdefaultStream)]);],
953 [have_alitrdrawstream_r39608=yes],
954 [AC_DEFINE(HAVE_NOT_ALITRD_RAWSTREAM_r39608)])
955 AC_MSG_RESULT([$have_alitrdrawstream_r39608])
2fc8c061 956 fi
957
f59fee6d 958 AC_LANG_POP(C++)
959 CPPFLAGS="$save_CPPFLAGS"
960 fi
961fi
2e742d30 962
0f51f5b8 963if test "x$enable_trd" = "xyes" ; then
964 AC_DEFINE(HLT_TRD)
f59fee6d 965 ALITRD_LIBS=$ALIHLTMODULE_LIBS
adec4ad4 966else
967 enable_module=$enable_trd
0f51f5b8 968fi
969AM_CONDITIONAL(EN_HLT_TRD, test x$enable_trd = xyes)
d6e2c707 970AC_MSG_CHECKING([whether to compile TRD library])
c6b46c3f 971AC_MSG_RESULT([$enable_module])
f59fee6d 972AC_SUBST([ALITRD_LIBS])
0f51f5b8 973
629266d1 974dnl ------------------------------------------------------------------
975AH_TEMPLATE([HLT_FMD],[hlt fmd library])
976
977ALIFMD_LIBS=$ALIHLTMODULE_LIBS
978CHECK_HLTMODULE([fmd],
979 [], [],
980 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
50a3793d 981 [FMDbase FMDrec], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
629266d1 982 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
983
984if test "x$enable_module" = "xmissheader"; then
50a3793d 985 enable_module="no...missing.headers"
986 enable_fmd=$enable_module
629266d1 987elif test "x$enable_module" = "xforce"; then
988 enable_fmd="yes"
989else
990 enable_fmd=$enable_module
629266d1 991fi
992
993if test "x$enable_fmd" = "xyes" ; then
994 AC_DEFINE(HLT_FMD)
995 ALIFMD_LIBS=$ALIHLTMODULE_LIBS
996else
997 enable_module=$enable_fmd
998fi
999AM_CONDITIONAL(EN_HLT_FMD, test x$enable_fmd = xyes)
1000AC_MSG_CHECKING([whether to compile FMD library])
1001AC_MSG_RESULT([$enable_module])
1002AC_SUBST([ALIFMD_LIBS])
1003
94cc9aab 1004dnl ------------------------------------------------------------------
94cc9aab 1005AH_TEMPLATE([HLT_MUON],[hlt dimuon library])
2e742d30 1006
f59fee6d 1007ALIMUON_LIBS=
e89e6b23 1008CHECK_HLTMODULE([dimuon],
41f99620 1009 [AliMpExMap.h AliMUONTriggerIO.h],
1010 [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/MUON -I$ALICE_ROOT/MUON/mapping],
b3f74118 1011 [Gui RAWDatasim], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
1012 [MUONcore MUONraw MUONbase MUONgeometry MUONmapping MUONcalib MUONsim MUONtrigger MUONevaluation MUONrec], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
f59fee6d 1013 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
1014
1015if test "x$enable_module" = "xmissheader"; then
a853a794 1016 enable_module="no...requires.AliRoot>=v4-08-Release"
50a3793d 1017 enable_muon=$enable_module
c6b46c3f 1018elif test "x$enable_module" = "xforce"; then
1019 enable_muon="yes"
f59fee6d 1020else
1021 enable_muon=$enable_module
1022fi
1023
1024if test "x$enable_muon" = "xyes" ; then
94cc9aab 1025 AC_DEFINE(HLT_MUON)
f59fee6d 1026 ALIMUON_LIBS=$ALIHLTMODULE_LIBS
6ed1b948 1027 AC_LANG_PUSH(C++)
accd4c8f 1028 save_CPPFLAGS="$CPPFLAGS"
1029
6ed1b948 1030 dnl
1031 dnl Check for functionality GetRawStream AliMUONDigitMaker.h
1032 dnl
1033 have_muon_digitmaker_getrawstream=no
1034 AC_MSG_CHECKING(for GetRawStream methods of AliMUONDigitMaker)
1035 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/MUON"
1036 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
1037 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $ALIMUON_LIBS"
1038 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliMUONDigitMaker.h>],
1039 [AliMUONDigitMaker dm;
1040 dm.GetRawStreamTracker();])],
1041 [have_muon_digitmaker_getrawstream=yes],
1042 [AC_DEFINE(HAVE_NOT_MUON_DIGITMAKER_GETRAWSTREAM)])
1043 LIBS=$save_LIBS
1044 AC_MSG_RESULT([$have_muon_digitmaker_getrawstream])
53eb3786 1045
1046 dnl
1047 dnl Check for AliMpPad::GetPositionX/Y
1048 dnl change of implementation in MUON code
1049 dnl revision 31769, Wed Apr 1 2009
1050 dnl
1051 have_muon_alimppad_getposition=no
1052 AC_MSG_CHECKING(for GetPosition methods of AliMpPad)
1053 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/MUON/mapping"
1054 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
1055 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $ALIMUON_LIBS"
1056 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliMpPad.h>],
1057 [AliMpPad pad;
1058 pad.GetPositionX();])],
1059 [have_muon_alimppad_getposition=yes],
1060 [AC_DEFINE(HAVE_NOT_MUON_ALIMPPAD_GETPOSITION)])
1061 LIBS=$save_LIBS
1062 AC_MSG_RESULT([$have_muon_alimppad_getposition])
1063
accd4c8f 1064 CPPFLAGS="$save_CPPFLAGS"
6ed1b948 1065
1066 AC_LANG_POP(C++)
adec4ad4 1067else
1068 enable_module=$enable_muon
94cc9aab 1069fi
f59fee6d 1070AM_CONDITIONAL(EN_HLT_MUON, test x$enable_muon = xyes)
d6e2c707 1071AC_MSG_CHECKING([whether to compile MUON library])
c6b46c3f 1072AC_MSG_RESULT([$enable_module])
f59fee6d 1073AC_SUBST([ALIMUON_LIBS])
94cc9aab 1074
d6e2c707 1075dnl ------------------------------------------------------------------
1076AH_TEMPLATE([HLT_TRIGGER],[hlt trigger library])
1077
1078ALITRIGGER_LIBS=
1079CHECK_HLTMODULE([trigger],
1080 [], [$ALIROOT_CPPFLAGS],
1081 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
1082 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
1083 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
1084
1085if test "x$enable_module" = "xmissheader"; then
1086 enable_module="no...header.missing"
50a3793d 1087 enable_trigger=$enable_module
d6e2c707 1088elif test "x$enable_module" = "xforce"; then
1089 enable_trigger="yes"
1090else
1091 enable_trigger=$enable_module
1092fi
1093
1094if test "x$enable_trigger" = "xyes" ; then
1095 AC_DEFINE(HLT_TRIGGER)
1096 ALITRIGGER_LIBS=$ALIHLTMODULE_LIBS
adec4ad4 1097else
1098 enable_module=$enable_trigger
d6e2c707 1099fi
1100AM_CONDITIONAL(EN_HLT_TRIGGER, test x$enable_trigger = xyes)
1101AC_MSG_CHECKING([whether to compile Trigger library])
1102AC_MSG_RESULT([$enable_module])
1103AC_SUBST([ALITRIGGER_LIBS])
1104
ec6160d5 1105dnl ------------------------------------------------------------------
1106AH_TEMPLATE([HLT_GLOBAL],[hlt global library])
1107
1108ALIGLOBAL_LIBS=
1109CHECK_HLTMODULE([global],
1110 [], [$ALIROOT_CPPFLAGS],
1111 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
f4b540e9 1112 [PHOSUtils ], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
ec6160d5 1113 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
1114
1115if test "x$enable_module" = "xmissheader"; then
1116 enable_module="no...header.missing"
1117 enable_global=$enable_module
1118elif test "x$enable_module" = "xforce"; then
1119 enable_global="yes"
1120else
1121 enable_global=$enable_module
1122 if test "x$enable_global" = "xyes" ; then
1123 AC_LANG_PUSH(C++)
1124 save_CPPFLAGS="$CPPFLAGS"
1125 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS"
1126 AC_MSG_CHECKING([for required functions in AliESDtrack])
1127 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliESDtrack.h>],
1128 [AliESDtrack t;
1129 t.SetGlobalChi2(0)])],
1130 [],
1131 [enable_global="no...requires.AliRoot>v4-17-Release"])
1132 AC_MSG_RESULT([$enable_global])
1133 AC_LANG_POP(C++)
1134 CPPFLAGS="$save_CPPFLAGS"
1135 fi
1136fi
1137
1138if test "x$enable_global" = "xyes" ; then
1139 AC_DEFINE(HLT_GLOBAL)
1140 ALIGLOBAL_LIBS=$ALIHLTMODULE_LIBS
1141else
1142 enable_module=$enable_global
1143fi
1144AM_CONDITIONAL(EN_HLT_GLOBAL, test x$enable_global = xyes)
1145AC_MSG_CHECKING([whether to compile Global library])
1146AC_MSG_RESULT([$enable_module])
1147AC_SUBST([ALIGLOBAL_LIBS])
1148
33daad3d 1149dnl ------------------------------------------------------------------
1150AH_TEMPLATE([HLT_JET],[hlt jet library])
1151
04cbe3ac 1152ALIFASTJET_HEADER=
1153ALIFASTJET_INCFLAGS=
1154ALIFASTJET_LIBS=
1155ALIFASTJET_LDFLAGS=
1156AC_ARG_WITH(fastjet, [installation path of the FASTJET package],
1157 [ test "x$with_fastjet" != "xno" && export FASTJET=$with_fastjet],
1158 [ test -n $FASTJET && with_fastjet=$FASTJET ])
1159
1160if test "x$with_fastjet" != "x" && test "x$with_fastjet" != "xno" ; then
1161 ALIFASTJET_INCFLAGS="-I${with_fastjet}/include"
3665c6c3 1162 ALIFASTJET_HEADER="fastjet/PseudoJet.hh"
04cbe3ac 1163 ALIFASTJET_LDFLAGS="-L${with_fastjet}/lib"
1164 ALIFASTJET_LIBS="CGAL fastjet"
33daad3d 1165else
04cbe3ac 1166 with_fastjet=no
33daad3d 1167fi
1168
04cbe3ac 1169CHECK_HLTMODULE([jet],
1170 [$ALIFASTJET_HEADER], [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/JETAN $ALIFASTJET_INCFLAGS],
02bfa57b 1171 [$ALIFASTJET_LIBS], [$ROOTLIBDIR $ALIFASTJET_LDFLAGS], [$ROOTLIBS $ADD_ROOTLIBS],
593a08ea 1172 [AOD ESD ANALYSIS ANALYSISalice JETAN],
d927dd07 1173 [-L$ROOTLIBDIR $ALIROOT_LDFLAGS $ALIFASTJET_LDFLAGS -L$ALICE_ROOT/lib/tgt_$ALICE_TARGET],
04cbe3ac 1174 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
33daad3d 1175
1176if test "x$enable_module" = "xmissheader"; then
1177 enable_module="no...header.missing"
1178 enable_jet=$enable_module
1179elif test "x$enable_module" = "xforce"; then
1180 enable_jet="yes"
1181else
1182 enable_jet=$enable_module
1183fi
1184
04cbe3ac 1185if test "x$enable_jet" = "xyes" ; then
33daad3d 1186 AC_DEFINE(HLT_JET)
1187 ALIJET_LIBS="$ALIHLTMODULE_LIBS"
04cbe3ac 1188
1189 if test "x$with_fastjet" != "xno"; then
1190 AC_DEFINE(HAVE_FASTJET)
1191 AC_DEFINE(WITHFASTJET)
02bfa57b 1192 ALIJET_LIBS="$ALIJET_LIBS $FASTJET_LDFLAGS"
04cbe3ac 1193 fi
1194 AC_MSG_CHECKING([compilation with FASTJET package])
1195 AC_MSG_RESULT($with_fastjet)
1196
33daad3d 1197else
1198 enable_module=$enable_jet
1199fi
1200
33daad3d 1201AM_CONDITIONAL(EN_HLT_JET, test x$enable_jet = xyes)
1202AC_MSG_CHECKING([whether to compile Jet library])
1203AC_MSG_RESULT([$enable_module])
1204AC_SUBST([ALIJET_LIBS])
1205
d6e2c707 1206dnl ------------------------------------------------------------------
1207AH_TEMPLATE([HLT_ITS],[hlt its library])
1208
1209ALIITS_LIBS=
1210CHECK_HLTMODULE([its],
ae5bf1dd 1211 [AliITSCompressRawDataSDD.h], [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/ITS],
cad2d06c 1212 [Gui RAWDatasim], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
b3ac448a 1213 [ITSbase ITSrec ITSsim], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
d6e2c707 1214 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
1215
1216if test "x$enable_module" = "xmissheader"; then
1217 enable_module="no...header.missing"
50a3793d 1218 enable_its=$enable_module
d6e2c707 1219elif test "x$enable_module" = "xforce"; then
1220 enable_its="yes"
1221else
1222 enable_its=$enable_module
adec4ad4 1223 if test "x$enable_its" = "xyes" ; then
1224 AC_LANG_PUSH(C++)
1225 save_CPPFLAGS="$CPPFLAGS"
1226 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I$ALICE_ROOT/ITS"
1227 # changes in the AliVertexer base class revision 26414, Thu Jun 5 15:36:18 2008
1228 # require AliVertexer::GetNominalPos()
1229 AC_MSG_CHECKING([for required functions in AliITSVertexer])
1230 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliITSVertexerZ.h>],
1231 [AliITSVertexerZ v;
1232 v.GetNominalPos()])],
1233 [],
1234 [enable_its="no...requires.AliRoot>v4-13-Release"])
1235 AC_MSG_RESULT([$enable_its])
1236 AC_LANG_POP(C++)
1237 CPPFLAGS="$save_CPPFLAGS"
1238 fi
d6e2c707 1239fi
1240
1241if test "x$enable_its" = "xyes" ; then
1242 AC_DEFINE(HLT_ITS)
1243 ALIITS_LIBS=$ALIHLTMODULE_LIBS
adec4ad4 1244else
1245 enable_module=$enable_its
d6e2c707 1246fi
1247AM_CONDITIONAL(EN_HLT_ITS, test x$enable_its = xyes)
1248AC_MSG_CHECKING([whether to compile ITS library])
1249AC_MSG_RESULT([$enable_module])
1250AC_SUBST([ALIITS_LIBS])
1251
e89e6b23 1252dnl ------------------------------------------------------------------
1253AH_TEMPLATE([HLT_COMP],[hlt comp library])
1254
1255ALICOMP_LIBS=
1256CHECK_HLTMODULE([comp],
1257 [], [$ALIROOT_CPPFLAGS],
1258 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
1259 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
1260 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
1261
1262if test "x$enable_module" = "xmissheader"; then
c6b46c3f 1263 enable_module="no...header.missing"
50a3793d 1264 enable_comp=$enable_module
c6b46c3f 1265elif test "x$enable_module" = "xforce"; then
1266 enable_comp="yes"
e89e6b23 1267else
1268 enable_comp=$enable_module
1269fi
1270
1271if test "x$enable_comp" = "xyes" ; then
1272 AC_DEFINE(HLT_COMP)
1273 ALICOMP_LIBS=$ALIHLTMODULE_LIBS
adec4ad4 1274else
1275 enable_module=$enable_comp
e89e6b23 1276fi
1277AM_CONDITIONAL(EN_HLT_COMP, test x$enable_comp = xyes)
1278AC_MSG_CHECKING([whether to compile comp library])
c6b46c3f 1279AC_MSG_RESULT([$enable_module])
e89e6b23 1280AC_SUBST([ALICOMP_LIBS])
1281
b521659f 1282dnl ------------------------------------------------------------------
fc455fba 1283AC_MSG_CHECKING([whether to disable AliRoot logging])
1284AH_TEMPLATE([NOALIROOT_LOGGING],[disable AliRoot logging])
1285AC_ARG_ENABLE(aliroot-logging,
1286 [AC_HELP_STRING([--disable-aliroot-logging],
1287 [disable logging through AliRoot logging methods])],
1288 [],[enable_aliroot_logging=no])
c018a1bd 1289if test "x$have_aliroot" = "xno" ; then
1290 enable_aliroot_logging=yes # this means 'disable'
1291fi
fc455fba 1292if test "x$enable_aliroot_logging" != "xno" ; then
1293 AC_DEFINE(NOALIROOT_LOGGING)
b521659f 1294fi
fc455fba 1295AM_CONDITIONAL(NOALIROOT_LOGGING, test x$enable_aliroot_logging != no)
1296AC_MSG_RESULT([$enable_aliroot_logging])
b521659f 1297
1298dnl ------------------------------------------------------------------
1299AC_MSG_CHECKING([whether to enable saving MC data through the chain])
1300AH_TEMPLATE([DOMC],[MC saving])
1301AC_ARG_ENABLE(mc-saving,
1302 [AC_HELP_STRING([--enable-mc-saving],
1303 [enable saving MC data through the chain])],
1304 [],[enable_mc_saving=no])
1305if test "x$enable_mc_saving" = "xyes" ; then
1306 AC_DEFINE(DOMC)
1307fi
1308AC_MSG_RESULT([$enable_mc_saving])
1309
b521659f 1310dnl ------------------------------------------------------------------
b521659f 1311dnl certainly something old, but we keep the define
1312AC_MSG_CHECKING([whether to use ROWHOUGH])
1313AH_TEMPLATE([USEROWHOUGH],[HLT ROWHOUGH])
1314AC_ARG_ENABLE(rowhough,
1315 [AC_HELP_STRING([--enable-rowhough],
1316 [use ROWHOUGH ])],
1317 [],[enable_rowhough=no])
1318if test "x$enable_rowhough" = "xyes" ; then
1319 AC_DEFINE(USEROWHOUGH)
1320fi
1321AC_MSG_RESULT([$enable_rowhough])
1322
53feaef5 1323dnl ------------------------------------------------------------------
1324dnl The ROOTVERSION and ALIROOTVERSION defines were used by the old
1325dnl stand-alone build system. This is most likely something old we can
1326dnl get rid off later, or do something more reasonable. Since the define
1327dnl needs the quotes they have to be escaped. This works well for the
1328dnl Makefile but not for the configure script. So we have to add the
1329dnl defines after all the other checks.
1330CPPFLAGS="$CPPFLAGS -DROOTVERSION=\\\"`${ROOTCONF} --version`\\\""
1331if test ! "x$have_aliroot" = "xno" ; then
1332 CPPFLAGS="$CPPFLAGS -DALIROOTVERSION=\\\"Unknown\\\""
1333fi
1334
b521659f 1335dnl ------------------------------------------------------------------
1336dnl
1337dnl Documentation
1338dnl
1339AC_ARG_VAR(DOXYGEN, The Documentation Generator)
1340AC_PATH_PROG(PERL, perl)
1341AC_PATH_PROG(DOXYGEN, doxygen)
5894eaa5 1342AC_ARG_ENABLE(dot,
1343 [AC_HELP_STRING([--enable-dot],
1344 [enable dot documentation generator])],
1345 [],[enable_dot=no])
b521659f 1346HAVE_DOT=NO
1347DOT_PATH=
1348AC_PATH_PROG(DOT, dot)
5894eaa5 1349if test "x$DOT" != "x" && test "x$enable_dot" = "xyes" ; then
b521659f 1350 HAVE_DOT=YES
1351 DOT_PATH=`dirname $DOT`
1352fi
ae1c1854 1353
1354AC_MSG_CHECKING([for documentation mode])
1355AC_ARG_ENABLE(doc,
1356 [AC_HELP_STRING([--disable-doc],
1357 [disable documentation build; monolithic build --enable-doc=mono ])],
1358 [],[enable_doc=modules])
fb345ed7 1359
ae1c1854 1360if test "x$DOXYGEN" = "x" ; then
1361 enable_doc=no.doxygen
fb345ed7 1362elif test "x$enable_doc" = "xyes" ; then
1363 enable_doc=yes
ae1c1854 1364elif test ! "x$enable_doc" = "xmono" && \
1365 test ! "x$enable_doc" = "xmodules" && \
1366 test ! "x$enable_doc" = "xno"; then
1367 enable_doc=no
1368 AC_MSG_WARN([unknown option])
1369fi
1370if test "x$enable_doc" = "xno" ; then
1371 enable_doc=off
1372 DOXYGEN=
1373fi
1374
1375AC_MSG_RESULT([$enable_doc])
1376AM_CONDITIONAL(MONOLITHIC_DOC, test "x$enable_doc" = "xmono")
1377AM_CONDITIONAL(HAVE_DOXYGEN, test ! "x$DOXYGEN" = "x")
b521659f 1378AC_SUBST([HAVE_DOT])
1379AC_SUBST([DOT_PATH])
1380
90ebac25 1381dnl HAVE_SRC_SUBDIR=${abs_top_srcdir}/src
1382dnl echo $HAVE_SRC_SUBDIR
1383dnl if ! test -d $HAVE_SRC_SUBDIR; then
1384dnl HAVE_SRC_SUBDIR=
1385dnl fi
1386dnl AC_SUBST([HAVE_SRC_SUBDIR])
1387
2bbbadd1 1388dnl ------------------------------------------------------------------
7233bc62 1389AC_MSG_NOTICE([---------------------------------------------- ])
1390AC_MSG_NOTICE([ build summary ])
1391AC_MSG_NOTICE([---------------------------------------------- ])
1392
b521659f 1393AC_CONFIG_FILES([Makefile
1394 BASE/Makefile
53feaef5 1395 BASE/setenv.sh
1396 BASE/setenv.csh
2be16a33 1397 BASE/HOMER/Makefile
242bb794 1398 BASE/util/Makefile
4b31e06b 1399 BASE/util/test/Makefile
d098ebd4 1400 BASE/interface/Makefile
853121af 1401 BASE/test/Makefile
1a21074a 1402 BASE/interface/test/Makefile
b521659f 1403 doc/Makefile
2efb85be 1404 doc/doxygen.conf
1405 doc/doxymodule.conf])
b521659f 1406
7233bc62 1407dnl AliRoot and installation directory for libraries
1408dnl
1409AC_MSG_NOTICE([AliRoot: $have_aliroot])
1410AM_CONDITIONAL(HAVE_ALIROOT, test "x$have_aliroot" != "xno" )
1411if test "x$have_aliroot" != "xno"; then
1412 AC_CONFIG_FILES([sim/Makefile
1413 rec/Makefile
652cf9d2 1414 rec/test/Makefile
436c2d0c 1415 rec/startAliEVE-barrel-tracks.sh
7233bc62 1416 shuttle/Makefile
ff4edcee 1417 pendolino/Makefile
ce5f90bf 1418 benchmark/Makefile
ed292d06 1419 QA/Makefile
7233bc62 1420 ])
1421fi
1422if test "x$prefix" != "xNONE" && test $ALICE_ROOT = $prefix ; then
1423libdir=\${exec_prefix}/lib/tgt_$ALICE_TARGET
1424AC_MSG_NOTICE([libdir set to $libdir])
1425fi
1426
1427AC_MSG_NOTICE([compile sample library: $enable_sample])
1428if test "x$enable_sample" = "xyes"; then
1429 AC_CONFIG_FILES([SampleLib/Makefile])
1430fi
1431
652cf9d2 1432AC_MSG_NOTICE([compile RCU library: $enable_rcu])
1433if test "x$enable_rcu" = "xyes"; then
1434 AC_CONFIG_FILES([RCU/Makefile
1435 RCU/test/Makefile
1436 ])
1437fi
1438
7233bc62 1439AC_MSG_NOTICE([compile TPC library: $enable_tpc])
1440if test "x$enable_tpc" = "xyes"; then
1441 AC_CONFIG_FILES([TPCLib/Makefile
1442 TPCLib/test/Makefile
1443 TPCLib/mapping2array.cxx
b658d7e4 1444 TPCLib/EVE/Makefile
32e0c022 1445 TPCLib/calibration/Makefile
7233bc62 1446 ])
1447fi
1448
fe8738cf 1449AC_MSG_NOTICE([compile CALO library: $enable_calo])
1450if test "x$enable_calo" = "xyes"; then
1451 AC_CONFIG_FILES([CALO/Makefile
1452 CALO/test/Makefile])
1453fi
1454
7233bc62 1455AC_MSG_NOTICE([compile PHOS library: $enable_phos])
1456if test "x$enable_phos" = "xyes"; then
1457 AC_CONFIG_FILES([PHOS/Makefile])
1458fi
1459
fe8738cf 1460AC_MSG_NOTICE([compile EMCAL library: $enable_emcal])
1461if test "x$enable_emcal" = "xyes"; then
1462 AC_CONFIG_FILES([EMCAL/Makefile])
1463fi
1464
7233bc62 1465AC_MSG_NOTICE([compile TRD library: $enable_trd])
1466if test "x$enable_trd" = "xyes"; then
1467 AC_CONFIG_FILES([TRD/Makefile])
1468fi
1469
50a3793d 1470AC_MSG_NOTICE([compile FMD library: $enable_fmd])
1471if test "x$enable_fmd" = "xyes"; then
1472 AC_CONFIG_FILES([FMD/Makefile])
1473fi
1474
7233bc62 1475AC_MSG_NOTICE([compile MUON library: $enable_muon])
1476if test "x$enable_muon" = "xyes"; then
1477 AC_CONFIG_FILES([MUON/Makefile])
1478fi
1479
1480AC_MSG_NOTICE([compile ITS library: $enable_its])
1481if test "x$enable_its" = "xyes"; then
1482 AC_CONFIG_FILES([ITS/Makefile])
1483fi
1484
1485AC_MSG_NOTICE([compile trigger library: $enable_trigger])
1486if test "x$enable_trigger" = "xyes"; then
0a76630e 1487 AC_CONFIG_FILES([trigger/Makefile
1488 trigger/test/Makefile])
7233bc62 1489fi
1490
ec6160d5 1491AC_MSG_NOTICE([compile global library: $enable_global])
1492if test "x$enable_global" = "xyes"; then
1493 AC_CONFIG_FILES([global/Makefile])
1494fi
1495
33daad3d 1496AC_MSG_NOTICE([compile jet library: $enable_jet])
1497if test "x$enable_jet" = "xyes"; then
1498 AC_CONFIG_FILES([JET/Makefile])
1499fi
1500
7233bc62 1501AC_MSG_NOTICE([compile comp library: $enable_comp])
1502if test "x$enable_comp" = "xyes"; then
1503 AC_CONFIG_FILES([comp/Makefile])
1504fi
b521659f 1505
1506AC_OUTPUT
1507dnl
1508dnl EOF
1509dnl
1510