X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=configure;h=7d002ff2620e27940c8bdc0e689fba163b4465d4;hp=bd6c576be3c36b06ef2a4660b68c30e2323ee620;hb=65dd17f1d3b192b7fbe773250702ad191c4019f8;hpb=c66c8e73568eeac73afb5be4881698901462fefc diff --git a/configure b/configure index bd6c576b..7d002ff2 100755 --- a/configure +++ b/configure @@ -544,10 +544,10 @@ fi GINACLIB_MAJOR_VERSION=0 -GINACLIB_MINOR_VERSION=4 -GINACLIB_MICRO_VERSION=1 +GINACLIB_MINOR_VERSION=6 +GINACLIB_MICRO_VERSION=0 GINACLIB_INTERFACE_AGE=0 -GINACLIB_BINARY_AGE=1 +GINACLIB_BINARY_AGE=0 GINACLIB_VERSION=$GINACLIB_MAJOR_VERSION.$GINACLIB_MINOR_VERSION.$GINACLIB_MICRO_VERSION @@ -2307,9 +2307,170 @@ else fi done +if test "x${ac_cv_header_readline_readline_h}" != "xyes" -o "x${ac_cv_header_readline_history_h}" != "xyes"; then + +ginac_warning_txt="$ginac_warning_txt +== I could not find the headers for libreadline (needed for building ginsh). +" +ginac_warning=yes +fi +LIBTERMCAP= +for ac_func in tgetent +do +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 +echo "configure:2322: checking for $ac_func" >&5 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char $ac_func(); + +int main() { + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_$ac_func) || defined (__stub___$ac_func) +choke me +#else +$ac_func(); +#endif + +; return 0; } +EOF +if { (eval echo configure:2353: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_$ac_func=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_$ac_func=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` + cat >> confdefs.h <&6 +fi +done + +if test "x$ac_cv_func_tgetent" = "xyes"; then + : +else + echo $ac_n "checking for tgetent in -lncurses""... $ac_c" 1>&6 +echo "configure:2381: checking for tgetent in -lncurses" >&5 +ac_lib_var=`echo ncurses'_'tgetent | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lncurses $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBTERMCAP="-lncurses" +else + echo "$ac_t""no" 1>&6 +fi + + if test -z "$LIBTERMCAP"; then + echo $ac_n "checking for tgetent in -ltermcap""... $ac_c" 1>&6 +echo "configure:2425: checking for tgetent in -ltermcap" >&5 +ac_lib_var=`echo termcap'_'tgetent | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-ltermcap $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LIBTERMCAP="-ltermcap" +else + echo "$ac_t""no" 1>&6 +fi + + fi +fi + + save_LIBS=$LIBS +LIBS="$LIBTERMCAP $LIBS" echo $ac_n "checking for readline in -lreadline""... $ac_c" 1>&6 -echo "configure:2313: checking for readline in -lreadline" >&5 +echo "configure:2474: checking for readline in -lreadline" >&5 ac_lib_var=`echo readline'_'readline | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2317,7 +2478,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lreadline $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2496: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2358,12 +2519,19 @@ else echo "$ac_t""no" 1>&6 fi +if test "x${ac_cv_lib_readline_readline}" != "xyes"; then + +ginac_warning_txt="$ginac_warning_txt +== I could not find libreadline (needed by ginsh). +" +ginac_warning=yes +fi GINSH_LIBS=$LIBS LIBS=$save_LIBS echo $ac_n "checking for cout in -lstdc++""... $ac_c" 1>&6 -echo "configure:2367: checking for cout in -lstdc++" >&5 +echo "configure:2535: checking for cout in -lstdc++" >&5 ac_lib_var=`echo stdc++'_'cout | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2371,7 +2539,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lstdc++ $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2557: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2417,17 +2585,17 @@ for ac_hdr in iostream vector map string list typeinfo iterator stdexcept algori do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2421: checking for $ac_hdr" >&5 +echo "configure:2589: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2431: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2599: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2458,17 +2626,17 @@ for ac_hdr in sstream strstream do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2462: checking for $ac_hdr" >&5 +echo "configure:2630: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2472: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2640: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2500,17 +2668,17 @@ done do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2504: checking for $ac_hdr" >&5 +echo "configure:2672: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2514: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2537,17 +2705,17 @@ for ac_hdr in cln.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2541: checking for $ac_hdr" >&5 +echo "configure:2709: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2551: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2719: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2582,7 +2750,7 @@ done echo $ac_n "checking for doublefactorial in -lcln""... $ac_c" 1>&6 -echo "configure:2586: checking for doublefactorial in -lcln" >&5 +echo "configure:2754: checking for doublefactorial in -lcln" >&5 saved_LIBS="${LIBS}" if eval "test \"`echo '$''{'ginac_cv_lib_cln_link'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2591,14 +2759,14 @@ else case "${ac_cv_header_cln_cln_h}" in "yes") cat > conftest.$ac_ext < +#include int main() { doublefactorial(2); ; return 0; } EOF -if { (eval echo configure:2602: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2770: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ginac_cv_lib_cln_link="-lcln" else @@ -2611,14 +2779,14 @@ rm -f conftest* ;; *) cat > conftest.$ac_ext < +#include int main() { doublefactorial(2); ; return 0; } EOF -if { (eval echo configure:2622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ginac_cv_lib_cln_link="-lcln" else @@ -2641,11 +2809,12 @@ fi "fail") LIBS="${saved_LIBS}" echo "$ac_t""no" 1>&6 - { echo "configure: error: You either need to set \$LDFLAGS or update CLN" 1>&2; exit 1; } - ;; - *) - LIBS="${saved_LIBS}" - echo "configure: warning: you found a bug in the configure script!" 1>&2 + +ginac_error_txt="$ginac_error_txt +** I could not successfully link a test-program against libcln and run it. + You either need to set \$LDFLAGS or install/update the CLN library. +" +ginac_error=yes ;; esac @@ -2658,7 +2827,7 @@ GINACLIB_LIBS=$LIBS # Extract the first word of "doxygen", so it can be a program name with args. set dummy doxygen; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2662: checking for $ac_word" >&5 +echo "configure:2831: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_DOXYGEN'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2694,7 +2863,7 @@ fi # Extract the first word of "latex", so it can be a program name with args. set dummy latex; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2698: checking for $ac_word" >&5 +echo "configure:2867: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_LATEX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2730,7 +2899,7 @@ fi # Extract the first word of "makeindex", so it can be a program name with args. set dummy makeindex; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2734: checking for $ac_word" >&5 +echo "configure:2903: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MAKEINDEX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2766,7 +2935,7 @@ fi # Extract the first word of "dvips", so it can be a program name with args. set dummy dvips; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2770: checking for $ac_word" >&5 +echo "configure:2939: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_DVIPS'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2802,7 +2971,7 @@ fi # Extract the first word of "fig2dev", so it can be a program name with args. set dummy fig2dev; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2806: checking for $ac_word" >&5 +echo "configure:2975: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_FIG2DEV'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2838,13 +3007,13 @@ fi TUTORIAL_TARGETS= REFERENCE_TARGETS= -if [ "x$enable_html_doc" = "xyes" ]; then +if test "x${enable_html_doc}" = "xyes"; then TUTORIAL_TARGETS="$TUTORIAL_TARGETS ginac.html" if [ "$DOXYGEN" ]; then REFERENCE_TARGETS="$REFERENCE_TARGETS index.html" fi fi -if [ "x$enable_ps_doc" = "xyes" ]; then +if test "x${enable_ps_doc}" = "xyes"; then TUTORIAL_TARGETS="$TUTORIAL_TARGETS ginac.ps" if [ "$DOXYGEN" ]; then REFERENCE_TARGETS="$REFERENCE_TARGETS reference.ps" @@ -2853,13 +3022,24 @@ fi -if [ "x$with_cint" != "xno" ]; then - echo "with_cint is set to: $with_cint" - CINTSYSDIR=$with_cint +LIBGINACCINT= +GINACCINTDIR= +if test "x$with_cint" != "xno"; then + if test "x$enable_static" != "xyes"; then + { echo "configure: error: currently GiNaC-cint needs to build a static libginac" 1>&2; exit 1; } + fi + if test "x$with_cint" = "xyes"; then + if test "x$CINTSYSDIR" = "x"; then + { echo "configure: error: please export \$CINTSYSDIR or specify --with-cint=CINTSYSDIR" 1>&2; exit 1; } + fi + else + CINTSYSDIR=$with_cint + export CINTSYSDIR + fi # Extract the first word of "cint", so it can be a program name with args. set dummy cint; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2863: checking for $ac_word" >&5 +echo "configure:3043: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_CINT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2895,7 +3075,7 @@ fi # Extract the first word of "makecint", so it can be a program name with args. set dummy makecint; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2899: checking for $ac_word" >&5 +echo "configure:3079: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MAKECINT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2928,13 +3108,25 @@ else echo "$ac_t""no" 1>&6 fi - if [ "$cint" -a "$makecint" ]; then - echo "$ac_t""Configuring GiNaC-cint" 1>&6 + if [ "$CINT" -a "$MAKECINT" ]; then + echo "$ac_t""creating cint/Makefile" 1>&6 + (cd cint && \ + $MAKECINT -mk Makefile.makecint -o ginaccint.bin -m \ + -D OBSCURE_CINT_HACK -D CINT_CONVERSION_WORKAROUND -D NO_NAMESPACE_GINAC \ + -I .. -I $CINTSYSDIR -m -H ../ginac/ginac.h dummies.h \ + -C++ dummies.cpp -C++ ginaccint.bin.cpp \ + -l ./libginac.a -lcln -cint -M0x10; \ + cd ..) + LIBGINACCINT="libginac.a" + GINACCINTDIR="cint" else { echo "configure: error: Cannot configure GiNaC-cint" 1>&2; exit 1; } fi fi + + + trap '' 1 2 15 cat > confcache <<\EOF # This file is a shell script that caches the results of configure @@ -3041,12 +3233,15 @@ Makefile GiNaC.spec ginac-config ginac/Makefile +ginac/version.h check/Makefile ginsh/Makefile tools/Makefile doc/Makefile doc/tutorial/Makefile doc/reference/Makefile +cint/Makefile +cint/ginaccint config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF @@ -3364,11 +3566,30 @@ cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h -chmod +x ginac-config +chmod +x ginac-config cint/ginaccint exit 0 EOF chmod +x $CONFIG_STATUS rm -fr confdefs* $ac_clean_files test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 -echo "Configuration done. Now type \"make\"." + +if test "x${ginac_error}" = "xyes"; then + echo "**** The following problems have been detected by configure." + echo "**** Please check the messages below before running \"make\"." + echo "**** (see the section 'Common Problems' in the INSTALL file)" + echo "$ginac_error_txt" + if test "x${ginac_warning_txt}" != "x"; then + echo "${ginac_warning_txt}" + fi + echo "deleting cache ${cache_file}" + rm -f $cache_file + else + if test x$ginac_warning = xyes; then + echo "=== The following minor problems have been detected by configure." + echo "=== Please check the messages below before running \"make\"." + echo "=== (see the section 'Common Problems' in the INSTALL file)" + echo "$ginac_warning_txt" + fi + echo "Configuration of GiNaC $VERSION done. Now type \"make\"." +fi