| 1 | # autoreconf --force --install | 
|---|
| 2 |  | 
|---|
| 3 | AC_INIT([FACT++],[1.0],[thomas.bretz@epfl.ch],[FACTpp],[http://hello.example.com/]) | 
|---|
| 4 | AC_PREREQ([2.65]) | 
|---|
| 5 | AC_CONFIG_FILES([Makefile])   # causes x/Makefile.in to be created if x/Makefile.am exists | 
|---|
| 6 | #AC_CONFIG_HEADERS([config.h]) | 
|---|
| 7 | AC_CONFIG_MACRO_DIR([.macro_dir]) | 
|---|
| 8 | AC_CONFIG_AUX_DIR([.aux_dir]) | 
|---|
| 9 | AC_PROG_CC([colorgcc gcc]) | 
|---|
| 10 | #If output variable CXXFLAGS was not already set, set it to -g -O2 | 
|---|
| 11 | AC_PROG_CXX([colorgcc g++]) | 
|---|
| 12 | LT_INIT([disable-static]) | 
|---|
| 13 | AC_LANG(C++) | 
|---|
| 14 | #AC_PATH_XTRA | 
|---|
| 15 |  | 
|---|
| 16 |  | 
|---|
| 17 |  | 
|---|
| 18 |  | 
|---|
| 19 | AM_INIT_AUTOMAKE([1.11 -Wall subdir-objects std-options no-define color-tests parallel-tests silent-rules]) | 
|---|
| 20 | AM_SILENT_RULES([yes]) | 
|---|
| 21 | AM_PROG_CC_C_O | 
|---|
| 22 |  | 
|---|
| 23 | ###################################################################### | 
|---|
| 24 | # DOXYGEN SUPPORT | 
|---|
| 25 | ###################################################################### | 
|---|
| 26 |  | 
|---|
| 27 | ### FIXME: Need a configure commandline switch | 
|---|
| 28 | DX_ENV_APPEND(EXTRACT_ALL, YES) | 
|---|
| 29 | DX_ENV_APPEND(RECURSIVE,   YES) | 
|---|
| 30 | DX_ENV_APPEND(ALL_GRAPHS,  NO)  # change to yet to switch on call(er) graphs | 
|---|
| 31 |  | 
|---|
| 32 | #DX_DOXYGEN_FEATURE(ON) | 
|---|
| 33 | #DX_DOT_FEATURE(ON)               # sets HAVE_DOT | 
|---|
| 34 | #DX_HTML_FEATURE(ON)              # sets GENERATE_HTML (default) | 
|---|
| 35 | #DX_CHM_FEATURE(ON|OFF)           # sets GENERATE_HTMLHELP | 
|---|
| 36 | #DX_CHI_FEATURE(ON|OFF)           # sets GENERATE_CHI | 
|---|
| 37 | #DX_MAN_FEATURE(ON)               # sets GENERATE_MAN (segfaults) | 
|---|
| 38 | #DX_RTF_FEATURE(ON|OFF)           # sets GENERATE_RTF | 
|---|
| 39 | #DX_XML_FEATURE(ON|OFF)           # sets GENERATE_XML | 
|---|
| 40 | #DX_PDF_FEATURE(ON|OFF)           # sets GENERATE_PDF (default) | 
|---|
| 41 | DX_PS_FEATURE(OFF)                # sets GENERATE_PS  (default) | 
|---|
| 42 | DX_INIT_DOXYGEN($PACKAGE_NAME)#, DOXYFILE-PATH, [OUTPUT-DIR]) | 
|---|
| 43 |  | 
|---|
| 44 | #USE_HTAGS              = $(USE_HTAGS) | 
|---|
| 45 |  | 
|---|
| 46 | ###################################################################### | 
|---|
| 47 | # pthread/Readline/NCurses (pthread needed by dim and boost) | 
|---|
| 48 | ###################################################################### | 
|---|
| 49 |  | 
|---|
| 50 | AC_LANG_PUSH(C) | 
|---|
| 51 |  | 
|---|
| 52 |  | 
|---|
| 53 | ACX_PTHREAD | 
|---|
| 54 |  | 
|---|
| 55 | CPPFLAGS+=" "$PTHREAD_CFLAGS" " | 
|---|
| 56 | LDFLAGS+=" "$PTHREAD_CFLAGS" " | 
|---|
| 57 |  | 
|---|
| 58 |  | 
|---|
| 59 | AC_CHECK_READLINE | 
|---|
| 60 |  | 
|---|
| 61 | CPPFLAGS+=" "$READLINE_INCLUDES" " | 
|---|
| 62 | LDFLAGS+=" "$READLINE_LIBS" " | 
|---|
| 63 |  | 
|---|
| 64 | #AC_CHECK_LIB(readline, readline, [], | 
|---|
| 65 | #   [ | 
|---|
| 66 | #      echo "Error! libreadline not found in default libarary paths." | 
|---|
| 67 | #      exit -1 | 
|---|
| 68 | #   ] | 
|---|
| 69 | #) | 
|---|
| 70 | #AC_CHECK_HEADERS(readline/readline.h, [], | 
|---|
| 71 | #   [ | 
|---|
| 72 | #      echo "Error! readline/readline.h not properly installed in default include path (maybe readline-dev missing)." | 
|---|
| 73 | #      exit -1 | 
|---|
| 74 | #   ] | 
|---|
| 75 | #) | 
|---|
| 76 | # | 
|---|
| 77 |  | 
|---|
| 78 | AC_CHECK_HEADERS(panel.h, [], | 
|---|
| 79 | [ | 
|---|
| 80 | echo "Error! Ncurses panel.h not properly installed in default include paths." | 
|---|
| 81 | exit -1 | 
|---|
| 82 | ] | 
|---|
| 83 | ) | 
|---|
| 84 | AC_CHECK_LIB(panel, update_panels, [], | 
|---|
| 85 | [ | 
|---|
| 86 | echo "Error! Ncurses libpanel not properly installed in the default libarary paths." | 
|---|
| 87 | exit -1 | 
|---|
| 88 | ] | 
|---|
| 89 | ) | 
|---|
| 90 |  | 
|---|
| 91 | AC_LANG_POP | 
|---|
| 92 |  | 
|---|
| 93 | ###################################################################### | 
|---|
| 94 | # Xm.h (lesstif/motif, needed by did) | 
|---|
| 95 | ###################################################################### | 
|---|
| 96 |  | 
|---|
| 97 | AC_FIND_MOTIF | 
|---|
| 98 |  | 
|---|
| 99 | CPPFLAGS+=" "$MOTIF_INCL" " | 
|---|
| 100 | LDFLAGS+=" "$MOTIF_LDFLAGS" " | 
|---|
| 101 |  | 
|---|
| 102 | #AC_CHECK_HEADERS([Mrm/MrmAppl.h], [], | 
|---|
| 103 | #   [ | 
|---|
| 104 | #      echo "Error! Mrm/MrmAppl.h not properly installed, needed to compile did (you need most probably lesstif2-dev)." | 
|---|
| 105 | #      exit -1 | 
|---|
| 106 | #   ] | 
|---|
| 107 | #) | 
|---|
| 108 |  | 
|---|
| 109 | ###################################################################### | 
|---|
| 110 | # MySQL(++) SUPPORT | 
|---|
| 111 | ###################################################################### | 
|---|
| 112 |  | 
|---|
| 113 | MYSQL_DEVEL | 
|---|
| 114 | MYSQLPP_DEVEL | 
|---|
| 115 |  | 
|---|
| 116 | LDFLAGS+=" -lmysqlpp " | 
|---|
| 117 |  | 
|---|
| 118 | ###################################################################### | 
|---|
| 119 | # BOOST SUPPORT | 
|---|
| 120 | ###################################################################### | 
|---|
| 121 |  | 
|---|
| 122 | AX_BOOST_BASE([1.40], [], | 
|---|
| 123 | [ | 
|---|
| 124 | echo "Error! The boost C++ libraries are not properly installed." | 
|---|
| 125 | exit -1 | 
|---|
| 126 | ] | 
|---|
| 127 | ) | 
|---|
| 128 |  | 
|---|
| 129 | AX_BOOST_ASIO | 
|---|
| 130 | AX_BOOST_DATE_TIME | 
|---|
| 131 | AX_BOOST_FILESYSTEM | 
|---|
| 132 | AX_BOOST_PROGRAM_OPTIONS | 
|---|
| 133 | AX_BOOST_REGEX | 
|---|
| 134 | AX_BOOST_SYSTEM | 
|---|
| 135 | AX_BOOST_THREAD | 
|---|
| 136 | #ax_boost_iostreams | 
|---|
| 137 | #ax_boost_python | 
|---|
| 138 | #ax_boost_serialization | 
|---|
| 139 | #ax_boost_signals | 
|---|
| 140 | #ax_boost_test_exec_monitor | 
|---|
| 141 | #ax_boost_unit_test_framework | 
|---|
| 142 | #ax_boost_wave | 
|---|
| 143 | #ax_boost_wserialization | 
|---|
| 144 |  | 
|---|
| 145 | LDFLAGS+=" -lboost_date_time" | 
|---|
| 146 | LDFLAGS+=" -lboost_filesystem" | 
|---|
| 147 | LDFLAGS+=" -lboost_program_options" | 
|---|
| 148 | LDFLAGS+=" -lboost_regex" | 
|---|
| 149 | LDFLAGS+=" -lboost_system" | 
|---|
| 150 | LDFLAGS+=" -lboost_thread " | 
|---|
| 151 |  | 
|---|
| 152 | #AC_CHECK_HEADERS( | 
|---|
| 153 | #   [\ | 
|---|
| 154 | #      boost/bind.hpp \ | 
|---|
| 155 | #      boost/lexical_cast.hpp \ | 
|---|
| 156 | #      boost/filesystem.hpp \ | 
|---|
| 157 | #      boost/thread.hpp \ | 
|---|
| 158 | #      boost/function.hpp \ | 
|---|
| 159 | #      boost/regex.hpp \ | 
|---|
| 160 | #      boost/asio.hpp \ | 
|---|
| 161 | #      boost/enable_shared_from_this.hpp \ | 
|---|
| 162 | #      boost/asio/deadline_timer.hpp \ | 
|---|
| 163 | #      boost/date_time/posix_time/posix_time.hpp \ | 
|---|
| 164 | #      boost/date_time/local_time/local_time.hpp \ | 
|---|
| 165 | #      boost/date_time/gregorian/gregorian.hpp | 
|---|
| 166 | #   ], [], | 
|---|
| 167 | #   [ | 
|---|
| 168 | #      echo "Error! At least one needed header of the boost C++ libararies is missing." | 
|---|
| 169 | #      exit -1 | 
|---|
| 170 | #   ] | 
|---|
| 171 | #) | 
|---|
| 172 |  | 
|---|
| 173 | ###################################################################### | 
|---|
| 174 | # ROOT SUPPORT | 
|---|
| 175 | ###################################################################### | 
|---|
| 176 |  | 
|---|
| 177 | # ROOT_PATH([5.12/00, [ACTION-IF-FOUND, [ACTION-IF-NOT-FOUND]]]) | 
|---|
| 178 | # ROOT_PATH([5.12/00]) | 
|---|
| 179 | # ROOT_PATH(3.03/05, , AC_MSG_ERROR(Your ROOT version is too old)) | 
|---|
| 180 | # ROOT_PATH(, AC_DEFINE([HAVE_ROOT])) | 
|---|
| 181 |  | 
|---|
| 182 | # ROOTCONF           full path to root-config | 
|---|
| 183 | # ROOTEXEC           full path to root | 
|---|
| 184 | # ROOTCINT           full path to rootcint | 
|---|
| 185 | # ROOTLIBDIR         Where the ROOT libraries are | 
|---|
| 186 | # ROOTINCDIR         Where the ROOT headers are | 
|---|
| 187 | # ROOTETCDIR         Where the ROOT configuration is | 
|---|
| 188 | # ROOTCFLAGS         Extra compiler flags | 
|---|
| 189 | # ROOTLIBS           ROOT basic libraries | 
|---|
| 190 | # ROOTGLIBS          ROOT basic + GUI libraries | 
|---|
| 191 | # ROOTAUXLIBS        Auxilary libraries and linker flags for ROOT | 
|---|
| 192 | # ROOTAUXCFLAGS      Auxilary compiler flags | 
|---|
| 193 | # ROOTRPATH          Same as ROOTLIBDIR | 
|---|
| 194 |  | 
|---|
| 195 |  | 
|---|
| 196 | ###################################################################### | 
|---|
| 197 | # Check if we have colordiff to colorize 'svn diff' | 
|---|
| 198 | ###################################################################### | 
|---|
| 199 |  | 
|---|
| 200 | AC_CHECK_PROG(COLORDIFF, colordiff, colordiff, cat) | 
|---|
| 201 |  | 
|---|
| 202 | ########################################################################### | 
|---|
| 203 |  | 
|---|
| 204 | #AC_C_CONST | 
|---|
| 205 | #AC_TYPE_PID_T | 
|---|
| 206 | #AC_HEADER_STDC | 
|---|
| 207 |  | 
|---|
| 208 | ########################################################################## | 
|---|
| 209 | # debug compilation support | 
|---|
| 210 | ########################################################################## | 
|---|
| 211 | # | 
|---|
| 212 | #AC_MSG_CHECKING([whether to build with debug information]) | 
|---|
| 213 | #AC_ARG_ENABLE([debug], | 
|---|
| 214 | #    [AS_HELP_STRING([--enable-debug], | 
|---|
| 215 | #        [enable debug data generation (def=no)])], | 
|---|
| 216 | #    [debugit="$enableval"], | 
|---|
| 217 | #    [debugit=no]) | 
|---|
| 218 | #AC_MSG_RESULT([$debugit]) | 
|---|
| 219 | # | 
|---|
| 220 | #if test x"$debugit" = x"yes"; then | 
|---|
| 221 | #    AC_DEFINE([DEBUG],[],[Debug Mode]) | 
|---|
| 222 | #    AM_CXXFLAGS="$AM_CXXFLAGS -g -Wall -Werror -Wno-uninitialized -O0" | 
|---|
| 223 | #else | 
|---|
| 224 | #    AC_DEFINE([NDEBUG],[],[No-debug Mode]) | 
|---|
| 225 | #    AM_CXXFLAGS="$AM_CXXFLAGS -O3" | 
|---|
| 226 | #fi | 
|---|
| 227 | # | 
|---|
| 228 | ########################################################################### | 
|---|
| 229 | #To get the changed compiler flags distributed among your final Makefiles you have to add the following line somewhere afterwards: | 
|---|
| 230 | # | 
|---|
| 231 | #AC_SUBST([AM_CXXFLAGS]) | 
|---|
| 232 |  | 
|---|
| 233 |  | 
|---|
| 234 |  | 
|---|
| 235 | AC_OUTPUT | 
|---|