4 dnl Copyright (C) 2002 Christian Holm Christensen <cholm@nbi.dk>
6 dnl This library is free software; you can redistribute it and/or
7 dnl modify it under the terms of the GNU Lesser General Public License
8 dnl as published by the Free Software Foundation; either version 2.1
9 dnl of the License, or (at your option) any later version.
11 dnl This library is distributed in the hope that it will be useful,
12 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
13 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 dnl Lesser General Public License for more details.
16 dnl You should have received a copy of the GNU Lesser General Public
17 dnl License along with this library; if not, write to the Free
18 dnl Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21 dnl ------------------------------------------------------------------
24 AC_REQUIRE([AC_PROG_CC])
25 AC_REQUIRE([AC_PROG_CXX])
26 AC_MSG_CHECKING(whether to make debug objects)
28 [AC_HELP_STRING([--enable-debug],[Enable debugging symbols in objects])],
29 [],[enable_debug=yes])
30 if test "x$enable_debug" = "xno" ; then
31 CFLAGS=`echo $CFLAGS | sed 's,-g,,'`
32 CXXFLAGS=`echo $CXXFLAGS | sed 's,-g,,'`
37 *) CXXFLAGS="$CXXFLAGS -g" ;;
41 *) CFLAGS="$CFLAGS -g" ;;
44 AC_MSG_RESULT($enable_debug 'CFLAGS=$CFLAGS')
47 dnl ------------------------------------------------------------------
48 AC_DEFUN([AC_OPTIMIZATION],
50 AC_REQUIRE([AC_PROG_CC])
51 AC_REQUIRE([AC_PROG_CXX])
53 AC_ARG_ENABLE(optimization,
54 [AC_HELP_STRING([--enable-optimization],[Enable optimization of objects])],
55 [],[enable_optimization=yes])
57 AC_MSG_CHECKING(for optimiztion level)
59 changequote(<<, >>)dnl
60 if test "x$enable_optimization" = "xno" ; then
61 CFLAGS=`echo $CFLAGS | sed 's,-O\([0-9][0-9]*\|\),,'`
62 CXXFLAGS=`echo $CXXFLAGS | sed 's,-O\([0-9][0-9]*\|\),,'`
63 elif test "x$enable_optimization" = "xyes" ; then
66 *) CXXFLAGS="$CXXFLAGS -O2" ;;
70 *) CFLAGS="$CXXFLAGS -O2" ;;
73 CFLAGS=`echo $CFLAGS | sed "s,-O\([0-9][0-9]*\|\),-O$enable_optimization,"`
74 CXXFLAGS=`echo $CXXFLAGS | sed "s,-O\([0-9][0-9]*\|\),-O$enable_optimization,"`
77 AC_MSG_RESULT($enable_optimization 'CFLAGS=$CFLAGS')
80 dnl ------------------------------------------------------------------
83 dnl Autoconf macro to check for existence or ROOT on the system
86 dnl ROOT_PATH([MINIMUM-VERSION, [ACTION-IF-FOUND, [ACTION-IF-NOT-FOUND]]])
90 dnl ROOT_PATH(3.03/05, , AC_MSG_ERROR(Your ROOT version is too old))
91 dnl ROOT_PATH(, AC_DEFINE([HAVE_ROOT]))
93 dnl The macro defines the following substitution variables
95 dnl ROOTCONF full path to root-config
96 dnl ROOTEXEC full path to root
97 dnl ROOTCINT full path to rootcint
98 dnl ROOTLIBDIR Where the ROOT libraries are
99 dnl ROOTINCDIR Where the ROOT headers are
100 dnl ROOTCFLAGS Extra compiler flags
101 dnl ROOTLIBS ROOT basic libraries
102 dnl ROOTGLIBS ROOT basic + GUI libraries
103 dnl ROOTAUXLIBS Auxilary libraries and linker flags for ROOT
104 dnl ROOTAUXCFLAGS Auxilary compiler flags
105 dnl ROOTRPATH Same as ROOTLIBDIR
107 dnl The macro will fail if root-config and rootcint isn't found.
109 dnl Christian Holm Christensen <cholm@nbi.dk>
111 AC_DEFUN([ROOT_PATH],
114 [ --with-rootsys top of the ROOT installation directory],
115 user_rootsys=$withval,
117 if test ! x"$user_rootsys" = xnone; then
118 rootbin="$user_rootsys/bin"
119 elif test ! x"$ROOTSYS" = x ; then
120 rootbin="$ROOTSYS/bin"
124 AC_PATH_PROG(ROOTCONF, root-config , no, $rootbin)
125 AC_PATH_PROG(ROOTEXEC, root , no, $rootbin)
126 AC_PATH_PROG(ROOTCINT, rootcint , no, $rootbin)
128 if test ! x"$ROOTCONF" = "xno" && \
129 test ! x"$ROOTCINT" = "xno" ; then
131 # define some variables
132 ROOTLIBDIR=`$ROOTCONF --libdir`
133 ROOTINCDIR=`$ROOTCONF --incdir`
134 ROOTCFLAGS=`$ROOTCONF --noauxcflags --cflags`
135 ROOTLIBS=`$ROOTCONF --noauxlibs --noldflags --libs`
136 ROOTGLIBS=`$ROOTCONF --noauxlibs --noldflags --glibs`
137 ROOTAUXCFLAGS=`$ROOTCONF --auxcflags`
138 ROOTAUXLIBS=`$ROOTCONF --auxlibs`
139 ROOTRPATH=$ROOTLIBDIR
142 AC_MSG_CHECKING(wether ROOT version >= [$1])
143 vers=`$ROOTCONF --version | tr './' ' ' | awk 'BEGIN { FS = " "; } { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
144 requ=`echo $1 | tr './' ' ' | awk 'BEGIN { FS = " "; } { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
145 if test $vers -lt $requ ; then
153 # otherwise, we say no_root
162 AC_SUBST(ROOTAUXLIBS)
163 AC_SUBST(ROOTAUXCFLAGS)
166 if test "x$no_root" = "x" ; then
167 ifelse([$2], , :, [$2])
169 ifelse([$3], , :, [$3])