]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/SampleLib/configure.ac
little changes
[u/mrichter/AliRoot.git] / HLT / SampleLib / configure.ac
CommitLineData
6c1a9d9e 1dnl -*- mode: autoconf -*-
2dnl
3dnl $Id$
4dnl template for the configuration script for the Alice HLT
5dnl analysis tutorial and example library
6dnl
7dnl ------------------------------------------------------------------
8AC_INIT([Alice High Level Trigger Tutorial] , [0.1], [Matthias.Richter@ift.uib.no], alice-hlt-sample)
9
10dnl ------------------------------------------------------------------
11AC_CANONICAL_SYSTEM
12AC_PREFIX_DEFAULT(${PWD})
13AC_CONFIG_SRCDIR(AliHLTDummyComponent.cxx)
14AM_INIT_AUTOMAKE
15AC_PROG_CC
16AC_PROG_CXX
17AC_PROG_LIBTOOL
18
19AC_DEBUG
20AC_OPTIMIZATION
dc8f7cb7 21AM_CONDITIONAL(STANDALONE_SAMPLELIB, test 1)
6c1a9d9e 22
23dnl ------------------------------------------------------------------
24dnl
25dnl Check for ROOT
26dnl
27ROOT_PATH(, [have_root=1], [AC_ERROR([Stop! The HLT package needs ROOT.])])
28AM_CONDITIONAL(HAVE_ROOT, test "x$have_root" = "x1" )
29AC_SUBST([ROOTSYS])
dc8f7cb7 30
31dnl test for additional required root libraries
32 # we check for the libSTEER library which is linked to
33 # - the ROOT libs libGeom libMinuit libVMC libEG
34 # - the AliRoot libESD libRAWData (libRAWDatarec from v4-04-Rev-07)
35 # - ROOT libCint needs also libdl
36 # - from Nov 1 2006 TTreeFormula is needed by AliTagAnalysis and requires
37 # libTreePlayer.so
38 # - from Jan 07 libESD also depends on libXMLIO
39LIBS='-ldl'
40if test "x$have_root" = "x1"; then
41 save_CPPFLAGS=$CPPFLAGS
42 save_LDFLAGS=$LDFLAGS
43 save_LIBS=$LIBS
44
45 ROOT_CHECKLIBS='Geom Minuit EG VMC TreePlayer XMLIO'
46 for CHECKLIB in $ROOT_CHECKLIBS ; do
47 CPPFLAGS="$save_CPPFLAGS"
48 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR}"
49 LIBS="$save_LIBS $ROOTLIBS $ADD_ROOTLIBS"
50 AC_CHECK_LIB([$CHECKLIB],[_init], [ADD_ROOTLIBS="$ADD_ROOTLIBS -l$CHECKLIB"])
51 done
52
53 CPPFLAGS=$save_CPPFLAGS
54 LDFLAGS=$save_LDFLAGS
55 LIBS=$save_LIBS
56fi
57
6c1a9d9e 58CPPFLAGS="$CPPFLAGS ${ROOTCFLAGS}"
59
60dnl ------------------------------------------------------------------
61dnl check for AliRoot features
62AC_LANG_PUSH(C++)
63have_aliroot=no
2d7ff710 64AC_ARG_WITH(aliroot,[ --with-aliroot top of the AliRoot installation],
6c1a9d9e 65 [test -d $with_aliroot && ALICE_ROOT=$with_aliroot],
66 [])
67
68if test "x$ALICE_ROOT" != "x" && test -d $ALICE_ROOT ; then
69 dnl ------------------------------------------------------------------
70 dnl Try to estimate the system architecture
71 case $host_os:$host_cpu in
72 linux*:x86_64*) alice_target='linuxx8664gcc' ;;
73 linux*) alice_target='linux' ;;
74 *) alice_target='unknown' ;;
75 esac
76 if test "x$alice_target" = "xunknown" ; then
77 if test -z $ALICE_TARGET ; then
78 AC_MSG_ERROR([Can not estimate system architecture.
79 To avoid the problem, set the ALICE_TARGET variable appropriately.
80 Please send the following information to Matthias.Richter@ift.uib.no:
81 ${PACKAGE}: no AliRoot target definition for os=$host_os and cpu=$host_cpu ])
82 else
83 AC_MSG_NOTICE([Unknown system architecture.
84 Please send the following information to Matthias.Richter@ift.uib.no:
85 ${PACKAGE}: no AliRoot target definition for os=$host_os and cpu=$host_cpu ])
86 fi
87 else
88 if test "x$ALICE_TARGET" != "x" && test "x$ALICE_TARGET" != "x$alice_target" ; then
89 AC_MSG_WARN([The ALICE_TARGET variable does not match your current system
90 overriding $ALICE_TARGET by $alice_target])
91 fi
92 ALICE_TARGET=$alice_target
93 fi
94 ALIROOTLIBDIR=${ALICE_ROOT}/lib/tgt_${ALICE_TARGET}
95 ALIROOTINCDIR=${ALICE_ROOT}/include
96 test -d ${ALIROOTLIBDIR} || AC_MSG_WARN([can not find AliRoot library directory $ALIROOTLIBDIR])
97 test -d ${ALIROOTINCDIR} || AC_MSG_WARN([can not find AliRoot include directory $ALIROOTINCDIR])
98fi
99
100AC_MSG_CHECKING([for AliRoot])
101if test "x$ALICE_ROOT" != "x" \
102 && test -d ${ALIROOTLIBDIR} \
103 && test -d ${ALIROOTINCDIR}; then
104 have_aliroot=$ALICE_ROOT
105else
106 ALIROOTLIBDIR=
107 ALIROOTINCDIR=
108fi
109AC_MSG_RESULT([$have_aliroot])
110
111if test ! "x$have_aliroot" = "xno" ; then
6c1a9d9e 112 ALIROOT_CPPFLAGS="-I${ALIROOTINCDIR} -I${ALICE_ROOT}/RAW"
113 ALIROOT_LDFLAGS="-L${ALIROOTLIBDIR}"
dc8f7cb7 114 ALIROOT_LIBS="-lESD $ADD_ROOTLIBS"
6c1a9d9e 115 save_CPPFLAGS=$CPPFLAGS
116 save_LDFLAGS=$LDFLAGS
117 save_LIBS=$LIBS
118 CPPFLAGS="$save_CPPFLAGS $ALIROOT_CPPFLAGS"
119 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS"
120
121 # check for certain AliRoot libraries/files/features
122 # CBD library is present since AliRoot version v4-05-00 (02.06.2006)
123 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
124 CHECKLIB=CDB
125 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
126
127 # splitted RAW libraries since AliRoot version v4-04-Rev-07 (09.08.2006)
128 have_alirawdata=no
129 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
130 CHECKLIB=RAWDatabase
131 AC_CHECK_LIB([$CHECKLIB],[_init],
132 [ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"
133 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
134 CHECKLIB=RAWDatarec
135 AC_CHECK_LIB([$CHECKLIB],[_init],
136 [ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"
137 AC_DEFINE(HAVE_ALIRAWDATA)
138 have_alirawdata=$CHECKLIB])],
139 [# second pass with -RAWData
140 CHECKLIB="-lRAWData"
141 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS $CHECKLIB -lSTEER"
142 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <AliRawReaderMemory.h>
143 #include <AliRawReaderFile.h>
144 #include <AliRawReaderDate.h>
145 #include <AliRawReaderRoot.h>],
146 [AliRawReaderMemory mreader;
147 AliRawReaderFile freader;
148 AliRawReaderDate dreader(NULL,0);
149 AliRawReaderRoot rreader(NULL,0);])],
150 [AC_DEFINE(HAVE_ALIRAWDATA)
151 ALIROOT_LIBS="$ALIROOT_LIBS $CHECKLIB"
152 have_alirawdata=$CHECKLIB],
153 [have_alirawdata=no])
154 ]) dnl AC_CHECK_LIB RAWDatabase
155 AC_MSG_CHECKING(for AliRawReader classes in RAWData libraries)
156 AC_MSG_RESULT($have_alirawdata)
157
158 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
159 CHECKLIB=STEER
160 AC_CHECK_LIB([$CHECKLIB],[_init],[ALIROOT_LIBS="$ALIROOT_LIBS -l$CHECKLIB"])
161
162 if test "x$have_aliroot" = "xno" ; then
163 ALIROOT_CPPFLAGS=
164 ALIROOT_LDFLAGS=
165 ALIROOT_LIBS=
166 fi
167 CPPFLAGS=$save_CPPFLAGS
168 LDFLAGS=$save_LDFLAGS
169 LIBS=$save_LIBS
170fi
171
172dnl ------------------------------------------------------------------
173dnl check for the HLT component framework
174AC_MSG_CHECKING([for HLT component framework in ])
2d7ff710 175AC_ARG_WITH(hltbase, [ --with-hltbase installation path of the HLT component framework],
6c1a9d9e 176 [],
177 [test -n $have_aliroot && with_hltbase=$have_aliroot ])
178if test -z $with_hltbase || ! test -d $with_hltbase ; then
179 with_hltbase=no
180fi
181AC_MSG_RESULT([$with_hltbase])
182if test "x$with_hltbase" = "xno" || test "x$with_hltbase" = "x$ALICE_ROOT" ; then
183 HLTBASE_CPPFLAGS=-I${ALICE_ROOT}/HLT/BASE
184 HLTBASE_LDFLAGS=
185else
186 HLTBASE_CPPFLAGS=-I${with_hltbase}/include/alice-hlt
187 HLTBASE_LDFLAGS=-L${with_hltbase}/lib
188fi
189
190 save_CPPFLAGS=$CPPFLAGS
191 save_LDFLAGS=$LDFLAGS
192 save_LIBS=$LIBS
193 CPPFLAGS="$save_CPPFLAGS $HLTBASE_CPPFLAGS -L${ALIROOTLIBDIR}"
194 LDFLAGS="$save_LDFLAGS -L${ROOTLIBDIR} $ALIROOT_LDFLAGS $HLTBASE_LDFLAGS"
195 LIBS="$save_LIBS $ROOTLIBS $ALIROOT_LIBS"
196 AC_CHECK_HEADER([AliHLTComponent.h])
197 AC_CHECK_HEADER([AliHLTLogging.h])
198 CHECKLIB=HLTbase
199 AC_CHECK_LIB([$CHECKLIB],[_init],
200 [have_hltbase=yes
201 HLTBASE_LDFLAGS="$HLTBASE_LDFLAGS -l$CHECKLIB"])
202
203 test "x$have_hltbase" = "xyes" || \
204 AC_ERROR([Stop! The package needs the HLT component framework.
205 Use --with-hltbase option to point to the HLT component framework
206 installation])
207
208 CPPFLAGS=$save_CPPFLAGS
209 LDFLAGS=$save_LDFLAGS
210 LIBS=$save_LIBS
211
212AC_LANG_POP(C++)
213AC_SUBST([ALIROOT_CPPFLAGS])
214AC_SUBST([ALIROOT_LDFLAGS])
215AC_SUBST([ALIROOTLIBDIR])
216AC_SUBST([ALIROOT_LIBS])
217AC_SUBST([HLTBASE_CPPFLAGS])
218AC_SUBST([HLTBASE_LDFLAGS])
219
220dnl ------------------------------------------------------------------
221dnl
222dnl Documentation
223dnl
224AC_ARG_VAR(DOXYGEN, The Documentation Generator)
225AC_PATH_PROG(PERL, perl)
226AC_PATH_PROG(DOXYGEN, doxygen)
227AM_CONDITIONAL(HAVE_DOXYGEN, test ! "x$DOXYGEN" = "x")
228HAVE_DOT=NO
229DOT_PATH=
230AC_PATH_PROG(DOT, dot)
231if ! test "x$DOT" = "x" ; then
232 HAVE_DOT=YES
233 DOT_PATH=`dirname $DOT`
234fi
235AC_SUBST([HAVE_DOT])
236AC_SUBST([DOT_PATH])
237
238dnl ------------------------------------------------------------------
239dnl inatallation directory for libraries
240dnl
241if test "x$prefix" != "xNONE" && test $ALICE_ROOT = $prefix ; then
242libdir=\${exec_prefix}/lib/tgt_$ALICE_TARGET
243AC_MSG_NOTICE([libdir set to $libdir])
244fi
245dnl ------------------------------------------------------------------
246AC_CONFIG_FILES([Makefile])
247
248
249AC_OUTPUT
250dnl
251dnl EOF
252dnl
253
254dnl AC_CONFIG_FILES([Makefile
255dnl doc/Makefile
256dnl doc/doxygen.conf])