X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=configure.ac;h=44356f2770797c76134c64d4b5ce5235e704cf1e;hp=4b7c3d0495d6e2d2d7d7abe2d14e0dc0b97b3fbc;hb=a3e1ece48dd362e3862f701c043adb49ba93ad0c;hpb=0ff87319255da3da6d903a537400c348cb1f0722 diff --git a/configure.ac b/configure.ac index 4b7c3d04..44356f27 100644 --- a/configure.ac +++ b/configure.ac @@ -18,7 +18,7 @@ m4_define([ginac_release], [ginac_major_version.ginac_minor_version]) m4_define([ginac_interface_age], [0]) m4_define([ginac_binary_age], [0]) -AC_INIT([GiNaC], ginac_version, []) +AC_INIT([GiNaC], ginac_version, []) AC_PREREQ(2.52) AC_CONFIG_SRCDIR(ginac/basic.cpp) AC_CONFIG_HEADERS(config.h) @@ -73,15 +73,18 @@ AC_PROG_YACC dnl Check for data types which are needed by the hash function dnl (golden_ratio_hash). -AC_CHECK_SIZEOF(long, 4) -AC_CHECK_SIZEOF(long long, 8) -AC_CHECK_SIZEOF(long double, 12) +AC_CHECK_SIZEOF(int) +AC_CHECK_SIZEOF(long) +AC_CHECK_SIZEOF(long long) +AC_CHECK_SIZEOF(long double) +AC_CHECK_SIZEOF(void *) dnl Switch to C++ language mode for the following libraries and headers. AC_LANG([C++]) dnl Check for stuff needed for building the GiNaC interactive shell (ginsh). AC_CHECK_HEADERS(unistd.h) +GINAC_HAVE_RUSAGE AC_CHECK_HEADERS(readline/readline.h readline/history.h) if test "x${ac_cv_header_readline_readline_h}" != "xyes" -o "x${ac_cv_header_readline_history_h}" != "xyes"; then GINAC_WARNING([I could not find the headers for libreadline (needed for building ginsh).]) @@ -111,6 +114,19 @@ AC_CHECK_HEADER(typeinfo, , GINAC_ERROR([The standard header file cou AC_CHECK_HEADER(stdexcept, , GINAC_ERROR([The standard header file could not be found.])) AC_CHECK_HEADER(algorithm, , GINAC_ERROR([The standard header file could not be found.])) AC_CHECK_HEADER(limits, , GINAC_ERROR([The standard header file could not be found.])) +if test "x$CONFIG_RUSAGE" = "xno"; then + AC_CHECK_HEADER(ctime, , GINAC_ERROR([The standard header file could not be found.])) +fi + +dnl Check for dl library (needed for GiNaC::compile). +AC_CHECK_LIB(dl, dlopen, + [ + DL_LIBS="-ldl" + AC_SUBST(DL_LIBS) + AC_DEFINE(HAVE_LIBDL, 1, [set to 1 if you have a working libdl installed.]) + ], + GINAC_WARNING([libdl not found. GiNaC::compile will be disabled.])) +LIBS="$LIBS $DL_LIBS" dnl We need to have Bruno Haible's CLN installed. dnl (CLN versions >= 1.1.0 must have installed cln.m4 at a visible place, @@ -130,11 +146,14 @@ dnl Check for utilities needed by the different kinds of documentation. dnl Documentation needs only be built when extending it, so never mind if it dnl cannot find those helpers: AC_PATH_PROG(DOXYGEN, doxygen, "") +AM_CONDITIONAL(CONFIG_DOXYGEN, [test ! -z "$DOXYGEN"]) AC_PATH_PROG(LATEX, latex, "") AC_PATH_PROG(PDFLATEX, pdflatex, "") AC_PATH_PROG(MAKEINDEX, makeindex, "") AC_PATH_PROG(DVIPS, dvips, "") +AM_CONDITIONAL(CONFIG_TEX, [test ! \( -z "$LATEX" -o -z $"PDFLATEX" -o -z "$MAKEINDEX" -o -z "$DVIPS" \)]) AC_PATH_PROG(FIG2DEV, fig2dev, "") +AM_CONDITIONAL(CONFIG_FIG2DEV, [test ! -z "$FIG2DEV"]) dnl Output makefiles etc. AC_CONFIG_FILES([ @@ -150,7 +169,9 @@ ginsh/Makefile ginsh/ginsh.1 tools/Makefile tools/viewgar.1 +tools/ginac-excompiler doc/Makefile +doc/examples/Makefile doc/tutorial/Makefile doc/reference/Makefile doc/reference/DoxyfileHTML