| 1 | ###################################################################### | 
|---|
| 2 | # Autoconf initial setup | 
|---|
| 3 | ###################################################################### | 
|---|
| 4 |  | 
|---|
| 5 | #[AC_]PACKAGE_NAME | 
|---|
| 6 | #[AC_]PACKAGE_TARNAME | 
|---|
| 7 | #[AC_]PACKAGE_VERSION | 
|---|
| 8 | #[AC_]PACKAGE_STRING | 
|---|
| 9 | #[AC_]PACKAGE_BUGREPORT | 
|---|
| 10 | AC_INIT([FACT++],[1.0],[thomas.bretz@phys.ethz.ch],[FACTpp],[https://fact.isdc.unige.ch/svn/trunk/FACT++/]) | 
|---|
| 11 | AC_PREREQ([2.65]) | 
|---|
| 12 | AC_CONFIG_FILES([Makefile])   # causes x/Makefile.in to be created if x/Makefile.am exists | 
|---|
| 13 | #AC_CONFIG_HEADERS([config.h]) | 
|---|
| 14 | AC_CONFIG_MACRO_DIR([.macro_dir]) | 
|---|
| 15 | AC_CONFIG_AUX_DIR([.aux_dir]) | 
|---|
| 16 |  | 
|---|
| 17 | # Make sure none of the following will set -O2 | 
|---|
| 18 | AC_ARG_ENABLE([optimization], | 
|---|
| 19 | AS_HELP_STRING([--disable-optimization], [Compile with -O0 instead of -O3]) | 
|---|
| 20 | ) | 
|---|
| 21 | AS_IF([test "x$enable_optimization" != "xno"], [MYFLAGS+=" -O3"], [MYFLAGS+=" -O0"]) | 
|---|
| 22 |  | 
|---|
| 23 | AC_ARG_ENABLE([debug], | 
|---|
| 24 | AS_HELP_STRING([--enable-debug], [Compile with debugging symbols (-g)]) | 
|---|
| 25 | ) | 
|---|
| 26 | AS_IF([test "x$enable_debug" = "xyes"], [MYFLAGS+=" -g"]) | 
|---|
| 27 |  | 
|---|
| 28 | CFLAGS+=$MYFLAGS | 
|---|
| 29 | CXXFLAGS+=$MYFLAGS | 
|---|
| 30 |  | 
|---|
| 31 | AC_PROG_CC([gcc]) | 
|---|
| 32 | AC_PROG_CXX([g++]) | 
|---|
| 33 |  | 
|---|
| 34 | COLORGCC=`which colorgcc` | 
|---|
| 35 | AS_IF([test -n "$COLORGCC"], [ | 
|---|
| 36 | AC_CONFIG_LINKS([g++:$COLORGCC gcc:$COLORGCC]) | 
|---|
| 37 | PATH=./:$PATH | 
|---|
| 38 | ]) | 
|---|
| 39 |  | 
|---|
| 40 | #AC_PROG_CC_C99 | 
|---|
| 41 | AC_PROG_CC_STDC | 
|---|
| 42 |  | 
|---|
| 43 | ###################################################################### | 
|---|
| 44 | # GNUC extension support (needed for the event builder) | 
|---|
| 45 | ###################################################################### | 
|---|
| 46 |  | 
|---|
| 47 | AC_USE_SYSTEM_EXTENSIONS(_GNU_SOURCE) | 
|---|
| 48 |  | 
|---|
| 49 | ###################################################################### | 
|---|
| 50 | # Check for right C++ standard | 
|---|
| 51 | ###################################################################### | 
|---|
| 52 |  | 
|---|
| 53 | #AC_CXX_HEADER_STDCXX_0X | 
|---|
| 54 | AC_CXX_COMPILE_STDCXX_0X | 
|---|
| 55 | AS_IF([test "$ax_cv_cxx_compile_cxx0x_cxx" != yes], | 
|---|
| 56 | AC_MSG_ERROR([C++0x standard (-std=c++0x) not supported by compiler.])) | 
|---|
| 57 |  | 
|---|
| 58 | # Postponed after the BOOST library tests otherwise the check for boost::thread fails | 
|---|
| 59 | #CXXFLAGS+=" -std=c++0x" | 
|---|
| 60 |  | 
|---|
| 61 | PKG_CHECK_MODULES(DBUS, dbus-1 dbus-glib-1, HAVE_DBUS=yes, HAVE_DBUS=no) | 
|---|
| 62 |  | 
|---|
| 63 | CPPFLAGS+=" `pkg-config --cflags dbus-1 dbus-glib-1`" | 
|---|
| 64 | LDFLAGS+=" `pkg-config --libs dbus-1 dbus-glib-1`" | 
|---|
| 65 |  | 
|---|
| 66 | # dbus-1 | 
|---|
| 67 | # dbus-glib-1 | 
|---|
| 68 | # QtOpenGL | 
|---|
| 69 | # gl | 
|---|
| 70 | # QtCore | 
|---|
| 71 | # soprano | 
|---|
| 72 | # cfitsio | 
|---|
| 73 |  | 
|---|
| 74 | ###################################################################### | 
|---|
| 75 | # Setup the libtool and the language | 
|---|
| 76 | ###################################################################### | 
|---|
| 77 |  | 
|---|
| 78 | LT_INIT([disable-static]) | 
|---|
| 79 | AC_LANG(C++) | 
|---|
| 80 | #AC_PATH_XTRA | 
|---|
| 81 |  | 
|---|
| 82 | ###################################################################### | 
|---|
| 83 | # Automake initial setup | 
|---|
| 84 | ###################################################################### | 
|---|
| 85 | AM_INIT_AUTOMAKE([1.11 -Wall subdir-objects std-options no-define color-tests parallel-tests silent-rules]) | 
|---|
| 86 | AM_SILENT_RULES([yes]) | 
|---|
| 87 |  | 
|---|
| 88 | AM_PROG_CC_C_O | 
|---|
| 89 |  | 
|---|
| 90 | ###################################################################### | 
|---|
| 91 | # DOXYGEN SUPPORT | 
|---|
| 92 | ###################################################################### | 
|---|
| 93 |  | 
|---|
| 94 | ### FIXME: Need a configure commandline switch | 
|---|
| 95 | DX_ENV_APPEND(EXTRACT_ALL, YES) | 
|---|
| 96 | DX_ENV_APPEND(RECURSIVE,   YES) | 
|---|
| 97 | DX_ENV_APPEND(ALL_GRAPHS,  NO)  # change to yes to switch on call(er) graphs | 
|---|
| 98 |  | 
|---|
| 99 | #DX_DOXYGEN_FEATURE(ON) | 
|---|
| 100 | DX_DOT_FEATURE(ON)                # sets HAVE_DOT | 
|---|
| 101 | #DX_HTML_FEATURE(ON)              # sets GENERATE_HTML (default) | 
|---|
| 102 | #DX_CHM_FEATURE(ON|OFF)           # sets GENERATE_HTMLHELP | 
|---|
| 103 | #DX_CHI_FEATURE(ON|OFF)           # sets GENERATE_CHI | 
|---|
| 104 | #DX_MAN_FEATURE(ON)               # sets GENERATE_MAN (segfaults) | 
|---|
| 105 | #DX_RTF_FEATURE(ON|OFF)           # sets GENERATE_RTF | 
|---|
| 106 | #DX_XML_FEATURE(ON|OFF)           # sets GENERATE_XML | 
|---|
| 107 | #DX_PDF_FEATURE(ON|OFF)           # sets GENERATE_PDF (default) | 
|---|
| 108 | DX_PS_FEATURE(OFF)                # sets GENERATE_PS  (default) | 
|---|
| 109 | DX_INIT_DOXYGEN($PACKAGE_NAME)#, DOXYFILE-PATH, [OUTPUT-DIR]) | 
|---|
| 110 |  | 
|---|
| 111 | #USE_HTAGS              = $(USE_HTAGS) | 
|---|
| 112 |  | 
|---|
| 113 | ###################################################################### | 
|---|
| 114 | # pthread/Readline/NCurses (pthread needed by dim and boost) | 
|---|
| 115 | ###################################################################### | 
|---|
| 116 |  | 
|---|
| 117 | AC_LANG_PUSH(C) | 
|---|
| 118 |  | 
|---|
| 119 | # Check for math library (some linux need this to compile cfitsio) | 
|---|
| 120 | AC_CHECK_LIB([m],[cos]) | 
|---|
| 121 |  | 
|---|
| 122 | # Needed to compile dim | 
|---|
| 123 | ACX_PTHREAD | 
|---|
| 124 |  | 
|---|
| 125 | CPPFLAGS+=" "$PTHREAD_CFLAGS | 
|---|
| 126 | LDFLAGS+=" "$PTHREAD_CFLAGS | 
|---|
| 127 |  | 
|---|
| 128 |  | 
|---|
| 129 | # Needed to compile FACT++ | 
|---|
| 130 | AC_CHECK_READLINE | 
|---|
| 131 | AS_IF([test "x$have_readline" != "xyes"], | 
|---|
| 132 | AC_MSG_ERROR([The readline library is not properly installed.])) | 
|---|
| 133 |  | 
|---|
| 134 | CPPFLAGS+=" "$READLINE_INCLUDES | 
|---|
| 135 | LDFLAGS+=" "$READLINE_LIBS | 
|---|
| 136 |  | 
|---|
| 137 | # Needed to compile FACT++ | 
|---|
| 138 | AC_CHECK_HEADERS([panel.h],, | 
|---|
| 139 | AC_MSG_ERROR([ncurses header not found])) | 
|---|
| 140 |  | 
|---|
| 141 | # Needed to compile FACT++ | 
|---|
| 142 | AC_CHECK_LIB(panel, update_panels,, | 
|---|
| 143 | AC_MSG_ERROR([ncurses panel library not found])) | 
|---|
| 144 |  | 
|---|
| 145 | # Xm.h (lesstif/motif, needed to compile did) | 
|---|
| 146 | AC_FIND_MOTIF | 
|---|
| 147 |  | 
|---|
| 148 | CPPFLAGS+=" "$MOTIF_INCL | 
|---|
| 149 | LDFLAGS+=" "$MOTIF_LDFLAGS | 
|---|
| 150 |  | 
|---|
| 151 | AM_COND_IF(HAS_LIBXP,, | 
|---|
| 152 | AC_MSG_WARN([ Motif/lesstif not found!]) | 
|---|
| 153 | ) | 
|---|
| 154 |  | 
|---|
| 155 | # Check for zlib and exit with error if not found (defines HAVE_LIBZ) | 
|---|
| 156 | AC_CHECK_PACKAGE(zlib, inflateEnd, z, zlib.h, | 
|---|
| 157 | HAVE_ZLIB=yes, HAVE_ZLIB=no) | 
|---|
| 158 |  | 
|---|
| 159 | # Check for GL and GLU needed for the raw event viewer | 
|---|
| 160 | AC_CHECK_PACKAGE(GL, glLoadIdentity, GL, GL/gl.h, HAVE_GL=yes, HAVE_GL=no) | 
|---|
| 161 | AC_CHECK_PACKAGE(GLU, gluNewTess, GLU, GL/glu.h, HAVE_GLU=yes, HAVE_GLU=no) | 
|---|
| 162 |  | 
|---|
| 163 | # Check for libnova | 
|---|
| 164 | AC_CHECK_PACKAGE(nova, ln_get_julian_from_sys, nova, libnova/julian_day.h, HAVE_NOVA=yes, HAVE_NOVA=no) | 
|---|
| 165 |  | 
|---|
| 166 | # Taken from http://code.google.com/p/autoconf-gl-macros/ | 
|---|
| 167 | #AX_CHECK_GL | 
|---|
| 168 | #AX_CHECK_GLU | 
|---|
| 169 | #AX_CHECK_GLUT | 
|---|
| 170 |  | 
|---|
| 171 | # Needed to compile FACT++ | 
|---|
| 172 | AC_CHECK_PACKAGE(cfitsio, ffpss, cfitsio, fitsio.h, | 
|---|
| 173 | HAVE_CFITSIO=yes, HAVE_CFITSIO=no) | 
|---|
| 174 |  | 
|---|
| 175 | #AC_CHECK_HEADERS([fitsio.h],,AC_MSG_ERROR([cfitsio headers not found])) | 
|---|
| 176 | #AC_CHECK_LIB([cfitsio], main,,AC_MSG_ERROR([cfitsio library not found])) | 
|---|
| 177 |  | 
|---|
| 178 | AC_LANG_POP(C) | 
|---|
| 179 |  | 
|---|
| 180 | # Needed to compile FACT++ | 
|---|
| 181 | AC_CHECK_PACKAGE(ccfits, main, CCfits, CCfits/CCfits, | 
|---|
| 182 | HAVE_CCFITS=yes, HAVE_CCFITS=no) | 
|---|
| 183 |  | 
|---|
| 184 | #AC_CHECK_HEADERS([CCfits/CCfits],, | 
|---|
| 185 | #   AC_MSG_ERROR(CCfits headers not found)) | 
|---|
| 186 | #AC_CHECK_LIB(CCfits, main,, | 
|---|
| 187 | #   AC_MSG_ERROR(CCfits library not found)) | 
|---|
| 188 |  | 
|---|
| 189 | ###################################################################### | 
|---|
| 190 | # MySQL(++) SUPPORT | 
|---|
| 191 | ###################################################################### | 
|---|
| 192 |  | 
|---|
| 193 | # Needed to compile FACT++ | 
|---|
| 194 | MYSQL_DEVEL | 
|---|
| 195 | MYSQLPP_DEVEL | 
|---|
| 196 |  | 
|---|
| 197 | LDFLAGS+=" -lmysqlpp" | 
|---|
| 198 |  | 
|---|
| 199 | ###################################################################### | 
|---|
| 200 | # BOOST SUPPORT | 
|---|
| 201 | ###################################################################### | 
|---|
| 202 |  | 
|---|
| 203 | # Needed to compile FACT++ | 
|---|
| 204 | AX_BOOST_BASE([1.40], [], | 
|---|
| 205 | AC_MSG_ERROR([The boost C++ libraries (>=1.40) are not properly installed.]) | 
|---|
| 206 | ) | 
|---|
| 207 |  | 
|---|
| 208 | AC_MSG_CHECKING([for BOOST_CPPFLAGS]) | 
|---|
| 209 | AC_MSG_RESULT([$BOOST_CPPFLAGS]) | 
|---|
| 210 |  | 
|---|
| 211 | AC_MSG_CHECKING([for BOOST_LDFLAGS]) | 
|---|
| 212 | AC_MSG_RESULT([$BOOST_LDFLAGS]) | 
|---|
| 213 |  | 
|---|
| 214 | # Keep this order AX_BOOST_FILESYSTEM needs AX_BOOST_SYSTEM_LIB | 
|---|
| 215 | AX_BOOST_SYSTEM | 
|---|
| 216 | AS_IF([test "x$ax_cv_boost_system" != "xyes"], | 
|---|
| 217 | AC_MSG_ERROR([Problems with the Boost::System libarary.])) | 
|---|
| 218 |  | 
|---|
| 219 | AX_BOOST_ASIO | 
|---|
| 220 | AS_IF([test "x$ax_cv_boost_asio" != "xyes"], | 
|---|
| 221 | AC_MSG_ERROR([Problems with the Boost::ASIO libarary.])) | 
|---|
| 222 |  | 
|---|
| 223 | AX_BOOST_DATE_TIME | 
|---|
| 224 | AS_IF([test "x$ax_cv_boost_date_time" != "xyes"], | 
|---|
| 225 | AC_MSG_ERROR([Problems with the Boost::Date_Time libarary.])) | 
|---|
| 226 |  | 
|---|
| 227 | AX_BOOST_FILESYSTEM | 
|---|
| 228 | AS_IF([test "x$ax_cv_boost_filesystem" != "xyes"], | 
|---|
| 229 | AC_MSG_ERROR([Problems with the Boost::Filesystem libarary.])) | 
|---|
| 230 |  | 
|---|
| 231 | AX_BOOST_PROGRAM_OPTIONS | 
|---|
| 232 | AS_IF([test "x$ax_cv_boost_program_options" != "xyes"], | 
|---|
| 233 | AC_MSG_ERROR([Problems with the Boost::Program_Options libarary.])) | 
|---|
| 234 |  | 
|---|
| 235 | AX_BOOST_REGEX | 
|---|
| 236 | AS_IF([test "x$ax_cv_boost_regex" != "xyes"], | 
|---|
| 237 | AC_MSG_ERROR([Problems with the Boost::Regex libarary.])) | 
|---|
| 238 |  | 
|---|
| 239 | AX_BOOST_THREAD | 
|---|
| 240 | AS_IF([test "x$ax_cv_boost_thread" != "xyes"], | 
|---|
| 241 | AC_MSG_ERROR([Problems with the Boost::Thread libarary.])) | 
|---|
| 242 | #AX_BOOST_IOSTREAMS | 
|---|
| 243 | #AX_BOOST_PYTHON | 
|---|
| 244 | #AX_BOOST_SERIALIZATION | 
|---|
| 245 | #AX_BOOST_SIGNALS | 
|---|
| 246 | #AX_BOOST_TEST_EXEC_MONITOR | 
|---|
| 247 | #AX_BOOST_UNIT_TEST_FRAMEWORK | 
|---|
| 248 | #AX_BOOST_WAVE | 
|---|
| 249 | #AX_BOOST_WSERIALIZATION | 
|---|
| 250 |  | 
|---|
| 251 | LDFLAGS+=" "$BOOST_LDFLAGS | 
|---|
| 252 | LDFLAGS+=" "$BOOST_SYSTEM_LIB | 
|---|
| 253 | LDFLAGS+=" "$BOOST_ASIO_LIB | 
|---|
| 254 | LDFLAGS+=" "$BOOST_DATE_TIME_LIB | 
|---|
| 255 | LDFLAGS+=" "$BOOST_FILESYSTEM_LIB | 
|---|
| 256 | LDFLAGS+=" "$BOOST_PROGRAM_OPTIONS_LIB | 
|---|
| 257 | LDFLAGS+=" "$BOOST_REGEX_LIB | 
|---|
| 258 | LDFLAGS+=" "$BOOST_THREAD_LIB | 
|---|
| 259 |  | 
|---|
| 260 | CPPFLAGS+=" "$BOOST_CPPFLAGS | 
|---|
| 261 |  | 
|---|
| 262 | # Now we can safely add the compiler option for your prefered standard | 
|---|
| 263 | CXXFLAGS+=" -std=c++0x" | 
|---|
| 264 |  | 
|---|
| 265 | #AC_CHECK_HEADERS( | 
|---|
| 266 | #   [\ | 
|---|
| 267 | #      boost/bind.hpp \ | 
|---|
| 268 | #      boost/lexical_cast.hpp \ | 
|---|
| 269 | #      boost/filesystem.hpp \ | 
|---|
| 270 | #      boost/thread.hpp \ | 
|---|
| 271 | #      boost/function.hpp \ | 
|---|
| 272 | #      boost/regex.hpp \ | 
|---|
| 273 | #      boost/asio.hpp \ | 
|---|
| 274 | #      boost/enable_shared_from_this.hpp \ | 
|---|
| 275 | #      boost/asio/deadline_timer.hpp \ | 
|---|
| 276 | #      boost/date_time/posix_time/posix_time.hpp \ | 
|---|
| 277 | #      boost/date_time/local_time/local_time.hpp \ | 
|---|
| 278 | #      boost/date_time/gregorian/gregorian.hpp | 
|---|
| 279 | #   ], [], | 
|---|
| 280 | #   [ | 
|---|
| 281 | #      echo "Error! At least one needed header of the boost C++ libararies is missing." | 
|---|
| 282 | #      exit -1 | 
|---|
| 283 | #   ] | 
|---|
| 284 | #) | 
|---|
| 285 |  | 
|---|
| 286 | ###################################################################### | 
|---|
| 287 | # v8 / JavaScript | 
|---|
| 288 | ###################################################################### | 
|---|
| 289 |  | 
|---|
| 290 | AC_CHECK_CLASS(v8, [v8::HandleScope handle_scope], v8, v8.h, | 
|---|
| 291 | HAVE_V8=yes, HAVE_V8=no) | 
|---|
| 292 |  | 
|---|
| 293 | ###################################################################### | 
|---|
| 294 | # QT4/GUI SUPPORT | 
|---|
| 295 | ###################################################################### | 
|---|
| 296 |  | 
|---|
| 297 | AC_ARG_WITH([qt4], | 
|---|
| 298 | [AS_HELP_STRING([--without-qt4], [Disable qt4, i.e. disable gui support.])], | 
|---|
| 299 | [], [QT4_DO_IT_ALL]) | 
|---|
| 300 |  | 
|---|
| 301 | # This allows to list the QT4 stuff independantly later | 
|---|
| 302 | CPPFLAGS+=" "${QT4_INCLUDES}" " | 
|---|
| 303 | AC_CHECK_CLASS(QGL, [QGLWidget qgl], QtOpenGL, QtOpenGL/QGLWidget, | 
|---|
| 304 | HAVE_QGL=yes, HAVE_QGL=no) | 
|---|
| 305 | AC_CHECK_CLASS(qwt, [QwtPlot qwt],   qwt-qt4,  qwt_plot.h, | 
|---|
| 306 | HAVE_QWT=yes, HAVE_QWT=no) | 
|---|
| 307 | AC_CHECK_CLASS(soprano, Soprano::PluginManager::instance, soprano, Soprano/Soprano, | 
|---|
| 308 | HAVE_SOPRANO=yes, HAVE_SOPRANO=no) | 
|---|
| 309 |  | 
|---|
| 310 | ###################################################################### | 
|---|
| 311 | # ROOT SUPPORT | 
|---|
| 312 | ###################################################################### | 
|---|
| 313 |  | 
|---|
| 314 | AC_ARG_WITH([root], | 
|---|
| 315 | [AS_HELP_STRING([--without-root], [Disable root, i.e. disable gui support.])], | 
|---|
| 316 | [], [ROOT_PATH([5.12/00])] | 
|---|
| 317 | ) | 
|---|
| 318 |  | 
|---|
| 319 | if [test "$ROOTEXEC" != no -a -n "$ROOTVERSION"]  ; | 
|---|
| 320 | then | 
|---|
| 321 |  | 
|---|
| 322 | ROOTCPPFLAGS=$ROOTCFLAGS" "$ROOTAUXCFLAGS | 
|---|
| 323 | ROOTLDFLAGS="-L"$ROOTLIBDIR" -lGQt" | 
|---|
| 324 |  | 
|---|
| 325 | #AC_CHECK_PROG(HAVE_ROOT_QT, libGQt.so.$ROOTSOVERSION, yes, no, $ROOTLIBDIR) | 
|---|
| 326 | #AC_CHECK_PROG(HAVE_GQT,     libGQt.so.$ROOTSOVERSION, yes, no, $LD_LIBRARY_PATH) | 
|---|
| 327 |  | 
|---|
| 328 | # It seems it dooesn't work on older root versions | 
|---|
| 329 | ROOT_FEATURE([qt], [HAVE_ROOT_QT=yes]) | 
|---|
| 330 |  | 
|---|
| 331 | AC_SUBST(ROOTCPPFLAGS) | 
|---|
| 332 | AC_SUBST(ROOTLDFLAGS) | 
|---|
| 333 | fi | 
|---|
| 334 |  | 
|---|
| 335 |  | 
|---|
| 336 | ###################################################################### | 
|---|
| 337 | # Check if we have colordiff to colorize 'svn diff' | 
|---|
| 338 | ###################################################################### | 
|---|
| 339 |  | 
|---|
| 340 | # Nice to have to support colored diff | 
|---|
| 341 | AC_CHECK_PROG(COLORDIFF, colordiff,    colordiff, cat) | 
|---|
| 342 | AC_CHECK_PROG(GROFF,     groff,        yes, no) | 
|---|
| 343 | AC_CHECK_PROG(PS2PDF,    ps2pdf,       yes, no) | 
|---|
| 344 | AC_CHECK_PROG(HELP2MAN,  help2man,     yes, no) | 
|---|
| 345 | AC_CHECK_PROG(JSDOC,     jsdoc,        yes, no) | 
|---|
| 346 | AC_CHECK_PROG(MAILX,     mailx,        yes, no) | 
|---|
| 347 |  | 
|---|
| 348 | ########################################################################## | 
|---|
| 349 | # debug compilation support | 
|---|
| 350 | ########################################################################## | 
|---|
| 351 | # | 
|---|
| 352 | #AC_MSG_CHECKING([whether to build with debug information]) | 
|---|
| 353 | #AC_ARG_ENABLE([debug], | 
|---|
| 354 | #    [AS_HELP_STRING([--enable-debug], | 
|---|
| 355 | #        [enable debug data generation (def=no)])], | 
|---|
| 356 | #    [debugit="$enableval"], | 
|---|
| 357 | #    [debugit=no]) | 
|---|
| 358 | #AC_MSG_RESULT([$debugit]) | 
|---|
| 359 | # | 
|---|
| 360 | #if test x"$debugit" = x"yes"; then | 
|---|
| 361 | #    AC_DEFINE([DEBUG],[],[Debug Mode]) | 
|---|
| 362 | #    AM_CXXFLAGS="$AM_CXXFLAGS -g -Wall -Werror -Wno-uninitialized -O0" | 
|---|
| 363 | #else | 
|---|
| 364 | #    AC_DEFINE([NDEBUG],[],[No-debug Mode]) | 
|---|
| 365 | #    AM_CXXFLAGS="$AM_CXXFLAGS -O3" | 
|---|
| 366 | #fi | 
|---|
| 367 | # | 
|---|
| 368 |  | 
|---|
| 369 | ########################################################################## | 
|---|
| 370 | # produce conditionals for Makefile.am and for summary | 
|---|
| 371 | ########################################################################## | 
|---|
| 372 |  | 
|---|
| 373 | AM_CONDITIONAL(HAS_COLORDIFF, [test "$COLORDIFF" = colordiff]) | 
|---|
| 374 | AM_CONDITIONAL(HAS_GROFF,     [test "$GROFF" = yes]) | 
|---|
| 375 | AM_CONDITIONAL(HAS_PS2PDF,    [test "$PS2PDF" = yes]) | 
|---|
| 376 | AM_CONDITIONAL(HAS_HELP2MAN,  [test "$HELP2MAN" = yes]) | 
|---|
| 377 | AM_CONDITIONAL(HAS_JSDOC,     [test "$JSDOC" = yes]) | 
|---|
| 378 | AM_CONDITIONAL(HAS_MAILX,     [test "$MAILX" = yes]) | 
|---|
| 379 | AM_CONDITIONAL(HAS_DOXYGEN,   [test "$DX_DOXYGEN"]) | 
|---|
| 380 | AM_CONDITIONAL(HAS_DOT,       [test "$DX_DOT"]) | 
|---|
| 381 | AM_CONDITIONAL(HAS_COLORGCC,  [test "$COLORGCC"]) | 
|---|
| 382 | AM_CONDITIONAL(HAS_QT4,       [test "$QT4_VERSION"]) | 
|---|
| 383 | AM_CONDITIONAL(HAS_SQL,       [test "$MYSQLPP_LIB_DIR" -a "$MYSQLPP_INC_DIR" ]) | 
|---|
| 384 | AM_CONDITIONAL(HAS_ROOT,      [test "$ROOTEXEC" != no]) | 
|---|
| 385 | AM_CONDITIONAL(HAS_ROOT_QT,   [test "$HAVE_ROOT_QT" = yes]) | 
|---|
| 386 | AM_CONDITIONAL(HAS_CFITSIO,   [test "$HAVE_CFITSIO" = yes]) | 
|---|
| 387 | AM_CONDITIONAL(HAS_CCFITS,    [test "$HAVE_CCFITS" = yes]) | 
|---|
| 388 | AM_CONDITIONAL(HAS_FITS,      [test "$HAVE_CFITSIO" = yes -a "$HAVE_CCFITS" = yes]) | 
|---|
| 389 | AM_CONDITIONAL(HAS_ZLIB,      [test "$HAVE_ZLIB" = yes]) | 
|---|
| 390 | AM_CONDITIONAL(HAS_GL,        [test "$HAVE_GL" = yes]) | 
|---|
| 391 | AM_CONDITIONAL(HAS_GLU,       [test "$HAVE_GLU" = yes]) | 
|---|
| 392 | AM_CONDITIONAL(HAS_QGL,       [test "$HAVE_QGL" = yes]) | 
|---|
| 393 | AM_CONDITIONAL(HAS_QWT,       [test "$HAVE_QWT" = yes]) | 
|---|
| 394 | AM_CONDITIONAL(HAS_NOVA,      [test "$HAVE_NOVA" = yes]) | 
|---|
| 395 | AM_CONDITIONAL(HAS_SOPRANO,   [test "$HAVE_SOPRANO" = yes]) | 
|---|
| 396 | AM_CONDITIONAL(HAS_DBUS,      [test "$HAVE_DBUS" = yes]) | 
|---|
| 397 | AM_CONDITIONAL(HAS_V8,        [test "$HAVE_V8" = yes]) | 
|---|
| 398 |  | 
|---|
| 399 | AM_CONDITIONAL(HAS_GUI,       [test "$QT4_VERSION" -a "$HAVE_GL" = yes -a "$HAVE_GLU" = yes -a "$HAVE_QGL" = yes -a "$HAVE_ROOT_QT" = yes ]) | 
|---|
| 400 | AM_CONDITIONAL(HAS_VIEWER,    [test "$QT4_VERSION" -a "$HAVE_GL" = yes -a "$HAVE_GLU" = yes -a "$HAVE_QGL" = yes -a "$HAVE_QWT" = yes]) | 
|---|
| 401 |  | 
|---|
| 402 | AM_CONDITIONAL(IS_FALSE,      [test "x" = "y"]) | 
|---|
| 403 | AM_CONDITIONAL(IS_TRUE,       [test "x" = "x"]) | 
|---|
| 404 |  | 
|---|
| 405 | AM_COND_IF(HAS_FITS,  [AC_DEFINE(HAVE_FITS)], ) | 
|---|
| 406 | AM_COND_IF(HAS_ROOT,  [AC_DEFINE(HAVE_ROOT)], ) | 
|---|
| 407 | AM_COND_IF(HAS_ZLIB,  [AC_DEFINE(HAVE_ZLIB)], ) | 
|---|
| 408 | AM_COND_IF(HAS_NOVA,  [AC_DEFINE(HAVE_NOVA)], ) | 
|---|
| 409 | AM_COND_IF(HAS_DBUS,  [AC_DEFINE(HAVE_DBUS)], ) | 
|---|
| 410 | AM_COND_IF(HAS_SQL,   [AC_DEFINE(HAVE_SQL)],  ) | 
|---|
| 411 | AM_COND_IF(HAS_V8,    [AC_DEFINE(HAVE_V8)],   ) | 
|---|
| 412 | AM_COND_IF(HAS_MAILX, [AC_DEFINE(HAVE_MAILX)],) | 
|---|
| 413 |  | 
|---|
| 414 | ########################################################################## | 
|---|
| 415 | # print summary | 
|---|
| 416 | ########################################################################## | 
|---|
| 417 |  | 
|---|
| 418 | AC_OUTPUT | 
|---|
| 419 |  | 
|---|
| 420 | AC_MSG_NOTICE() | 
|---|
| 421 | AC_MSG_NOTICE(============================== summary =============================) | 
|---|
| 422 | AC_MSG_NOTICE() | 
|---|
| 423 | AC_MSG_NOTICE([ CFLAGS   = $CFLAGS]) | 
|---|
| 424 | AC_MSG_NOTICE() | 
|---|
| 425 | AC_MSG_NOTICE([ CXXFLAGS = $CXXFLAGS]) | 
|---|
| 426 | AC_MSG_NOTICE() | 
|---|
| 427 | AC_MSG_NOTICE([ CPPFLAGS = $CPPFLAGS]) | 
|---|
| 428 | AC_MSG_NOTICE() | 
|---|
| 429 | AC_MSG_NOTICE([ LDFLAGS  = $LDFLAGS]) | 
|---|
| 430 | AC_MSG_NOTICE() | 
|---|
| 431 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 432 | AC_MSG_NOTICE() | 
|---|
| 433 | AC_MSG_NOTICE([ BOOST_CPPFLAGS = $BOOST_CPPFLAGS]) | 
|---|
| 434 | AC_MSG_NOTICE([ BOOST_LDFLAGS  = $BOOST_LDFLAGS]) | 
|---|
| 435 | AC_MSG_NOTICE() | 
|---|
| 436 | AM_COND_IF(HAS_SQL, [ | 
|---|
| 437 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 438 | AC_MSG_NOTICE() | 
|---|
| 439 | AC_MSG_NOTICE([ MYSQLPP_INC_DIR = $MYSQLPP_INC_DIR]) | 
|---|
| 440 | AC_MSG_NOTICE([ MYSQLPP_LIB_DIR = $MYSQLPP_LIB_DIR]) | 
|---|
| 441 | AC_MSG_NOTICE() | 
|---|
| 442 | ],[]) | 
|---|
| 443 | AM_COND_IF(HAS_QT4, [ | 
|---|
| 444 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 445 | AC_MSG_NOTICE() | 
|---|
| 446 | AC_MSG_NOTICE([ QT4_VERSION  = $QT4_VERSION]) | 
|---|
| 447 | AC_MSG_NOTICE() | 
|---|
| 448 | AC_MSG_NOTICE([ QT4_LIB      = $QT4_LIB]) | 
|---|
| 449 | AC_MSG_NOTICE([ QT4_LDFLAGS  = $QT4_LDFLAGS]) | 
|---|
| 450 | AC_MSG_NOTICE([ QT4_INCLUDES = $QT4_INCLUDES]) | 
|---|
| 451 | AC_MSG_NOTICE() | 
|---|
| 452 | AC_MSG_NOTICE([ MOC4 = $MOC4]) | 
|---|
| 453 | AC_MSG_NOTICE([ UIC4 = $UIC4]) | 
|---|
| 454 | AC_MSG_NOTICE([ RCC4 = $RCC4]) | 
|---|
| 455 | AC_MSG_NOTICE() | 
|---|
| 456 | ],[]) | 
|---|
| 457 | AM_COND_IF(HAS_ROOT, [ | 
|---|
| 458 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 459 | AC_MSG_NOTICE() | 
|---|
| 460 | AC_MSG_NOTICE([ ROOTVERSION   = $ROOTVERSION]) | 
|---|
| 461 | AC_MSG_NOTICE() | 
|---|
| 462 | AC_MSG_NOTICE([ ROOTEXEC      = $ROOTEXEC]) | 
|---|
| 463 | AC_MSG_NOTICE([ ROOTCONF      = $ROOTCONF]) | 
|---|
| 464 | AC_MSG_NOTICE([ ROOTCINT      = $ROOTCINT]) | 
|---|
| 465 | AC_MSG_NOTICE([ ROOTCPPFLAGS  = $ROOTCPPFLAGS]) | 
|---|
| 466 | AC_MSG_NOTICE([ ROOTLDFLAGS   = $ROOTLDFLAGS]) | 
|---|
| 467 | AC_MSG_NOTICE() | 
|---|
| 468 | ],[]) | 
|---|
| 469 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 470 | AC_MSG_NOTICE() | 
|---|
| 471 | AC_MSG_NOTICE([ zlib                   / 'zlib.h'           found: $HAVE_ZLIB]) | 
|---|
| 472 | AC_MSG_NOTICE([ nova                   / libnova.so         found: $HAVE_NOVA]) | 
|---|
| 473 | AC_MSG_NOTICE([ v8                     / 'v8.h' / libv8.so  found: $HAVE_V8]) | 
|---|
| 474 | AC_MSG_NOTICE([ GL                     / GL/gl.h            found: $HAVE_GL]) | 
|---|
| 475 | AC_MSG_NOTICE([ GLU                    / GL/glu.h           found: $HAVE_GLU]) | 
|---|
| 476 | AC_MSG_NOTICE([ QtOpenGL               / QtOpenGL/QGLWidget found: $HAVE_QGL]) | 
|---|
| 477 | AC_MSG_NOTICE([ Qwt                    / qwt_plot.h         found: $HAVE_QWT]) | 
|---|
| 478 | AC_MSG_NOTICE([ Soprano                / Soprano/Soprano    found: $HAVE_SOPRANO]) | 
|---|
| 479 | AC_MSG_NOTICE([ cfitsio                / 'fitsio.h'         found: $HAVE_CFITSIO]) | 
|---|
| 480 | AC_MSG_NOTICE([ CCfits                 / 'CCfits/CCfits'    found: $HAVE_CCFITS]) | 
|---|
| 481 | AM_COND_IF(HAS_SQL, | 
|---|
| 482 | AC_MSG_NOTICE([ MySQL/MySQL++          / 'mysql++.h'        found: yes]), | 
|---|
| 483 | AC_MSG_NOTICE([ MySQL/MySQL++          / 'mysql++.h'        found: no]) | 
|---|
| 484 | ) | 
|---|
| 485 | AC_MSG_NOTICE([ DBus-1, DBus-glib-1    / pkg-config         found: $HAVE_DBUS]) | 
|---|
| 486 | AM_COND_IF(HAS_LIBXP, | 
|---|
| 487 | AC_MSG_NOTICE([ Motif/lesstif          / 'Xm/Xm.h' 'libXp'  found: yes]), | 
|---|
| 488 | AC_MSG_NOTICE([ Motif/lesstif          / 'Xm/Xm.h' 'libXp'  found: no]) | 
|---|
| 489 | ) | 
|---|
| 490 |  | 
|---|
| 491 | AM_COND_IF(HAS_LIBXP, | 
|---|
| 492 | AC_MSG_NOTICE([ Motif/lesstif          / 'Xm/Xm.h' 'libXp'  found: yes]), | 
|---|
| 493 | AC_MSG_NOTICE([ Motif/lesstif          / 'Xm/Xm.h' 'libXp'  found: no]) | 
|---|
| 494 | ) | 
|---|
| 495 | AM_COND_IF(HAS_COLORDIFF, | 
|---|
| 496 | AC_MSG_NOTICE([ colored svn diff       / 'colordiff'        found: yes]), | 
|---|
| 497 | AC_MSG_NOTICE([ colored svn diff       / 'colordiff'        found: no]) | 
|---|
| 498 | ) | 
|---|
| 499 | AM_COND_IF(HAS_JSDOC, | 
|---|
| 500 | AC_MSG_NOTICE([ JavaScript docu        / 'jsdoc'            found: yes]), | 
|---|
| 501 | AC_MSG_NOTICE([ JavaScript docu        / 'jsdoc'            found: no]) | 
|---|
| 502 | ) | 
|---|
| 503 | AM_COND_IF(HAS_V8,[ | 
|---|
| 504 | AM_COND_IF(HAS_MAILX, | 
|---|
| 505 | AC_MSG_NOTICE([ Mail support           / 'mailx'            found: yes]), | 
|---|
| 506 | AC_MSG_NOTICE([ Mail support           / 'mailx'            found: no]) | 
|---|
| 507 | ) | 
|---|
| 508 | ]) | 
|---|
| 509 |  | 
|---|
| 510 | AM_COND_IF(HAS_HELP2MAN,[ | 
|---|
| 511 | AC_MSG_NOTICE([ man-pages enabled      / 'help2man'         found: $HELP2MAN]) | 
|---|
| 512 | AM_COND_IF(HAS_GROFF, | 
|---|
| 513 | AC_MSG_NOTICE([ build of html enabled  / 'groff'            found: yes]) | 
|---|
| 514 | AC_MSG_NOTICE([ build of pdf  enabled  / 'ps2pdf'           found: $PS2PDF]), | 
|---|
| 515 | AC_MSG_NOTICE([ build of html and pdf  / 'groff'            found: no]) | 
|---|
| 516 | ) | 
|---|
| 517 | ],[ | 
|---|
| 518 | AC_MSG_NOTICE([ man, html, pdf enabled / 'help2man'         found: no]) | 
|---|
| 519 | ]) | 
|---|
| 520 |  | 
|---|
| 521 | AM_COND_IF(HAS_DOXYGEN, | 
|---|
| 522 | AC_MSG_NOTICE([ doxygen docu enabled   / 'doxygen'          found: $DX_DOXYGEN]), | 
|---|
| 523 | AC_MSG_NOTICE([ doxygen docu enabled   / 'doxygen'          found: no]) | 
|---|
| 524 | ) | 
|---|
| 525 | AM_COND_IF(HAS_DOT, | 
|---|
| 526 | AC_MSG_NOTICE([ doxygen graphs enabled / 'dot' (graphviz)   found: $DX_DOT]), | 
|---|
| 527 | AC_MSG_NOTICE([ doxygen graphs enabled / 'dot' (graphviz)   found: no]) | 
|---|
| 528 | ) | 
|---|
| 529 | AM_COND_IF(HAS_QT4, | 
|---|
| 530 | AC_MSG_NOTICE([ QT4 support enabled    /  QT4 toolkit       found: yes]), | 
|---|
| 531 | AC_MSG_NOTICE([ QT4 support enabled    /  QT4 toolkit       found: no]) | 
|---|
| 532 | ) | 
|---|
| 533 | AC_MSG_NOTICE([ ROOT support enabled   /  root >= 5.12/00   found: $ROOTEXEC]) | 
|---|
| 534 | AM_COND_IF(HAS_ROOT_QT, | 
|---|
| 535 | AC_MSG_NOTICE([ ROOT built with --with-qt                   found: yes]), | 
|---|
| 536 | AC_MSG_NOTICE([ ROOT built with --with-qt                   found: no]) | 
|---|
| 537 | ) | 
|---|
| 538 | AC_MSG_NOTICE() | 
|---|
| 539 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 540 | AC_MSG_NOTICE() | 
|---|
| 541 | AC_MSG_NOTICE([Suggestions and hints:]) | 
|---|
| 542 | AC_MSG_NOTICE() | 
|---|
| 543 | AC_MSG_NOTICE([ - Add 'V=1' to you make-call to switch on verbose output.]) | 
|---|
| 544 | AC_MSG_NOTICE([ - Do not try to create man-pages with doxygen,]) | 
|---|
| 545 | AC_MSG_NOTICE([   it does most probably not work.]) | 
|---|
| 546 | AM_COND_IF(HAS_COLORGCC,, | 
|---|
| 547 | AC_MSG_NOTICE([ - Install colorgcc to get colored compiler output.]) | 
|---|
| 548 | ) | 
|---|
| 549 | AC_MSG_NOTICE([ - If you send me a bug report about:]) | 
|---|
| 550 | AC_MSG_NOTICE([   + configure: please attach the file config.log]) | 
|---|
| 551 | AC_MSG_NOTICE([   + make: please send me the output of 'make V=1']) | 
|---|
| 552 | AC_MSG_NOTICE() | 
|---|
| 553 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 554 | AC_MSG_NOTICE() | 
|---|
| 555 | AC_MSG_NOTICE([Some interesting build targets:]) | 
|---|
| 556 | AC_MSG_NOTICE() | 
|---|
| 557 | AC_MSG_NOTICE([ diff:          colored 'svn diff' if colordiff is installed]) | 
|---|
| 558 | AM_COND_IF(HAS_HELP2MAN,[ | 
|---|
| 559 | AC_MSG_NOTICE([ program.man:   build man-page from 'program --help']) | 
|---|
| 560 | AC_MSG_NOTICE([                (display with 'man ./program.man')]) | 
|---|
| 561 | AM_COND_IF(HAS_GROFF,[ | 
|---|
| 562 | AC_MSG_NOTICE([ program.html:  build html page from man-page]) | 
|---|
| 563 | AM_COND_IF(HAS_PS2PDF, | 
|---|
| 564 | AC_MSG_NOTICE([ program.pdf:   build pdf documentation from man page]) | 
|---|
| 565 | ) | 
|---|
| 566 | ]) | 
|---|
| 567 | ]) | 
|---|
| 568 | AM_COND_IF(HAS_DOXYGEN, | 
|---|
| 569 | AC_MSG_NOTICE([ doxygen-run:   build html documentation with doxygen]) | 
|---|
| 570 | #   AC_MSG_NOTICE([ doxygen-doc:   build html and pdf documentation with doxygen]) | 
|---|
| 571 | ) | 
|---|
| 572 | AM_COND_IF(HAS_JSDOC, | 
|---|
| 573 | AC_MSG_NOTICE([ jsdoc:         build JavaScript documentation with jsdoc]) | 
|---|
| 574 | ) | 
|---|
| 575 | AC_MSG_NOTICE([ doc:           build all buildable documentation]) | 
|---|
| 576 | AC_MSG_NOTICE() | 
|---|
| 577 | AC_MSG_NOTICE(--------------------------------------------------------------------) | 
|---|
| 578 | AC_MSG_NOTICE() | 
|---|
| 579 | AM_COND_IF(HAS_ZLIB,, | 
|---|
| 580 | AC_MSG_WARN([ zlib not found. Support for reading .fits.gz disabled.]) | 
|---|
| 581 | ) | 
|---|
| 582 | AM_COND_IF(HAS_LIBXP,, | 
|---|
| 583 | AC_MSG_WARN([ Motif/lesstif not found. The dim gui did will not be built!]) | 
|---|
| 584 | ) | 
|---|
| 585 | AM_COND_IF(HAS_FITS,, | 
|---|
| 586 | AC_MSG_WARN([ FITS support disabled. cfitsio/CCfits missing!]) | 
|---|
| 587 | ) | 
|---|
| 588 | AM_COND_IF(HAS_ROOT, | 
|---|
| 589 | [AM_COND_IF(HAS_ROOT_QT,, | 
|---|
| 590 | AC_MSG_WARN([ root found but it was built without the --with-qt option]) | 
|---|
| 591 | )] | 
|---|
| 592 | ) | 
|---|
| 593 | AM_COND_IF(HAS_QT4,, AC_MSG_WARN([ QT4 missing - GUIs disabled!])) | 
|---|
| 594 | AM_COND_IF(HAS_GL,,  AC_MSG_WARN([ GL not found - GUIs will be disabled.])) | 
|---|
| 595 | AM_COND_IF(HAS_GLU,, AC_MSG_WARN([ GLU not found - GUIs will be disabled.])) | 
|---|
| 596 | AM_COND_IF(HAS_QGL,, AC_MSG_WARN([ QtOpenGl not found - GUIs will be disabled.])) | 
|---|
| 597 | AM_COND_IF(HAS_QWT,, AC_MSG_WARN([ Qwt not found - viewer will be disabled.])) | 
|---|
| 598 | AM_COND_IF(HAS_GUI, [], | 
|---|
| 599 | AC_MSG_WARN([ Either of the necessary packages not found - fact GUI disabled!]) | 
|---|
| 600 | ) | 
|---|
| 601 | AM_COND_IF(HAS_VIEWER, [], | 
|---|
| 602 | AC_MSG_WARN([ Either of the necessary packages not found - viewer GUI disabled!]) | 
|---|
| 603 | ) | 
|---|
| 604 | AM_COND_IF(HAS_JSDOC,,   AC_MSG_WARN([ JavaScript documentation disabled!])) | 
|---|
| 605 | AM_COND_IF(HAS_SQL,,     AC_MSG_WARN([ database support globally disabled!])) | 
|---|
| 606 | AM_COND_IF(HAS_NOVA,,    AC_MSG_WARN([ libnova missing - smartfact will be compiles without astronomy support!])) | 
|---|
| 607 | AM_COND_IF(HAS_V8,,      AC_MSG_WARN([ libv8 missing - JavaScript support will be disabled!])) | 
|---|
| 608 | AM_COND_IF(HAS_DBUS,,    AC_MSG_WARN([ DBus libraries missing - skypeclient will not be compiled!])) | 
|---|
| 609 | AM_COND_IF(HAS_SOPRANO,, AC_MSG_WARN([ Soprano libraries missing - tngweather will not be compiled!])) | 
|---|
| 610 | AC_MSG_NOTICE() | 
|---|