--- rpl/configure.ac 2012/05/14 13:27:05 1.28 +++ rpl/configure.ac 2014/04/25 07:37:27 1.90 @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([rpl],[4.1.8]) +AC_INIT([rpl],[4.1.18]) AC_CANONICAL_TARGET AC_CANONICAL_TARGET AM_INIT_AUTOMAKE(silent-rules) @@ -9,52 +9,54 @@ AC_CONFIG_HEADERS([rplconfig.h]) dnl Libraries NCURSES=ncurses-5.9 -READLINE=readline-6.2 -UNITS=units-1.88 -GSL=gsl-1.15 +READLINE=readline-6.3 +UNITS=units-2.02 +GSL=gsl-1.16 GPP=gpp-3.0 -GNUPLOT=gnuplot-4.6.0 +GNUPLOT=gnuplot-4.6.5 FILE=file-5.11 -ICONV=libiconv-1.13.1 -SQLITE=sqlite-3.7.11 -OPENSSL=openssl-1.0.1c -OPENMOTIF=openmotif-2.3.3 +ICONV=libiconv-1.14 +SQLITE=sqlite-3.8.4.3 +OPENSSL=openssl-1.0.1g +OPENMOTIF=openmotif-2.3.4 LIBXPM=libXpm-3.5.9 -SIGSEGV=libsigsegv-2.6 +SIGSEGV=libsigsegv-2.11 +ZLIB=zlib-1.2.7 -GMP=gmp-5.0.5 -MPFR=mpfr-3.1.0 +GMP=gmp-5.1.2 +MPFR=mpfr-3.1.2 NTL=ntl-5.5.2 -COCOA=CoCoALib-0.9943 -PARI=pari-2.5.0 -GIAC=giac-0.9.6 +COCOA=CoCoALib-0.9950 +PARI=pari-2.5.4 +GIAC=giac-1.1.0 + +dnl 32 bits ABI +AC_ARG_WITH(gcc_version, +[ --with-gcc-version force gcc version],[ +CC=gcc-$with_gcc_version +CXX=g++-$with_gcc_version +CF=gfortran-$with_gcc_version +F77=gfortran-$with_gcc_version +AC_SUBST(CC) +AC_SUBST(CXX) +AC_SUBST(CF) +AC_SUBST(F77) +],[]) + +dnl Checks for Bash +BASH=$(which bash | sed 's/\//\\\//g') + +if test x$BASH = x; then + AC_MSG_ERROR([Cannot find bash! You have to install it.]) +fi + +AC_SUBST(BASH) dnl Checks for C compiler AC_PROG_CC(gcc) EXT_SQL= -if test x"$CC" != x""; then - GCC_VERSION_MAJEURE=`$CC -v 2>&1 | awk '/^gcc/ { print $3; }' | \ - awk -F. '{ printf("%s", $1);}'` - GCC_VERSION_MINEURE=`$CC -v 2>&1 | awk '/^gcc/ { print $3; }' | \ - awk -F. '{ printf("%s", $2);}'` - if test $GCC_VERSION_MAJEURE -ge 5; then - OPTIMISATION_C=-O3 - else - if test $GCC_VERSION_MAJEURE -ge 4 -a $GCC_VERSION_MINEURE -ge 4; \ - then - OPTIMISATION_C=-O3 - else - if test $GCC_VERSION_MAJEURE -ge 2; then - OPTIMISATION_C=-O2 - else - AC_MSG_ERROR([Cannot find decent or recent gcc (gcc-4.2 or better)!]) - fi - fi - fi -fi - AM_PROG_CC_C_O if test "$GCC" != yes; then @@ -68,26 +70,6 @@ if test "$GXX" != yes; then AC_MSG_ERROR([Cannot find g++! You have to install it.]) fi -if test x"$CXX" != x""; then - GCC_VERSION_MAJEURE=`$CXX -v 2>&1 | awk '/^gcc/ { print $3; }' | \ - awk -F. '{ printf("%s", $1);}'` - GCC_VERSION_MINEURE=`$CXX -v 2>&1 | awk '/^gcc/ { print $3; }' | \ - awk -F. '{ printf("%s", $2);}'` - if test $GCC_VERSION_MAJEURE -ge 5; then - OPTIMISATION_GXX=-O3 - else - if test $GCC_VERSION_MAJEURE -ge 4 -a $GCC_VERSION_MINEURE -ge 4; then - OPTIMISATION_GXX=-O3 - else - if test $GCC_VERSION_MAJEURE -ge 3; then - OPTIMISATION_GXX=-O2 - else - AC_MSG_ERROR([Cannot find decent or recent g++ (g++-4.3 or better)!]) - fi - fi - fi -fi - dnl Checks for Fortran 77 compiler AC_PROG_F77(gfortran) @@ -102,25 +84,9 @@ if test x"$FC" == x; then AC_MSG_ERROR([Cannot find gfortran! You have to install it.]) fi -if test x"$FC" != x""; then - GCC_VERSION_MAJEURE=`$FC -v 2>&1 | awk '/^gcc/ { print $3; }' | \ - awk -F. '{ printf("%s", $1);}'` - GCC_VERSION_MINEURE=`$FC -v 2>&1 | awk '/^gcc/ { print $3; }' | \ - awk -F. '{ printf("%s", $2);}'` - if test $GCC_VERSION_MAJEURE -ge 5; then - OPTIMISATION_F=-O3 - else - if test $GCC_VERSION_MAJEURE -ge 4 -a $GCC_VERSION_MINEURE -ge 4; then - OPTIMISATION_F=-O3 - else - if test $GCC_VERSION_MAJEURE -ge 3; then - OPTIMISATION_F=-O2 - else - AC_MSG_ERROR([Cannot find decent or recent gfortran (gfortran-4.3 or better)!]) - fi - fi - fi -fi +OPTIMISATION_C=-O3 +OPTIMISATION_CXX=-O3 +OPTIMISATION_F=-O3 dnl X paths AC_PATH_X @@ -284,7 +250,7 @@ else fi], REG=$LDFLAGS POSIX_IPCS=guessed -LDFLAGS=-lrt +LDFLAGS="-lrt -lpthread" [AC_MSG_CHECKING([for POSIX semaphores and shared objects]) AC_LINK_IFELSE( [AC_LANG_PROGRAM([#include @@ -458,6 +424,12 @@ fi], [PROFILAGE=""]) AC_SUBST(PROFILAGE) +dnl Checks for uuencode +AC_CHECK_PROG(UUENCODE, uuencode, yes, no) +if test "$UUENCODE" = no; then + AC_MSG_ERROR([Can not find uuencode !]) +fi + if test ! -d tools; then mkdir tools fi @@ -503,10 +475,6 @@ if test ! -d "$srcdir"/tools/$FILE; then (cd "$srcdir/tools"/$FILE && gunzip -c ../$FILE.diff.gz | patch -p1 && \ autoreconf) fi -if test ! -d "$srcdir"/tools/$ICONV; then - gunzip -c "$srcdir"/tools/$ICONV.tar.gz | \ - (cd "$srcdir/tools" && tar -xf -) -fi if test ! -d "$srcdir"/tools/$SQLITE; then gunzip -c "$srcdir"/tools/$SQLITE.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) @@ -514,6 +482,12 @@ fi if test ! -d "$srcdir"/tools/$SIGSEGV; then gunzip -c "$srcdir"/tools/$SIGSEGV.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) + (cd "$srcdir/tools/$SIGSEGV" && ./autogen.sh --skip-gnulib) +fi +if test ! -d "$srcdir"/tools/$ICONV; then + gunzip -c "$srcdir"/tools/$ICONV.tar.gz | \ + (cd "$srcdir/tools" && tar -xf -) + (cd "$srcdir"/tools/$ICONV && ln -sf ../$SIGSEGV/gnulib gnulib) fi if test ! -d "$srcdir"/tools/$OPENMOTIF; then gunzip -c "$srcdir"/tools/$OPENMOTIF.tar.gz | \ @@ -527,6 +501,10 @@ if test ! -d tools/$OPENSSL; then gunzip -c "$srcdir"/tools/$OPENSSL.tar.gz | \ (cd tools && tar -xf -) fi +if test ! -d tools/$ZLIB; then + gunzip -c "$srcdir"/tools/$ZLIB.tar.gz | \ + (cd tools && tar -xf - && cd $ZLIB && ./configure --static) +fi if test ! -d rplcas; then mkdir rplcas fi @@ -595,6 +573,12 @@ if test "$SED" = no; then AC_MSG_ERROR([Can not find sed !]) fi +dnl Checks for yacc +AC_CHECK_PROG(YACC, yacc, yes, no) +if test "$YACC" = no; then + AC_MSG_ERROR([Can not find yacc !]) +fi + dnl Checks for TeX, LaTeX, dvips, gs, gv, vim and gnuplot if test "$TEX_SUPPORT" = guessed; then POSTSCRIPT_SUPPORT="-DPOSTSCRIPT_SUPPORT" @@ -728,6 +712,12 @@ dnl Do we need to use -lrt? AC_CHECK_LIB(rt, nanosleep, LIBS="$LIBS -lrt", AC_MSG_WARN([librt doesn't seem to be needed on this system.])) +AC_CHECK_LIB(rt, shm_open, LIBS="$LIBS -lrt", + AC_MSG_WARN([librt doesn't seem to be needed on this system.])) + +AC_CHECK_LIB(pthread, pthread_create, LIBS="$LIBS -lpthread", + AC_MSG_WARN([libpthread doesn't seem to be needed on this system.])) + dnl Do we need to use -lsocket? AC_CHECK_LIB(socket, bind, LIBS="$LIBS -lsocket", AC_MSG_WARN([libsocket doesn't seem to be needed on this system.])) @@ -815,7 +805,7 @@ if test "$MYSQL_SUPPORT" = "-DMYSQL_SUPP if test $STATIC = no; then LIBS="$LIBS -L/$libMySQLlib -lmysqlclient_r $libMySQLinc" else - LIBS="$LIBS $libMySQLlib/libmysqlclient_r.a -lz $libMySQLinc" + LIBS="$LIBS $libMySQLlib/libmysqlclient_r.a $libMySQLinc" fi AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[MYSQL mysql; mysql_init(&mysql);]])],[AC_MSG_RESULT([yes]); MYSQL_LIB="yes"],[AC_MSG_RESULT([no]); MYSQL_LIB="no"]) LIBS=$saved_LIBS; @@ -1167,7 +1157,6 @@ esac AC_SUBST(OS) -DATE_FR=$(env LC_ALL=fr_FR date +'%A %x, %X %Z') DATE=$(env LC_ALL=C date +'%A %x, %X %Z') MALLOC= @@ -1224,6 +1213,7 @@ case $OS in OS/2) if test $FORCED_FINAL_ENCODING -eq 0; then \ FINAL_ENCODING=CP850; \ + FORCED_FINAL_ENCODING=1;\ fi; OS=OS2 NESTED_FUNCTIONS= @@ -1241,6 +1231,7 @@ case $OS in OpenBSD) if test $FORCED_FINAL_ENCODING -eq 0; then \ FINAL_ENCODING=UTF-8; \ + FORCED_FINAL_ENCODING=1;\ fi; EXPORT_DYNAMIC=-Wl,--export-dynamic NESTED_FUNCTIONS= @@ -1311,11 +1302,11 @@ case $OS in esac case $HOST in - x86_64-unknown-linux-gnu) + x86_64-*-linux-gnu) ARCH=amd64 break ;; - i?86-unknown-linux-gnu) + i?86-*-linux-gnu) ARCH=i386 break ;; @@ -1323,8 +1314,12 @@ case $HOST in ARCH=armel break;; + mips*el-unknown-linux-gnu) + ARCH=mipsel + break;; + *) - ARCH=unknown + ARCH=$(echo $HOST | cut -f1 -d-) break ;; esac @@ -1358,8 +1353,8 @@ AC_SUBST(OPENMOTIF) AC_SUBST(BUILD_OPENMOTIF) AC_SUBST(SIGSEGV) AC_SUBST(FINAL_ENCODING) +AC_SUBST(FORCED_FINAL_ENCODING) AC_SUBST(DATE) -AC_SUBST(DATE_FR) AC_SUBST(EXT_SQL) AC_SUBST(MALLOC) AC_SUBST(GMP) @@ -1370,6 +1365,7 @@ AC_SUBST(PARI) AC_SUBST(GIAC) AC_SUBST(INCMOTIF) AC_SUBST(LIBMOTIF) +AC_SUBST(ZLIB) AC_SUBST(CFLAGS) AC_SUBST(CXXFLAGS) @@ -1395,16 +1391,8 @@ if test $RECURSIVE = yes; then AC_CONFIG_SUBDIRS(tools/$SIGSEGV) fi -if test $MYSQL_LIB = "yes" -o $POSTGRESQL_LIB = "yes"; then - ZLIB=-lz -else - ZLIB= -fi - -AC_SUBST(ZLIB) - AC_CONFIG_FILES(Makefile) -AC_CONFIG_FILES(COPYING) +AC_CONFIG_FILES(HEADER) AC_CONFIG_FILES(tools/Makefile) AC_CONFIG_FILES(src/Makefile) AC_CONFIG_FILES(man/Makefile)