AC_INIT([Rappture],[1.4],[rappture@nanohub.org]) AC_CONFIG_AUX_DIR(cf) RAPPTURE_MAJOR_VERSION=1 RAPPTURE_MINOR_VERSION=4 RAPPTURE_RELEASE_SERIAL=0 #------------------------------------------------------------------------ # Handle the --prefix=... option #------------------------------------------------------------------------ if test "${prefix}" = "NONE"; then prefix=/usr/local fi if test "${exec_prefix}" = "NONE"; then exec_prefix=$prefix fi AC_PROG_INSTALL AC_PROG_INSTALL AC_PROG_RANLIB AC_PROG_LN_S AC_PROG_MKDIR_P AC_PROG_MAKE_SET # Check for C, C++, and FORTRAN AC_PROG_CC AC_PROG_CXX # Avoid g95 AC_PROG_F77([g77 gfortran f77 fort77 f90 xlf xlf90 fl32]) AC_LANG([C]) AC_HEADER_STDC AC_CHECK_FUNC(atol,,AC_MSG_ERROR(oops! no atol ?!?)) AC_LANG([C++]) AC_PATH_X AC_ARG_WITH( [install], [AS_HELP_STRING([--with-install[=DIR]], [location of installation @<:@default=yes@:>@])], [], [with_install=yes]) if test "$with_install" != "yes"; then INSTALL_PREFIX=$with_install else INSTALL_PREFIX=$prefix fi if test "${libdir}" != "${prefix}/lib"; then LIB_SEARCH_DIRS="-L${prefix}/lib -L${libdir}" else LIB_SEARCH_DIRS="-L${libdir}" fi HAVE_VTK="" AC_ARG_WITH( [vtk], [AS_HELP_STRING([--with-vtk], [Build VTK for rappture])], [HAVE_VTK=$withval], [HAVE_VTK=""]) AC_CHECK_FUNCS(sysinfo) AC_CHECK_FUNCS(gettimeofday) AC_CHECK_FUNC(localtime,,AC_MSG_ERROR(oops! no localtime ?!?)) AC_CHECK_FUNC(getenv,,AC_MSG_ERROR(oops! no getenv ?!?)) AC_CHECK_HEADERS(sys/sysinfo.h) AC_CHECK_LIB(ncurses, clrtoeol,,AC_MSG_ERROR([ncurses library missing?])) AC_CHECK_HEADERS(ncurses.h,,AC_MSG_WARN(ncurses headers missing ?)) AC_CHECK_LIB(stdc++, main,,AC_MSG_ERROR(librappture requires libstdc++)) AC_CHECK_HEADERS(algorithm,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(cctype,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(cfloat,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(cmath,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(cstdio,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(cstdlib,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(cstring,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(fstream,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(list,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(iostream,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(iterator,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(sstream,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(stack,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(string,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(vector,,AC_MSG_WARN(STL classes missing ?)) AC_CHECK_HEADERS(assert.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(ctype.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(errno.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(limits.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(string.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(stdlib.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(stddef.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(float.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(math.h,,AC_MSG_WARN(C headers missing ?)) dnl AC_CHECK_HEADERS(ieeefp.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(malloc.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(memory.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(unistd.h,,AC_MSG_WARN(C headers missing ?)) AC_CHECK_HEADERS(inttypes.h,,AC_MSG_WARN(C headers missing ?)) if test "${ac_cv_header_inttypes_h}" = "yes" ; then HAVE_INTTYPES_H=1 else HAVE_INTTYPES_H=0 fi SVN_VERSION=`svnversion $srcdir` make_command="" for m in "$MAKE" make gmake gnumake ; do if test "x${m}" != "x" ; then if ( sh -c "$m --version" 2>/dev/null | grep GNU >/dev/null ) ; then make_command=$m; break; fi fi done if test "x${make_command}" = "x" ; then AC_MSG_ERROR([Requires GNU make. You can specify a version with \$MAKE]) fi AC_ARG_ENABLE( [lang], [AS_HELP_STRING([--enable-lang], [build language bindings @<:@default=yes@:>@])], [], [enable_lang=yes]) ENABLE_LANG= if test "$enable_lang" != "no" ; then ENABLE_LANG="yes" fi AC_ARG_ENABLE( [gui], [AS_HELP_STRING([--enable-gui], [build code related to the graphical user interface @<:@default=yes@:>@])], [], [enable_gui=yes]) ENABLE_GUI= if test "$enable_gui" != "no" ; then ENABLE_GUI="yes" fi TCL_VERSION="8.5" TK_VERSION="8.5" for dir in \ ${exec_prefix} \ ${exec_prefix}/lib ; do tclconfig="${dir}/tclConfig.sh" if test -f "$tclconfig" ; then . $tclconfig break fi done AC_ARG_WITH( [ffmpeg], [AS_HELP_STRING([--with-ffmpeg[=DIR]], [location of ffmpeg @<:@default=yes@:>@])], [], [with_ffmpeg=yes]) TCL_INC_SPEC="$TCL_INCLUDE_SPEC" AC_ARG_WITH( [vtk], [AS_HELP_STRING([--with-vtk[=version]], [VTK library version @<:@default=6.1@:>@])], [], [with_vtk=yes]) AC_MSG_CHECKING([for vtk]) VTK_VERSION=6.1 VTK_TCL_DIR="" ENABLE_VTK= if test "$with_vtk" != "no" ; then if test "$with_vtk" != "yes" ; then VTK_VERSION=$with_vtk fi if test "x$with_vtk" != "x" ; then ENABLE_VTK=yes for path in \ $libdir/tcltk \ $exec_prefix/lib/tcltk \ $prefix/lib/tcltk \ $libdir \ $prefix/lib \ $exec_prefix/lib \ /usr/lib do if test -d "$path/vtk-$VTK_VERSION" ; then VTK_TCL_DIR="$path/vtk-$VTK_VERSION" fi if test "x${VTK_TCL_DIR}" != "x" ; then break fi done fi else if test "${ENABLE_GUI}" = "yes" ; then AC_MSG_WARN([VTK missing: Rappture GUI requires VTK for some features]) fi fi AC_MSG_RESULT([$VTK_TCL_DIR]) AC_ARG_ENABLE( [vtkdicom], [AS_HELP_STRING([--enable-vtkdicom], [Use vtkDICOM package @<:@default=no@:>@])], [], [enable_vtkdicom=no]) AC_MSG_CHECKING([for vtkDICOM]) ENABLE_VTK_DICOM= if test "$enable_vtkdicom" != "no" ; then ENABLE_VTK_DICOM="yes" fi AC_MSG_RESULT([$enable_vtkdicom]) RP_BASE=`pwd` #-------------------------------------------------------------------- # This macro figures out what flags to use with the compiler/linker # when building shared/static debug/optimized objects. This information # is all taken from the tclConfig.sh file. #-------------------------------------------------------------------- if test -f "${exec_prefix}/lib/tclConfig.sh" ; then . ${exec_prefix}/lib/tclConfig.sh fi if test -f "${exec_prefix}/lib/tkConfig.sh" ; then . ${exec_prefix}/lib/tkConfig.sh fi # ----------------------------------------------------------------------- # # Compiler characteristics: # Check for existence of types of size_t and pid_t # # ----------------------------------------------------------------------- AC_C_BIGENDIAN AC_CHECK_SIZEOF(int) AC_CHECK_SIZEOF(long) AC_CHECK_SIZEOF(long long) AC_CHECK_SIZEOF(void *) SIZEOF_LONG="${ac_cv_sizeof_long}" SIZEOF_LONG_LONG="${ac_cv_sizeof_long_long}" SIZEOF_VOID_P="${ac_cv_sizeof_void_p}" SIZEOF_INT="${ac_cv_sizeof_int}" #-------------------------------------------------------------------- # Set the default compiler switches based on the --enable-symbols # option. #-------------------------------------------------------------------- SC_ENABLE_SYMBOLS AC_SUBST(CFLAGS_DEBUG) AC_SUBST(CFLAGS_OPTIMIZE) AC_SUBST(ENABLE_LANG) AC_SUBST(ENABLE_GUI) AC_SUBST(ENABLE_VTK) AC_SUBST(ENABLE_VTK_DICOM) AC_SUBST(HAVE_INTTYPES_H) AC_SUBST(INSTALL_PREFIX) AC_SUBST(LIB_SEARCH_DIRS) AC_SUBST(MAKE, ${make_command}) AC_SUBST(SVN_VERSION) AC_SUBST(RP_BASE) AC_SUBST(SHLIB_CFLAGS) AC_SUBST(SHLIB_LD) AC_SUBST(SHLIB_LDFLAGS) AC_SUBST(SHLIB_SUFFIX) AC_SUBST(SIZEOF_INT) AC_SUBST(SIZEOF_LONG) AC_SUBST(SIZEOF_LONG_LONG) AC_SUBST(SIZEOF_VOID_P) AC_SUBST(STLIB_LD) AC_SUBST(TCL_INC_SPEC) AC_SUBST(TCL_LIB_SPEC) AC_SUBST(TCL_CFLAGS_DEBUG) AC_SUBST(TCL_CFLAGS_OPTIMIZE) AC_SUBST(TCL_SHLIB_CFLAGS) AC_SUBST(TCL_SHLIB_LD) AC_SUBST(TCL_SHLIB_LDFLAGS) AC_SUBST(TCL_SHLIB_SUFFIX) AC_SUBST(TCL_VERSION) AC_SUBST(TCL_VERSION) AC_SUBST(TK_INC_SPEC) AC_SUBST(TK_LIB_SPEC) AC_SUBST(TCL_CFLAGS_DEBUG) AC_SUBST(TCL_SHLIB_CFLAGS) AC_SUBST(TCL_SHLIB_SUFFIX) AC_SUBST(TCL_SHLIB_LD) AC_SUBST(TCL_SHLIB_LDFLAGS) AC_SUBST(TK_XLIBSW) AC_SUBST(TK_VERSION) AC_SUBST(VTK_TCL_DIR) AC_SUBST(VTK_VERSION) AC_SUBST(XSUBPP) AC_SUBST(STATSDIR) AC_SUBST(X_INCLUDES) AC_SUBST(X_LIBRARIES) AC_SUBST(WORDSIZE) AC_SUBST(RAPPTURE_MAJOR_VERSION) AC_SUBST(RAPPTURE_MINOR_VERSION) AC_SUBST(RAPPTURE_RELEASE_SERIAL) AC_SUBST(HAVE_VTK) dnl read Makefile.in and write Makefile AC_CONFIG_FILES([ Makefile fixrunpaths.tcl apps/Makefile apps/about apps/copy_rappture_examples apps/encodedata apps/rappture apps/rappture-csh.env apps/rappture.env apps/rappture.use apps/rerun apps/simsim apps/xmldiff ]) AC_OUTPUT