Newer
Older
# A (not so) simple configure script.
#
# Authors: Christian Holm Christensen and Fons Rademakers
#
# To help with debugging the script, some comments are preprended with
# 3 '#' echo and 3 '%' - replace that pattern with echo and 3 '%' to
# get printouts. When done replace the pattern echo and 3 '%' with the
# original pattern of 3 '#' echo and 3 '%'. Emacs command M-C-% does
# this easily.
#
######################################################################
#
### echo %%% Some global variables
#
found_lib=no
found_dir=no
found_hdr=no
show_pkglist=no
noact="no"
Fons Rademakers
committed
altcc=
altcxx=
altf77=
altld=
options=" \
enable_afs \
enable_alien \
enable_asimage \
Fons Rademakers
committed
enable_astiff \
enable_castor \
Fons Rademakers
committed
enable_cintex \
enable_clarens \
enable_dcache \
enable_exceptions \
enable_explicitlink \
enable_mathmore \
enable_peac \
enable_pgsql \
enable_pythia6 \
Fons Rademakers
committed
enable_reflex \
enable_roofit \
enable_ruby \
enable_rfio \
enable_rpath \
enable_sapdb \
enable_shadowpw \
enable_shared \
enable_soversion \
enable_srp \
enable_ssl \
enable_table \
"
#
# This sets all options to "yes" - we turn off those we don't want
# on per default explictly afterwards.
#
for c in $deprecated_options ; do eval ${c}="yes" ; done
enable_afs=no
enable_explicitlink=no
enable_pch=no
enable_qt=no
enable_roofit=no
enable_rpath=no
enable_ruby=no
enable_shadowpw=
enable_soversion=no
enable_thread=yes # cannot be disabled (not in above options list)
no_stubs=no # complete Dictionaries by default (All stubs)
no_stubs_test=no # complete Dictionaries by default (All stubs)
enable_xrootd= # must be set explicitely via --enable-xrootd
#
# ./configure arguments and defaults set via supported env vars
#
envvars="
THREAD \
OPENGL \
MYSQL \
PGSQL \
QTDIR \
SAPDB \
RFIO \
CASTOR \
PYTHIA6 \
DCACHE \
CHIRP \
ALIEN \
ASIMAGE \
LDAP \
GLOBUS_LOCATION \
SRP \
AFS \
ROOFIT \
TABLE \
"
configenvvars=
if test ! "x$cc" = "x" ; then
if test ! "x$configenvvars" = "x" ; then
configenvvars="$configenvvars $c=$cc"
else
configenvvars="$c=$cc"
fi
fi
done
configargs="$*"
configargs=`echo $configargs | sed 's, *--nohowto,,g'`
configoptions=
if test ! "x$configenvvars" = "x" ; then
configoptions=$configenvvars
fi
if test ! "x$configargs" = "x" ; then
if test ! "x$configoptions" = "x" ; then
configoptions="$configoptions $configargs"
else
configoptions=$configargs
fi
fi
configoptions=`echo $configoptions | sed 's,\\\,\\\\\\\,g'`
######################################################################
#
### echo %%% Some common functions
#
#_____________________________________________________________________
message() {
# Write a simple message to std out
if test $# -lt 1 ; then
echo "message: Too few arguments"
return 1
fi
echo $ac_n "$* ... $ac_c"
logmsg "$*"
}
#_____________________________________________________________________
logmsg() {
# Write a simple message to std out
if test $# -lt 1 ; then
echo "logmsg: Too few arguments"
return 1
fi
if test "x$1" = "x-n"; then
shift
echo -n "$*" >> $logfile
else
echo "$*" >> $logfile
fi
}
#_____________________________________________________________________
result() {
echo "$*"
logmsg "Result: $*"
}
#_____________________________________________________________________
checking_msg() {
# Write a simple "checking" message to std out.
if test $# -lt 1 ; then
echo "checking_msg: Too few arguments"
return 1
fi
echo $ac_n "Checking for$ac_c"
logmsg $ac_n "Checking for$ac_c"
while test $# -gt 1 ; do
echo $ac_n " $1,$ac_c"
shift
if test $# -eq 1 ; then
echo $ac_n " or$ac_c"
fi
done
echo $ac_n " $1 ... $ac_c"
Fons Rademakers
committed
#_____________________________________________________________________
check_lib64() {
# This function will try to find out if a library [$1] contains 64 bit
# or 32 bit code. Currently works only for linux.
# The result of the check is stored in is_lib64, 1 if true,
# 0 otherwise, which should be immediately copied, since the variable
# will be overwritten at next invocation of this function.
is_lib64=0
# Assert that we got enough arguments
if test $# -ne 1 ; then
echo "check_lib64: not 1 argument"
return 1
fi
# Save arguments in logical names
chklib64=$1
logmsg "Checking if $chklib64 is a 64bit library"
Fons Rademakers
committed
if [ "x`basename $chklib64 .a`" != "x`basename $chklib64`" ]; then
# we have an archive .a file
Fons Rademakers
committed
objdump -a $chklib64 | grep 'x86-64' > /dev/null 2>& 1
Fons Rademakers
committed
else
Fons Rademakers
committed
file -L $chklib64 | grep '64-bit' > /dev/null 2>& 1
Fons Rademakers
committed
fi
Fons Rademakers
committed
is_lib64=1
Fons Rademakers
committed
fi
}
#_____________________________________________________________________
check_library() {
# This function will try to locate a library [$1] in the specific
# directory [$3] or in a default path [$*]. If the second argument
# [$2] is not "no", then shared libraries are favoured.
# The result of the search is stored in found_lib and found_dir,
# which should be immediately copied, since the variables value will
# be overwritten at next invocation of this function.
# Assert that we got enough arguments
if test $# -lt 4 ; then
echo "check_library: Too few arguments"
return 1
fi
# Save arguments in local names
lib=$1 ; shift
shared=$1 ; shift
libdirl=$1 ; shift
libdirs="$*"
# Write a message
checking_msg $lib
# check if we got a specific argument as to where the library
# is to be found
if test ! "x$libdirl" = "x" ; then
libdirs=$libdirl
fi
found_lib=no
found_dir=no
# Make list of libraries to search for. The .lib extension is for
# Windoze - note $shared is always "no" on windoze, since we need
# the .lib export library to link.
libs=""
for i in $lib ; do
for ext in .a .lib "" ; do # lib without extension for MacOS X
libs="$libs $i$ext"
done
done
slibs=""
for i in $lib ; do
for ext in .so .sl .dylib .dll.a ; do # .dll.a for cygwin gcc
slibs="$slibs $i$ext"
done
done
if test ! "x$shared" = "xno" ; then
libs="$slibs $libs"
else
libs="$libs $slibs"
fi
# Loop over the list of possible directories, and see if we can
# find any of the library files as determind above.
for i in $libdirs ; do
# look first in the lib32 directories
if test "x$checklib32" = "xyes" ; then
i32=`echo $i | sed -e 's|lib$|lib32|' -e 's|lib/|lib32/|'`
#i="$i32 $i"
i="$i32"
fi
# look first in the lib64 directories
if test "x$checklib64" = "xyes" ; then
i64=`echo $i | sed -e 's|lib$|lib64|' -e 's|lib/|lib64/|'`
Fons Rademakers
committed
i="$i64 $i"
fi
# look only in the lib64 directories
if test "x$checkonlylib64" = "xyes" ; then
i64=`echo $i | sed -e 's|lib$|lib64|' -e 's|lib/|lib64/|'`
i="$i64"
fi
Fons Rademakers
committed
# look only in the hpux64 directories
i="$i64"
for l in $i ; do
for j in ${libs} ; do
logmsg " Checking for library $j in directory $i"
# if we found the file (it's readable by user), we set the
# logical variables and are on our way, otherwise we continue
liblist=`echo $l/$j` # expands wildcard in $l/$j
for n in ${liblist} ; do
if test -f $n ; then
Fons Rademakers
committed
if test "x$checklib64" = "xyes" ; then
check_lib64 $n
if test $is_lib64 -eq 1 ; then
found_dir=$l
found_lib=$j
break 4
fi
else
found_dir=$l
found_lib=$j
if test "x$arch" = "linux"; then
check_lib64 $n
else
is_lib64=0
fi
Fons Rademakers
committed
if test $is_lib64 -eq 1 ; then
found_dir=no
found_lib=no
Fons Rademakers
committed
# skip cygwin libraries when in pure Win32 mode
if test "x$platform" = "xwin32"; then
case $found_dir in
/lib|/lib/*|/usr/*) found_dir=no ;;
*) break 4;;
esac
else
break 4
fi
Fons Rademakers
committed
fi
done
done
done
echo $found_dir
unset libs
unset libdirs
if test "x$found_dir" = "xno" || test "x$found_lib" = "xno" ; then
found_dir=""
found_lib=""
else
flib=""
maclib=""
for i in $lib ; do
for ext in .a .lib "" ; do # lib without extension for MacOS X
if test "x$found_lib" = "x$i$ext" ; then
flib=$i$ext
if test "x$ext" = "x" ; then
maclib="yes"
fi
break 2
fi
done
done
if (test "x$found_lib" = "x$flib" && test "x$shared" = "xno") || \
test "x$maclib" = "xyes" ; then
found_lib=${found_dir}/${found_lib}
found_dir=""
else
found_lib=`echo $found_lib | sed 's|^lib\(.*\)\..*|-l\1|'`
found_dir=-L${found_dir}
Fons Rademakers
committed
# Avoid inclusion of /usr/lib, which is always included anyway
if test "x$found_dir" = "x-L/usr/lib" || \
test "x$found_dir" = "x-L/usr/lib32" || \
test "x$found_dir" = "x-L/usr/lib64" ; then
Fons Rademakers
committed
found_dir=""
fi
# Correct path for win32
if test "x$platform" = "xwin32"; then
if test ! "x$found_lib" = "x" ; then
found_lib=`cygpath -m $found_lib`
fi
if test ! "x$found_dir" = "x" ; then
found_dir=`cygpath -m $found_dir`
fi
fi
fi
unset shared
unset slibs
unset lib
unset flib
unset maclib
unset libdirl
#_____________________________________________________________________
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
check_header() {
# This function will try to locate a header [$1] in the specific
# directory [$2] or in a default path [$*].
# The result of the search is stored in found_hdr and found_dir,
# which should be immediately copied, since the variables value will
# be overwritten at next invocation of this function.
# Assert that we got enough arguments
if test $# -lt 3 ; then
echo "check_header: Too few arguments"
return 1
fi
# Save arguments in logical names
hdrs=$1 ; shift
hdrdir=$1 ; shift
hdrdirs="$*"
# Write a message
checking_msg $hdrs
# Check if we got a specific argument as to where the library
# is to be found
if test ! "x$hdrdir" = "x" ; then
hdrdirs=$hdrdir
fi
found_hdr=no
found_dir=no
# Loop over the list of possible directories, and see if we can
# find any of the library files as determind above.
Fons Rademakers
committed
for i in $hdrdirs; do
for j in ${hdrs} ; do
# if we found the file (it's readable by user), we set the
# logical variables and are on our way, otherwise we continue
if test -r $i/$j ; then
found_dir=$i
found_hdr=$j
# skip cygwin headers when in pure Win32 mode
if test "x$platform" = "xwin32"; then
case $found_dir in
/usr/*) found_dir="no" ;;
*) break 2;;
esac
else
break 2
fi
fi
done
done
echo $found_dir
if test "x$found_hdr" = "xno" || test "x$found_dir" = "xno" ; then
found_hdr=""
found_dir=""
fi
# Avoid inclusion of /usr/include, which is always included anyway
#if test "x$found_dir" = "x/usr/include" ; then
# found_dir="include"
#fi
# Correct path for win32
Fons Rademakers
committed
if test "x$platform" = "xwin32"; then
if test ! "x$found_hdr" = "x" ; then
found_hdr=`cygpath -m $found_hdr`
fi
if test ! "x$found_dir" = "x" ; then
found_dir=`cygpath -m $found_dir`
fi
fi
unset hdrs
unset hdrdirs
unset hdrdir
}
#_____________________________________________________________________
check_symbol() {
# This function will try to locate a symbol [$1] in a specific
# library [$2] and in a given directory [$3].
# The result of the check is stored in found_symbol, 1 if true,
# 0 otherwise, which should be immediately copied, since the variable
# will be overwritten at next invocation of this function.
# Assert that we got enough arguments
if test $# -ne 3 ; then
echo "check_symbol: not 3 arguments"
found_symbol=0
return 1
fi
# Save arguments in logical names
symbol=$1 ; shift
symbollib=$1 ; shift
symboldir=$1
if test "x$symbollib" = "x" ; then
found_symbol=0
return 1
fi
symbollib=`echo $symbollib | sed -e 's/^-l/lib/'`
if test ! "x$symboldir" = "x" ; then
symboldir=`echo $symboldir | sed -e 's/^-L//'`
# Check if we got a specific argument as to where the library
# is to be found
symbolfile=$symbollib
exts=".so .lib"
if test ! "x$shared" = "xno" ; then
exts="$exts .a"
else
exts=".a $exts"
fi
Fons Rademakers
committed
usrlib="/usr/lib"
# look first in the lib32 directories
if test "x$checklib32" = "xyes" ; then
usrlib="/usr/lib32 $usrlib"
fi
# look first in the lib64 directories
if test "x$checklib64" = "xyes" ; then
usrlib="/usr/lib64 $usrlib"
fi
Fons Rademakers
committed
# look only in the lib64 directories
if test "x$checkonlylib64" = "xyes" ; then
usrlib="/usr/lib64"
fi
# look only in the hpux64 directories
Fons Rademakers
committed
if test "x$checkhpux64" = "xyes" ; then
Fons Rademakers
committed
usrlib="/usr/lib/hpux64"
Fons Rademakers
committed
fi
for d in "$symboldir" $usrlib ; do
logmsg " Checking extension $i with $d/$symbollib"
else
logmsg "$d/$symbollib readable"
symbolfile=$d/$symbollib
break
if test "x$symbolfile" = "x" || test ! -r $symbolfile ; then
found_symbol=0
nm $symbolfile 2>&1 | grep $symbol > /dev/null 2>&1
if test $? -eq 0 ; then
found_symbol=1
nm $symbolfile 2>&1 | grep "no symbols" > /dev/null 2>&1
# stripped library - only safe test is to link against the
# library! However, we do not know what compiler to use
# so we can not do the test. Assume the symbol is in
cat <<EOF > conftest.mk
include config/Makefile.${arch}
conftest:conftest.c $symbolfile
\$(CC) \$(CFLAGS) \$(LDFLAGS) $symbolfile \$< -o \$@
conftest.c:
echo "extern int $symbol (); " > \$@
echo "int main() { $symbol (); return 0; }" >> \$@
EOF
cat conftest.mk >> $logfile
fi
rm -rf conftest.c conftest.mk conftest
else
found_symbol=0
fi
fi
if test $found_symbol -eq 1 ; then
#_____________________________________________________________________
check_explicit()
{
feat=$1 ; shift
expl=$1 ; shift
emsg=$1 ; shift
if test "x$fail_on_missing" = "xno" ; then return 0 ; fi
if test ! "x$feat" = "xyes" ; then
result $emsg
exit 1
fi
}
#_____________________________________________________________________
guess_architecture () {
# Try to guess the architecture of the host system
# Note, that there's no attempt at guessing the compiler.
# The `native' compiler is used in all cases.
# If a user really want a specifific compiler, s/he better use the
# first argument to do so.
arch=`uname -s | tr '[A-Z]' '[a-z]'`
chip=`uname -m | tr '[A-Z]' '[a-z]'`
rele=`uname -r`
logmsg "arch=$arch"
logmsg "chip=$chip"
logmsg "rele=$rele"
case "$arch:$chip:$rele" in
aix*) arch=aix5 ;;
osf1*:alpha:*) arch=alphacxx6 ;;
freebsd*:*:6*) arch=freebsd5 ;;
freebsd*:*:4*) arch=freebsd4 ;;
freebsd*:*:*) arch=freebsd ;;
hp-ux:ia64:*) arch=hpuxia64acc ;;
hp-ux:*:*) arch=hpuxacc ;;
hurd*:*:*) arch=hurddeb ;;
linux:ia64:*) arch=linuxia64gcc ;;
linux:x86_64:*) arch=linuxx8664gcc ;;
linux:alpha:*) arch=linuxalphagcc ;;
linux:arm*:*) arch=linuxarm ;;
linux:hppa*:*) arch=linux ;;
linux:mips:*) arch=linuxmips ;;
linux:ppc64*:*) arch=linuxppc64gcc ;;
linux:ppc*:*) arch=linuxppcgcc ;;
linux:i*86:*) arch=linux ;;
lynx:*:*) arch=lynxos ;;
darwin:power*:*) arch=macosx ;;
irix*:sgi*:*) arch=sgicc ;;
sunos:sun*:6*) arch=solarisCC5 ;;
sunos:sun*:5*) arch=solarisCC5 ;;
sunos:sun*:4*) arch=solaris ;;
Fons Rademakers
committed
cygwin_*:*86:*) arch=win32 ;;
cygwin_*:pentium:*) arch=win32 ;;
cygwin_*:ia64) arch=win32 ;;
*)
echo "Attempts at guessing your architecture failed."
echo "Please specify the architecture as the first argument."
echo "Do '$0 --help' for a list of avaliable architectures."
echo "Or file a bug at https://savannah.cern.ch/projects/savroot/"
echo "including the full config.log and a dump of"
echo " touch dummy_file.c; gcc -E -dM dummy_file.c"
exit 1
;;
Fons Rademakers
committed
if [ "$arch" = "macosx" ]; then
if [ `sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 2` -ge 5 ]; then
Fons Rademakers
committed
if `sysctl machdep.cpu.extfeatures | grep "64" > /dev/null 2>&1` ; then
arch=macosx64
fi
fi
fi
logmsg "$arch"
}
###################################################################
#
### echo %%% Some skeleton and config files
#
ARCHS=config/ARCHS
MAKEIN=config/Makefile.in
MAKEOUT=config/Makefile.config
MAKECOMPIN=config/Makefile-comp.in
MAKECOMPOUT=config/Makefile.comp
Fons Rademakers
committed
CONFIGUREIN=config/RConfigure.in
CONFIGUREOUT=include/RConfigure.h
Fons Rademakers
committed
CONFIGOPTIN=config/RConfigOptions.in
CONFIGOPTOUT=include/RConfigOptions.h
RCONFIN=config/root-config.in
RCONFOUT=bin/root-config
Fons Rademakers
committed
ROOTRCIN=config/rootrc.in
ROOTAUTHRCIN=config/rootauthrc.in
ROOTAUTHRCOUT=etc/system.rootauthrc
ROOTDAEMONRCIN=config/rootdaemonrc.in
ROOTDAEMONRCOUT=etc/system.rootdaemonrc
MEMPROBEIN=config/memprobe.in
MEMPROBEOUT=bin/memprobe
MIMEUNIXIN=config/mimes.unix.in
MIMEWIN32IN=config/mimes.win32.in
MIMEOUT=etc/root.mimes
ROOTDOUT=etc/daemons/rootd.rc.d
ROOTDXINETDIN=config/rootd.xinetd.in
ROOTDXINETDOUT=etc/daemons/rootd.xinetd
PROOFDIN=config/proofd.in
PROOFDOUT=etc/daemons/proofd.rc.d
PROOFDXINETDIN=config/proofd.xinetd.in
PROOFDXINETDOUT=etc/daemons/proofd.xinetd
XROOTDIN=config/xrootd.in
XROOTDOUT=etc/daemons/xrootd.rc.d
OLBDIN=config/olbd.in
OLBDOUT=etc/daemons/olbd.rc.d
ROOTHELPIN=config/root-help.el.in
ROOTHELPOUT=build/misc/root-help.el
HTMLIN=config/html.C.in
HTMLOUT=macros/html.C
THISROOTSHIN=config/thisroot.sh
THISROOTSHOUT=bin/thisroot.sh
THISROOTCSHIN=config/thisroot.csh
THISROOTCSHOUT=bin/thisroot.csh
THISROOTBATIN=config/thisroot.bat
THISROOTBATOUT=bin/thisroot.bat
GENREFLEXSHIN=config/genreflex.in
GENREFLEXSHOUT=bin/genreflex
GENREFLEXBATIN=config/genreflex.bat.in
GENREFLEXBATOUT=bin/genreflex.bat
GENREFLEXROOTCINTSHIN=config/genreflex-rootcint.in
GENREFLEXROOTCINTSHOUT=bin/genreflex-rootcint
GENREFLEXROOTCINTBATIN=config/genreflex-rootcint.bat.in
GENREFLEXROOTCINTBATOUT=bin/genreflex-rootcint.bat
ROOTCINTSTUBSHIN=utils/src/rootcint_nostubs.sh
ROOTCINTSTUBSHOUT=bin/rootcint_nostubs.sh
######################################################################
#
### echo %%% Testing the echo features
#
Fons Rademakers
committed
if `(echo "testing\c"; echo 1,2,3) | grep c > /dev/null` ; then
Fons Rademakers
committed
if `(echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn > /dev/null`; then
ac_n= ac_c='
' ac_t=' '
else
ac_n=-n ac_c= ac_t=
fi
else
ac_n= ac_c='\c' ac_t=
fi
######################################################################
#
### echo %%% Help function
#
confhelp() {
vers=`cat build/version_number`
cat <<EOF
\`configure' configures ROOT $vers to adapt to many kind of systems.
Usage: $0 [architecture] [flag=value]
The architecture to build for will be guessed from the output of 'uname'.
If, however, that fails, or you don't want the 'native' compiler on the
host platform, you can specify the architecture to use by passing as the
FIRST argument one of the architecures given at the end of this message.
FLAG DESCRIPTION DEFAULT
--aclocaldir Autoconf macro install dir(<prefix>/share/aclocal)
--bindir Binary installation dir (<prefix>/bin)
--build Build configuration [debug, exceptions, ...],
overrides the ROOTBUILD shell variable
--cintincdir CINT interpeted headers (<libdir>/cint)
--datadir Data installation dir (<prefix>/share/root)
--docdir Documentation (<prefix>/share/doc/root)
--elispdir Where to put Emacs Lisp (<prefix>/share/emacs/site-lisp)
--etcdir Config installation dir (/etc/root)
--fontdir Font installation dir (<datadir>/fonts)
--iconpath Icon installation dir (<datadir>/icons)
--incdir Header installation dir (<prefix>/include/root)
--libdir Library installation dir (<prefix>/lib/root)
--macrodir Macro installation dir (<datadir>/macros)
--mandir Manpages installation dir (<prefix>/share/man/man1)
--no-create Do not create output files, dry run
--no-stubs Remove Stubs from dictionaries (Direct call mechanism)
--no-stubs-test Remove Stubs from dictionaries (Direct call mechanism, can be switched off in rootrc)
--prefix Installation prefix (/usr/local)
--srcdir Sources installation dir (<datadir>/src)
--testdir Tests (<docdir>/test)
--tutdir Tutorials (<docdir>/tutorial)
If any of the flags --cintincdir, --datadir, --docdir, --etcdir, --iconpath
--incdir, --libdir, --macrodir, --mandir, or --prefix is given,
ROOT will be compiled with static directory names, and you should not set
the ROOTSYS environment variable.
enable/disable options, prefix with either --enable- or --disable-
afs AFS support, requires AFS libs and objects
alien AliEn support, requires libgapiUI from ALICE
asimage Image processing support, requires libAfterImage
Fons Rademakers
committed
astiff Include tiff support in image processing
builtin-afterimage Built included libAfterImage, or use system libAfterImage
builtin-ftgl Built included libFTGL, or use system libftgl_pic
builtin-freetype Built included libfreetype, or use system libfreetype
builtin-pcre Built included libpcre, or use system libpcre
builtin-zlib Built included libz, or use system libz
castor CASTOR support, requires libshift from CASTOR >= 1.5.2
chirp Chirp support (Condor remote I/O), requires libchirp_client
cintex Build the libCintex Reflex interface library
clarens Clarens RPC support, optionally used by PROOF
dcache dCache support, requires libdcap from DESY
exceptions Turn on compiler exception handling capability
explicitlink Explicitly link with all dependent libraries
Fons Rademakers
committed
fftw3 Fast Fourier Transform support, requires libfftw3
g4root GEANT4 navigator based on TGeo, requires GEANT4 installed
globus Globus authentication support, requires Globus toolkit
glite gLite support, requires libglite-api-wrapper v.3 from GSI (https://subversion.gsi.de/trac/dgrid/wiki)
gsl-shared enable linking against shared libraries for GSL (default no)
krb5 Kerberos5 support, requires Kerberos libs
ldap LDAP support, requires (Open)LDAP libs
mathmore Build the new libMathMore extended math library, requires GSL (vers. >= 1.8)
memstat A memory statistics utility, helps to detect memory leaks
minuit2 Build the new libMinuit2 minimizer library
monalisa Monalisa monitoring support, requires libapmoncpp
mysql MySQL support, requires libmysqlclient
opengl OpenGL support, requires libGL and libGLU
oracle Oracle support, requires libocci
peac PEAC, PROOF Enabled Analysis Center, requires Clarens
pgsql PostgreSQL support, requires libpq
pythia6 Pythia6 EG support, requires libPythia6
pythia8 Pythia8 EG support, requires libPythia8
qt Qt graphics backend, requires libqt >= 3
qtgsi GSI's Qt integration, requires libqt >= 3
reflex Build the libReflex dictionary library
rfio RFIO support, requires libshift from CASTOR >= 1.5.2
roofit Build the libRooFit advanced fitting package
rpath Set run-time library load path on executables
ruby Ruby ROOT bindings, requires ruby >= 1.8
sapdb MaxDB/SapDB support, requires libsqlod and libsqlrte
shadowpw Shadow password support
shared Use shared 3rd party libraries if possible
soversion Set version number in sonames (recommended)
srp SRP support, requires SRP source tree
ssl SSL encryption support, requires openssl
table Build libTable contrib library
unuran UNURAN - package for generating non-uniform random numbers
xml XML parser interface
xrootd Build xrootd file server and its client (if supported)
with options, prefix with --with-, enables corresponding support
afs AFS support, location of AFS distribution
alien-incdir AliEn support, location of gapiUI.h
alien-libdir AliEn support, location of libapiUI
castor-incdir CASTOR support, location of stager_api.h
castor-libdir CASTOR support, location of libshift
chirp-incdir Chirp support, location of chirp_client.h
chirp-libdir Chirp support, location of libchirp_client
cppunit Cppunit testing, directory of the cppunit installation
dcap-incdir dCache support, location of dcap.h
dcap-libdir dCache support, location of libdcap
dicttype dictionary type: "cint" (default), "reflex", or "gccxml"
ftgl-incdir FTGL support, location of FTGL.h
ftgl-libdir FTGL support, location of libftgl_pic
fftw3-incdir FFTW3 support, location of fftw3.h
fftw3-libdir FFTW3 support, location of libfftw3 (libfftw3-3 for windows)
gfal-incdir GFAL support, location of gfal_api.h
gfal-libdir GFAL support, location of libgfal
g4-incdir GEANT4 support, location of GEANT4 header files
g4-libdir GEANT4 support, location of GEANT4 libraries
clhep-incdir CLHEP support, location of CLHEP header files
gsl-incdir GSL support, location of gsl/gsl_version.h
gsl-libdir GSL support, location of libgsl
gccxml Gccxml support, directory of the gccxml installation
globus Globus support, path to what should be GLOBUS_LOCATION
globus-incdir Globus support, location of globus header files
globus-libdir Globus support, location of globus libraries
krb5 Kerberos5 support, location of Kerberos distribution
krb5-incdir Kerberos5 support, location of krb5.h
krb5-libdir Kerberos5 support, location of libkrb5
ldap-incdir LDAP support, location of ldap.h
ldap-libdir LDAP support, location of libldap
monalisa-incdir Monalisa support, location of ApMon.h
monalisa-libdir Monalisa support, location of libapmoncpp
mysql-incdir MySQL support, location of mysql.h
mysql-libdir MySQL support, location of libmysqlclient
odbc-incdir ODBC support, location of sqlext.h
odbc-libdir ODBC support, location of libiodbc or libodbc
opengl-incdir OpenGL support, location of GL/gl.h
opengl-libdir OpenGL support, location of libGL
oracle-incdir Oracle support, location of occi.h
oracle-libdir Oracle support, location of libocci
pgsql-incdir PostgreSQL support, location of libpq-fe.h
pgsql-libdir PostgreSQL support, location of libpq
pythia6-libdir PYHTIA6 support, location of libPythia6