1 dnl -*- mode: autoconf -*-
4 dnl template for the configuration script for the Alice HLT
5 dnl framework and components
7 dnl ------------------------------------------------------------------
8 AC_INIT([Alice High Level Trigger] , [0.8-dev], [Matthias.Richter@ift.uib.no], alice-hlt)
10 dnl ------------------------------------------------------------------
11 dnl the package from CVS contains the old Makefiles as well. In order to
12 dnl prevent them from becoming overwritten, we require a separate build
14 if test "`dirname $0`" = "." ; then
15 AC_ERROR([please run the script from a separate build directory])
18 dnl ------------------------------------------------------------------
20 AC_PREFIX_DEFAULT(${PWD})
21 AC_CONFIG_SRCDIR(BASE/AliHLTComponent.cxx)
29 AM_CONDITIONAL(STANDALONE_SAMPLELIB, test 0 )
31 dnl ------------------------------------------------------------------
32 dnl A warning posted into the auto-generated files
33 dnl Does NOT concern this file ;-)
34 AUTOGENERATED_WARNING="!!!!!!! DO NOT EDIT THIS FILE !!!!!!"
35 AC_SUBST([AUTOGENERATED_WARNING])
37 dnl ------------------------------------------------------------------
41 ROOT_PATH(, [have_root=1], [AC_ERROR([Stop! The HLT package needs ROOT.])])
42 AM_CONDITIONAL(HAVE_ROOT, test "x$have_root" = "x1" )
44 ROOTBINDIR=`dirname $ROOTEXEC`
45 AC_SUBST([ROOTBINDIR])
47 dnl test for additional required root libraries and headers
49 if test "x$have_root" = "x1"; then
51 save_CPPFLAGS=$CPPFLAGS
54 CPPFLAGS=`echo $save_CPPFLAGS; for i in ${ROOTINCDIR}; do echo -n "-I$i " ; done`
56 # we check for the libSTEER library which is linked to
57 # - the ROOT libs libGeom libMinuit libVMC libEG
58 # - the AliRoot libESD libRAWData (libRAWDatarec from v4-04-Rev-07)
59 # - ROOT libCint needs also libdl
60 # - from Nov 1 2006 TTreeFormula is needed by AliTagAnalysis and requires
62 # - from Jan 07 libESD also depends on libXMLIO
63 # - libSTEER depends on libProofPlayer since Oct 2007 (after v4-07-Release)
64 ROOT_CHECKLIBS='Geom Minuit EG VMC TreePlayer XMLIO Thread Proof ProofPlayer'
65 for CHECKLIB in $ROOT_CHECKLIBS ; do
66 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR}"
67 LIBS="$save_LIBS $ROOTLIBS $ADD_ROOTLIBS"
68 AC_CHECK_LIB([$CHECKLIB],[_init], [ADD_ROOTLIBS="$ADD_ROOTLIBS -l$CHECKLIB"])
71 # TBuffer.h has been made pure virtual in root v5-15-02 and one
72 # has to derive from TBufferFile.h (needed for BASE/AliHLTMessage.h)
73 AC_CHECK_HEADERS([TBufferFile.h])
75 # TView.h has been made pure virtual right after root v5-15-02 and one
76 # has to derive from TView3D.h (needed for TPCLib/OnlineDisplay/AliHLTTPCDisplay3D)
77 AC_CHECK_HEADERS([TView3D.h])
79 CPPFLAGS=$save_CPPFLAGS
85 dnl ------------------------------------------------------------------
86 # TODO: make this configurable through arguments
87 #Define whether you want to run with ALIROOT or only ROOT
88 AH_TEMPLATE([ALIHLT_USEPACKAGE],[running environment])
89 ALIHLT_USEPACKAGE=ALIROOT
90 #ALIHLT_USEPACKAGE=ROOT
91 #ALIHLT_USEPACKAGE=STANDALONE
92 AC_DEFINE(use_aliroot)
94 CPPFLAGS="$CPPFLAGS ${ROOTCFLAGS}"
96 dnl ------------------------------------------------------------------
97 dnl check for AliRoot features
100 AC_ARG_WITH(aliroot,[ --with-aliroot top of the AliRoot installation],
101 [test -d $with_aliroot && ALICE_ROOT=$with_aliroot],
104 if test "x$ALICE_ROOT" != "x" && test -d $ALICE_ROOT ; then
105 dnl ------------------------------------------------------------------
106 dnl Try to estimate the system architecture
107 case $host_os:$host_cpu in
108 linux*:x86_64*) alice_target='linuxx8664gcc' ;;
109 linux*) alice_target='linux' ;;
110 *) alice_target='unknown' ;;
112 if test "x$alice_target" = "xunknown" ; then
113 if test -z $ALICE_TARGET ; then
114 AC_MSG_ERROR([Can not estimate system architecture.
115 To avoid the problem, set the ALICE_TARGET variable appropriately.
116 Please send the following information to Matthias.Richter@ift.uib.no:
117 ${PACKAGE}: no AliRoot target definition for os=$host_os and cpu=$host_cpu ])
119 AC_MSG_NOTICE([Unknown system architecture.
120 Please send the following information to Matthias.Richter@ift.uib.no:
121 ${PACKAGE}: no AliRoot target definition for os=$host_os and cpu=$host_cpu ])
124 if test "x$ALICE_TARGET" != "x" && test "x$ALICE_TARGET" != "x$alice_target" ; then
125 AC_MSG_WARN([The ALICE_TARGET variable does not match your current system
126 overriding $ALICE_TARGET by $alice_target])
128 ALICE_TARGET=$alice_target
130 ALIROOTBINDIR=${ALICE_ROOT}/bin/tgt_${ALICE_TARGET}
131 ALIROOTLIBDIR=${ALICE_ROOT}/lib/tgt_${ALICE_TARGET}
132 ALIROOTINCDIR=${ALICE_ROOT}/include
133 test -d ${ALIROOTBINDIR} || AC_MSG_WARN([can not find AliRoot binary directory $ALIROOTBINDIR])
134 test -d ${ALIROOTLIBDIR} || AC_MSG_WARN([can not find AliRoot library directory $ALIROOTLIBDIR])
135 test -d ${ALIROOTINCDIR} || AC_MSG_WARN([can not find AliRoot include directory $ALIROOTINCDIR])
138 AC_MSG_CHECKING([for AliRoot])
139 if test "x$ALICE_ROOT" != "x" \
140 && test -d ${ALIROOTBINDIR} \
141 && test -d ${ALIROOTLIBDIR} \
142 && test -d ${ALIROOTINCDIR}; then
143 have_aliroot=$ALICE_ROOT
149 AC_MSG_RESULT([$have_aliroot])
151 if test ! "x$have_aliroot" = "xno" ; then
152 ALIROOT_CPPFLAGS="-I${ALIROOTINCDIR} -I${ALICE_ROOT}/RAW"
153 ALIROOT_LDFLAGS="-L${ALIROOTLIBDIR}"
154 ALIROOT_LIBS="-lESD $ADD_ROOTLIBS"
155 save_CPPFLAGS=$CPPFLAGS
156 save_LDFLAGS=$LDFLAGS
158 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS"
159 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
161 # check for certain AliRoot libraries/files/features
162 # libSTEERBase present since Aug 7 2007
163 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
165 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
167 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
169 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
171 # splitted RAW libraries since AliRoot version v4-04-Rev-07 (09.08.2006)
173 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
175 AC_CHECK_LIB([$CHECKLIB],[_init],
176 [ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"
177 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
179 AC_CHECK_LIB([$CHECKLIB],[_init],
180 [ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"
181 AC_DEFINE(HAVE_ALIRAWDATA)
182 have_alirawdata=$CHECKLIB])],
183 [# second pass with -RAWData
185 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $CHECKLIB -lSTEER"
186 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliRawReaderMemory.h>
187 #include <AliRawReaderFile.h>
188 #include <AliRawReaderDate.h>
189 #include <AliRawReaderRoot.h>],
190 [AliRawReaderMemory mreader;
191 AliRawReaderFile freader;
192 AliRawReaderDate dreader(NULL,0);
193 AliRawReaderRoot rreader(NULL,0);])],
194 [AC_DEFINE(HAVE_ALIRAWDATA)
195 ALIROOT_LIBS="$ALIROOT_LIBS $CHECKLIB"
196 have_alirawdata=$CHECKLIB],
197 [have_alirawdata=no])
198 ]) dnl AC_CHECK_LIB RAWDatabase
199 AC_MSG_CHECKING([for AliRawReader classes in RAWData libraries])
200 AC_MSG_RESULT([$have_alirawdata])
202 # CBD library is present since AliRoot version v4-05-00 (02.06.2006)
203 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS -lSTEER"
205 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
207 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
209 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"],[have_aliroot=no])
212 dnl check whether AliLog supports notification callback
214 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
215 have_alilog_notification=no
216 if test ! "x$have_aliroot" = "xno" ; then
217 AC_MSG_CHECKING([whether AliLog supports notification callback])
218 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliLog.h>],
219 [AliLog::AliLogNotification fct])],
220 [have_alilog_notification=yes],
221 [AC_DEFINE(NO_ALILOG_NOTIFICATION)])
222 AC_MSG_RESULT([$have_alilog_notification])
225 if test "x$have_aliroot" = "xno" ; then
226 # 2007-08-18 dont reset ALIROOT_CPPFLAGS in order to allow compilation
227 # but library dependencies might not be resolved completely
229 AC_MSG_WARN([some of the AliRoot library dependencies are not resolved.
230 This can happen from time to time due to development in AliRoot. You can
231 force compilation of detector libs by --enable-<detector>, but be aware
232 of unresolved references at runtime.])
233 AC_MSG_WARN([ ------------------------------------------ ])
234 AC_MSG_WARN([ Report this to $PACKAGE_BUGREPORT ])
235 AC_MSG_WARN([ please include config.log ])
236 AC_MSG_WARN([ ------------------------------------------ ])
242 dnl required header files and libraries for modules
244 if test ! "x$have_aliroot" = "xno" ; then
245 # the HLTTPCLib needs to link agains TPCbase and TPCrec
246 # TPC library for AliTPCParam and AliSimDigits used in
247 # AliHLTTPCFileHandler.h and AliHLTTPCDisplay.cxx
248 # fram May 07 TPCbase depends on libGui.so
249 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/TPC"
251 AC_MSG_CHECKING(for required classes in TPC libraries)
252 if test ! "x$have_alitpc" = "xno" ; then
253 ALITPC_LIBS="-lGui -lTPCbase -lTPCrec"
254 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $ALITPC_LIBS"
255 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliSimDigits.h>
256 #include <AliTPCParam.h>
257 #include <AliTPCParamSR.h>
258 #include <AliTPCDigitsArray.h>
259 #include <AliTPCClustersArray.h>
260 #include <AliTPCcluster.h>
261 #include <AliTPCClustersRow.h>],
264 AliTPCParamSR paramsr;
265 AliTPCDigitsArray digarray;
266 AliTPCClustersArray clustarray;
268 AliTPCClustersRow row])],
269 [AC_DEFINE(HAVE_ALITPC)],
273 AC_MSG_RESULT($have_alitpc)
275 AC_CHECK_HEADERS([AliTPCCalibPulser.h], [], [AC_DEFINE(HAVE_NOT_ALITPCCALIBPULSER)])
276 AC_CHECK_HEADERS([AliTPCCalibPedestal.h], [], [AC_DEFINE(HAVE_NOT_ALITPCCALIBPEDESTAL)])
279 if test ! "x$have_aliroot" = "xno" ; then
280 # the TPCLib/AliHLTTPCRawReader needs the actual Pad layout of the TPC
281 # which is stored in the TPC/mapping/Patchx.data files from
282 # AliRoot version v4-04-Release (May 2006)
283 AH_TEMPLATE([HAVE_TPC_MAPPING],[TPC pad mapping available])
284 TPC_PAD_MAPPING_PATH=$have_aliroot/TPC/mapping
285 AC_CHECK_FILE( [$TPC_PAD_MAPPING_PATH/Patch0.data],
286 [have_tpc_mapping=yes
287 AC_SUBST(TPC_PAD_MAPPING_PATH)
288 AC_DEFINE(HAVE_TPC_MAPPING)],
292 AC_MSG_CHECKING([for TPC mapping layout])
293 AC_MSG_RESULT([$have_tpc_mapping])
295 if test ! "x$have_alirawdata" = "xno" ; then
296 # check for header files needed by the TPCLib/AliHLTTPCDigitReaderPacket
297 # the header file has been moved to the TPC module
298 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I${ALICE_ROOT}/TPC"
299 # AliRawReaderMemory.h AliRawReaderFile.h already checked
300 #AC_CHECK_HEADERS([AliRawReaderMemory.h AliRawReaderFile.h AliTPCRawStream.h])
301 AC_CHECK_HEADERS([AliTPCRawStream.h])
305 dnl Check for the interface of AliExternalTrackParam which has been changed
306 dnl in revision 1.17 of AliExternalTrackParam.h (AliRoot version v4-05-04
308 externaltrackparam_version=1
309 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliExternalTrackParam.h>],
310 [AliExternalTrackParam trackparam;
311 Double_t param[[5]]; Double_t covar[[15]];
312 trackparam.Set(0., 0., param, covar);])],
313 [externaltrackparam_version=2],
314 [AC_DEFINE(EXTERNALTRACKPARAM_V1)])
315 AC_MSG_CHECKING(for version of AliExternalTrackParam)
316 AC_MSG_RESULT($externaltrackparam_version)
318 CPPFLAGS=$save_CPPFLAGS
319 LDFLAGS=$save_LDFLAGS
324 AC_SUBST([ALICE_ROOT])
325 AC_SUBST([ALIROOT_CPPFLAGS])
326 AC_SUBST([ALIROOT_LDFLAGS])
327 AC_SUBST([ALIROOTBINDIR])
328 AC_SUBST([ALIROOTLIBDIR])
329 AC_SUBST([ALIROOT_LIBS])
330 AM_CONDITIONAL(USE_TPC_MAPPING, test x$have_tpc_mapping = xyes)
332 HLTBASE_CPPFLAGS='-I${top_srcdir}/BASE'
334 AC_SUBST([HLTBASE_CPPFLAGS])
335 AC_SUBST([HLTBASE_LDFLAGS])
337 dnl ------------------------------------------------------------------
338 dnl check for the HLT PubSub Framework
339 dnl namely for the existence of the HOMER library
340 dnl from Sep 2007, the HOMER lib has been incorporated into the alice-hlt
341 dnl package. It os though possible to choose an external. library
342 dnl In order to make the origni of the HOMER lib clear, the one in AliRoot
343 dnl got the name libAliHLTHOMER
344 AC_MSG_CHECKING([for HLT PubSub Framework])
345 AC_ARG_WITH(pubsub, [installation path of the HLT PubSub framework],
347 [ test -n $ALIHLT_DC_DIR && with_pubsub=$ALIHLT_DC_DIR ])
348 if test -z $with_pubsub || ! test -d $with_pubsub ; then
351 AC_MSG_RESULT([$with_pubsub])
355 AH_TEMPLATE([HAVE_HOMERREADER],[the HLT PubSub Homer Reader interface])
356 if test "x$with_pubsub" != "xno" ; then
357 save_CPPFLAGS=$CPPFLAGS
358 save_LDFLAGS=$LDFLAGS
360 # currently the different versions of the HLT PubSub framework have a different
362 if test -d ${with_pubsub}/include/HOMER ; then
363 # the 'early' location of the include files with separated HOMER sub dirs
364 HOMER_INCDIRS="${with_pubsub}/include/HOMER ${with_pubsub}/include/HOMER/reader"
365 elif test -d ${with_pubsub}/include/Util/HOMER ; then
366 # location for HLT Framework versions after Sep 2006
367 HOMER_INCDIRS="${with_pubsub}/include/Util/HOMER"
368 elif test -d ${with_pubsub}/src/Util/HOMER/include ; then
369 # fall back if include files were not installed (versions after Sep 06)
370 HOMER_INCDIRS="${with_pubsub}/src/Util/HOMER/include"
372 # fall back if include files were not installed (versions before Sep 06)
373 HOMER_INCDIRS="${with_pubsub}/src/Util/HOMER/reader/include ${with_pubsub}/src/Util/HOMER/data/include"
375 HOMER_CPPFLAGS=`for i in ${HOMER_INCDIRS}; do echo -n "-I$i " ; done`
377 AC_ARG_ENABLE(pubsub-debug,
378 [AC_HELP_STRING([--disable-pubsub-debug],
379 [force the production version of the PubSub framework])],
380 [],[enable_pubsub_debug=yes])
382 HOMER_TARGET="`uname -s`-`uname -m`"
383 AC_MSG_CHECKING([for HLT PubSub Framework release type])
384 if test -d "${with_pubsub}/lib/${HOMER_TARGET}-release" ; then
385 homer_type="production"
386 HOMER_TARGET="${HOMER_TARGET}-release"
387 elif test "x$enable_pubsub_debug" = "xyes" && test -d "${with_pubsub}/lib/${HOMER_TARGET}-debug" ; then
389 HOMER_TARGET="${HOMER_TARGET}-debug"
391 AC_MSG_RESULT([${homer_type}])
392 HOMERREADER_HEADER=HOMERReader.h
393 HOMER_BINDIR="${with_pubsub}/bin/${HOMER_TARGET}"
394 HOMER_LIBDIR="${with_pubsub}/lib/${HOMER_TARGET}"
395 HOMER_LDFLAGS="-L${HOMER_LIBDIR}"
396 CPPFLAGS="$save_CPPFLAGS $HOMER_CPPFLAGS"
397 LDFLAGS="$save_LDFLAGS $HOMER_LDFLAGS"
401 AC_CHECK_HEADER([$HOMERREADER_HEADER],
402 [ AC_CHECK_LIB([HOMER],[_init],
404 HOMER_LIBS="-lHOMER"],
405 [ AC_CHECK_LIB([HOMERReader],[_init],
407 HOMER_LIBS="-lHOMERReader"])])
408 LIBS="$LIBS $HOMER_LIBS"
409 AC_MSG_CHECKING([version of HOMER library])
410 dnl The Homer library has no versioning, so we do our own
411 dnl version description
412 dnl ----------------------------------------------------------------------
413 dnl 1 inintial version
414 dnl 2 GetBlockStatusFlags added to the interface
415 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <HOMERReader.h>],
416 [HOMERReader reader("dummy", 0);
417 reader.GetBlockStatusFlags(0);])],
420 AC_MSG_RESULT([$HOMER_VERSION])
422 [HOMERREADER_HEADER=]) #AC_CHECK_HEADER([$HOMERREADER_HEADER])
426 dnl no pubsub version defined, check if the HOMER lib is available in AliRoot
428 HOMER_CPPFLAGS="-I`(cd $topdir; pwd)`/BASE/HOMER"
429 HOMERREADER_HEADER=AliHLTHOMERReader.h
430 HOMER_INBUILT_LIB=`pwd`/BASE/HOMER/libAliHLTHOMER.la
436 if test "x$with_homer" = "xno" ; then
441 HOMER_CPPFLAGS="$HOMER_CPPFLAGS -DHOMER_VERSION=$HOMER_VERSION"
442 AC_DEFINE(HAVE_HOMERREADER)
444 CPPFLAGS="$save_CPPFLAGS"
445 LDFLAGS="$save_LDFLAGS"
448 AC_SUBST([HOMERREADER_HEADER])
449 AC_SUBST([HOMER_INBUILT_LIB])
450 AC_SUBST([HOMER_CPPFLAGS])
451 AC_SUBST([HOMER_LDFLAGS])
452 AC_SUBST([HOMER_LIBDIR])
453 AC_SUBST([HOMER_BINDIR])
454 AC_SUBST([HOMER_LIBS])
456 dnl ------------------------------------------------------------------
457 AC_MSG_CHECKING([whether to impose strict coding conventions])
458 AC_ARG_ENABLE(strict,
459 [AC_HELP_STRING([--enable-strict],
460 [enable coding convention checks ])],
461 [],[enable_strict=no])
462 if test "x$enable_strict" = "xyes" ; then
463 CPPFLAGS="$CPPFLAGS -Weffc++"
465 AC_MSG_RESULT([$enable_strict])
467 dnl ------------------------------------------------------------------
468 AC_MSG_CHECKING([whether to compile sample library])
469 AH_TEMPLATE([HLT_SAMPLE],[hlt sample library])
470 AC_ARG_ENABLE(sample,
471 [AC_HELP_STRING([--disable-sample],
472 [compile the sample library ])],
474 [if test "x$have_aliroot" = "xno" ; then
475 enable_sample="no...requires.AliRoot"
481 if test "x$enable_sample" = "xyes" ; then
482 AC_DEFINE(HLT_SAMPLE)
484 AM_CONDITIONAL(EN_HLT_SAMPLE, test x$enable_sample = xyes)
485 AC_MSG_RESULT([$enable_sample])
487 dnl ------------------------------------------------------------------
488 AC_MSG_CHECKING([whether to compile util library])
489 AH_TEMPLATE([HLT_UTIL],[HLT utility library])
491 [AC_HELP_STRING([--disable-util],
492 [compile the util library ])],
494 [if test "x$have_aliroot" = "xno" ; then
495 enable_util="no...requires.AliRoot"
501 if test "x$enable_util" = "xyes" ; then
504 AM_CONDITIONAL(EN_HLT_UTIL, test x$enable_util = xyes)
505 AC_MSG_RESULT([$enable_util])
507 dnl ------------------------------------------------------------------
508 AH_TEMPLATE([HLT_TPC],[hlt tpc library])
510 CHECK_HLTMODULE([tpc],
512 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
513 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
514 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
516 if test "x$enable_module" = "xmissheader"; then
517 enable_module="no...missing.headers"
518 enable_tpc="no...missing.headers"
519 elif test "x$have_alitpc" = "xno" ; then
520 enable_module="no...requires.AliRoot.TPC.libraries"
521 enable_tpc="no...requires.AliRoot.TPC.libraries"
522 elif test "x$enable_module" = "xforce"; then
525 enable_tpc=$enable_module
528 if test "x$enable_tpc" = "xyes" ; then
531 AM_CONDITIONAL(EN_HLT_TPC, test x$enable_tpc = xyes)
532 AC_MSG_CHECKING([whether to compile tpc library])
533 AC_MSG_RESULT([$enable_module])
534 AC_SUBST([ALITPC_LIBS])
536 dnl ------------------------------------------------------------------
537 AH_TEMPLATE([HLT_PHOS],[hlt phos library])
540 CHECK_HLTMODULE([phos],
541 [], [$ALIROOT_CPPFLAGS],
542 [RAWDatasim], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS], [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS],
543 [PHOSbase PHOSrec PHOSsim], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
544 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
546 if test "x$enable_module" = "xmissheader"; then
547 enable_module="no...requires.AliRoot>v4-05-07"
548 enable_phos="no...requires.AliRoot>v4-05-07"
549 elif test "x$enable_module" = "xforce"; then
552 have_alicalorawstream=no
553 if test ! "x$have_aliroot" = "xno" ; then
555 save_CPPFLAGS="$CPPFLAGS"
556 # this can not be used as AliCaloRawStream.h indirectly depends on TString.h
557 #AC_CHECK_HEADERS([AliCaloRawStream.h], [have_alicalorawstream=yes])
558 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS"
559 AC_MSG_CHECKING([for AliCaloRawStream.h usability])
560 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <TString.h>
561 #include <AliCaloRawStream.h>],
563 [AC_DEFINE(HAVE_ALICALORAWSTREAM)
564 have_alicalorawstream=yes],
566 AC_MSG_RESULT([$have_alicalorawstream])
568 CPPFLAGS="$save_CPPFLAGS"
570 if test "x$have_alicalorawstream" != "xyes"; then
571 enable_phos="no...requires.AliRoot>v4-05-07"
573 enable_phos=$enable_module
577 if test "x$enable_phos" = "xyes" ; then
579 ALIPHOS_LIBS=$ALIHLTMODULE_LIBS
581 AM_CONDITIONAL(EN_HLT_PHOS, test x$enable_phos = xyes)
582 AC_MSG_CHECKING([whether to compile phos library])
583 AC_MSG_RESULT([$enable_module])
584 AC_SUBST([ALIPHOS_LIBS])
586 dnl ------------------------------------------------------------------
587 AH_TEMPLATE([HLT_TRD],[hlt trd library])
590 CHECK_HLTMODULE([trd],
592 [MLP], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
593 [TRDbase TRDrec TRDsim], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
594 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
596 if test "x$enable_module" = "xmissheader"; then
597 enable_module="no...requires.AliRoot>v4-07-Release"
598 enable_trd="no...requires.AliRoot>v4-07-Release"
599 elif test "x$enable_module" = "xforce"; then
602 enable_trd=$enable_module
603 if test "x$enable_trd" = "xyes" ; then
605 save_CPPFLAGS="$CPPFLAGS"
606 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS -I$ALICE_ROOT/TRD"
607 AC_MSG_CHECKING([for required functions in AliTRDclusterizer])
608 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AliTRDclusterizer.h>],
609 [AliTRDclusterizer c;
610 c.SetRawVersion(0)])],
612 [enable_trd="no...requires.AliRoot>v4-07-Release"])
613 AC_MSG_RESULT([$enable_trd])
615 CPPFLAGS="$save_CPPFLAGS"
619 if test "x$enable_trd" = "xyes" ; then
621 ALITRD_LIBS=$ALIHLTMODULE_LIBS
623 AM_CONDITIONAL(EN_HLT_TRD, test x$enable_trd = xyes)
624 AC_MSG_CHECKING([whether to compile trd library])
625 AC_MSG_RESULT([$enable_module])
626 AC_SUBST([ALITRD_LIBS])
628 dnl ------------------------------------------------------------------
629 AH_TEMPLATE([HLT_MUON],[hlt dimuon library])
632 CHECK_HLTMODULE([dimuon],
633 [AliMUONVCluster.h], [$ALIROOT_CPPFLAGS -I$ALICE_ROOT/MUON],
634 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
635 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
636 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
638 if test "x$enable_module" = "xmissheader"; then
639 enable_module="no...requires.AliRoot>v4-07-Release"
640 enable_muon="no...requires.AliRoot>v4-07-Release"
641 elif test "x$enable_module" = "xforce"; then
644 enable_muon=$enable_module
647 if test "x$enable_muon" = "xyes" ; then
649 ALIMUON_LIBS=$ALIHLTMODULE_LIBS
651 AM_CONDITIONAL(EN_HLT_MUON, test x$enable_muon = xyes)
652 AC_MSG_CHECKING([whether to compile muon library])
653 AC_MSG_RESULT([$enable_module])
654 AC_SUBST([ALIMUON_LIBS])
656 dnl ------------------------------------------------------------------
657 AH_TEMPLATE([HLT_COMP],[hlt comp library])
660 CHECK_HLTMODULE([comp],
661 [], [$ALIROOT_CPPFLAGS],
662 [], [-L$ROOTLIBDIR], [$ROOTLIBS $ADD_ROOTLIBS],
663 [], [-L$ROOTLIBDIR $ALIROOT_LDFLAGS],
664 [$ROOTLIBS $ADD_ROOTLIBS $ALIROOT_LIBS])
666 if test "x$enable_module" = "xmissheader"; then
667 enable_module="no...header.missing"
668 enable_comp="no...header.missing"
669 elif test "x$enable_module" = "xforce"; then
672 enable_comp=$enable_module
675 if test "x$enable_comp" = "xyes" ; then
677 ALICOMP_LIBS=$ALIHLTMODULE_LIBS
679 AM_CONDITIONAL(EN_HLT_COMP, test x$enable_comp = xyes)
680 AC_MSG_CHECKING([whether to compile comp library])
681 AC_MSG_RESULT([$enable_module])
682 AC_SUBST([ALICOMP_LIBS])
684 dnl ------------------------------------------------------------------
685 AC_MSG_CHECKING([whether to disable AliRoot logging])
686 AH_TEMPLATE([NOALIROOT_LOGGING],[disable AliRoot logging])
687 AC_ARG_ENABLE(aliroot-logging,
688 [AC_HELP_STRING([--disable-aliroot-logging],
689 [disable logging through AliRoot logging methods])],
690 [],[enable_aliroot_logging=no])
691 if test "x$have_aliroot" = "xno" ; then
692 enable_aliroot_logging=yes # this means 'disable'
694 if test "x$enable_aliroot_logging" != "xno" ; then
695 AC_DEFINE(NOALIROOT_LOGGING)
697 AM_CONDITIONAL(NOALIROOT_LOGGING, test x$enable_aliroot_logging != no)
698 AC_MSG_RESULT([$enable_aliroot_logging])
700 dnl ------------------------------------------------------------------
701 AC_MSG_CHECKING([whether to enable saving MC data through the chain])
702 AH_TEMPLATE([DOMC],[MC saving])
703 AC_ARG_ENABLE(mc-saving,
704 [AC_HELP_STRING([--enable-mc-saving],
705 [enable saving MC data through the chain])],
706 [],[enable_mc_saving=no])
707 if test "x$enable_mc_saving" = "xyes" ; then
710 AC_MSG_RESULT([$enable_mc_saving])
712 dnl ------------------------------------------------------------------
713 dnl certainly something old, but we keep the define
714 AC_MSG_CHECKING([whether to use ROWHOUGH])
715 AH_TEMPLATE([USEROWHOUGH],[HLT ROWHOUGH])
716 AC_ARG_ENABLE(rowhough,
717 [AC_HELP_STRING([--enable-rowhough],
719 [],[enable_rowhough=no])
720 if test "x$enable_rowhough" = "xyes" ; then
721 AC_DEFINE(USEROWHOUGH)
723 AC_MSG_RESULT([$enable_rowhough])
725 dnl ------------------------------------------------------------------
726 dnl The ROOTVERSION and ALIROOTVERSION defines were used by the old
727 dnl stand-alone build system. This is most likely something old we can
728 dnl get rid off later, or do something more reasonable. Since the define
729 dnl needs the quotes they have to be escaped. This works well for the
730 dnl Makefile but not for the configure script. So we have to add the
731 dnl defines after all the other checks.
732 CPPFLAGS="$CPPFLAGS -DROOTVERSION=\\\"`${ROOTCONF} --version`\\\""
733 if test ! "x$have_aliroot" = "xno" ; then
734 CPPFLAGS="$CPPFLAGS -DALIROOTVERSION=\\\"Unknown\\\""
737 dnl ------------------------------------------------------------------
741 AC_ARG_VAR(DOXYGEN, The Documentation Generator)
742 AC_PATH_PROG(PERL, perl)
743 AC_PATH_PROG(DOXYGEN, doxygen)
744 AM_CONDITIONAL(HAVE_DOXYGEN, test ! "x$DOXYGEN" = "x")
746 [AC_HELP_STRING([--enable-dot],
747 [enable dot documentation generator])],
751 AC_PATH_PROG(DOT, dot)
752 if test "x$DOT" != "x" && test "x$enable_dot" = "xyes" ; then
754 DOT_PATH=`dirname $DOT`
759 dnl HAVE_SRC_SUBDIR=${abs_top_srcdir}/src
760 dnl echo $HAVE_SRC_SUBDIR
761 dnl if ! test -d $HAVE_SRC_SUBDIR; then
764 dnl AC_SUBST([HAVE_SRC_SUBDIR])
766 dnl ------------------------------------------------------------------
767 dnl inatallation directory for libraries
769 if test "x$prefix" != "xNONE" && test $ALICE_ROOT = $prefix ; then
770 libdir=\${exec_prefix}/lib/tgt_$ALICE_TARGET
771 AC_MSG_NOTICE([libdir set to $libdir])
773 dnl ------------------------------------------------------------------
774 AC_CONFIG_FILES([Makefile
780 BASE/interface/Makefile
785 TPCLib/mapping2array.cxx
786 TPCLib/OnlineDisplay/Makefile