--- rpl/configure.ac 2012/10/17 14:27:06 1.47 +++ rpl/configure.ac 2016/01/09 18:25:54 1.143 @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([rpl],[4.1.11]) +AC_INIT([rpl],[4.1.24]) AC_CANONICAL_TARGET AC_CANONICAL_TARGET AM_INIT_AUTOMAKE(silent-rules) @@ -8,26 +8,28 @@ AC_SUBST(target_cpu) AC_CONFIG_HEADERS([rplconfig.h]) dnl Libraries -NCURSES=ncurses-5.9 -READLINE=readline-6.2 -UNITS=units-1.89e -GSL=gsl-1.15 +NCURSES=ncurses-6.0 +READLINE=readline-6.3 +UNITS=units-2.12 +GSL=gsl-2.1 GPP=gpp-3.0 -GNUPLOT=gnuplot-4.6.0 +GNUPLOT=gnuplot-5.0.1 FILE=file-5.11 -ICONV=libiconv-1.13.1 -SQLITE=sqlite-3.7.14.1 -OPENSSL=openssl-1.0.1c -OPENMOTIF=openmotif-2.3.3 +ICONV=libiconv-1.14 +SQLITE=sqlite-3.9.2 +OPENSSL=openssl-1.0.2e +OPENMOTIF=openmotif-2.3.4 LIBXPM=libXpm-3.5.9 SIGSEGV=libsigsegv-2.11 +ZLIB=zlib-1.2.8 -GMP=gmp-5.0.5 -MPFR=mpfr-3.1.0 +GMP=gmp-6.1.0 +MPFR=mpfr-3.1.3 +MPFI=mpfi-1.5.1 NTL=ntl-5.5.2 COCOA=CoCoALib-0.9950 -PARI=pari-2.5.1 -GIAC=giac-0.9.8 +PARI=pari-2.5.4 +GIAC=giac-1.2.2 dnl 32 bits ABI AC_ARG_WITH(gcc_version, @@ -43,6 +45,7 @@ AC_SUBST(F77) ],[]) dnl Checks for Bash +BASH_PATH=$(which bash) BASH=$(which bash | sed 's/\//\\\//g') if test x$BASH = x; then @@ -50,6 +53,7 @@ if test x$BASH = x; then fi AC_SUBST(BASH) +AC_SUBST(BASH_PATH) dnl Checks for C compiler AC_PROG_CC(gcc) @@ -75,11 +79,11 @@ AC_PROG_F77(gfortran) dnl Check for Fortran 9* compiler AC_PROG_FC(gfortran) -if test x"$F77" == x; then +if test x"$F77" = x; then AC_MSG_ERROR([Cannot find gfortran! You have to install it.]) fi -if test x"$FC" == x; then +if test x"$FC" = x; then AC_MSG_ERROR([Cannot find gfortran! You have to install it.]) fi @@ -154,6 +158,20 @@ fi],[ ] ) +AC_ARG_ENABLE(native, +[ --enable-native enable gcc native compiler option (default=no)],[ +if test "$enableval" = "yes"; then + CFLAGS="$CFLAGS -mtune=native -march=native" + FFLAGS="$FFLAGS -mtune=native -march=native" + CXXFLAGS="$CXXFLAGS -mtune=native -march=native" + FCFLAGS="$FCFLAGS -mtune=native -march=native" +else + NATIVE= +fi],[ + NATIVE= + ] +) + AC_ARG_WITH(rpltools, [ --with-rpltools specify rpltools path used for cross compilation],[ if test "$with_rpltools" = "no" -o "$with_rpltools" = "yes"; then @@ -173,18 +191,23 @@ AC_ARG_ENABLE(rplcas, if test "$enableval" = "no"; then RPLCAS=-URPLCAS LIBRPLCAS= + INCRPLCAS= else RPLCAS=-DRPLCAS LIBRPLCAS=\$\(top_builddir\)/rplcas/lib/librplcas.a + INCRPLCAS="-I\$(top_builddir)/rplcas/include/giac \ + -I\$(top_builddir)/rplcas/include" fi],[ RPLCAS=-URPLCAS LIBRPLCAS= + INCRPLCAS= ] ) AC_SUBST(ABI) AC_SUBST(RPLCAS) AC_SUBST(LIBRPLCAS) +AC_SUBST(INCRPLCAS) dnl Options AC_ARG_ENABLE(optimization, @@ -195,18 +218,20 @@ if test "$enableval" = "no"; then CXXFLAGS=$ABI FCFLAGS=$ABI else - CFLAGS="$CFLAGS $ABI $enable_optimization" - FFLAGS="$FFLAGS $ABI $enable_optimization" - CXXFLAGS="$CXXFLAGS $ABI $enable_optimization" - FCFLAGS="$FCFLAGS $ABI $enable_optimization" + CFLAGS="$CFLAGS $ABI $OPTIMISATION_C" + FFLAGS="$FFLAGS $ABI $OPTIMISATION_F" + CXXFLAGS="$CXXFLAGS $ABI $OPTIMISATION_CXX" + FCFLAGS="$FCFLAGS $ABI $OPTIMISATION_F" fi],[ - CFLAGS="$CFLAGS $ABI $OPTIMISATION_C" + CFLAGS="$CFLAGS $ABI $OPTIMISATION_C" FFLAGS="$FFLAGS $ABI $OPTIMISATION_F" CXXFLAGS="$CXXFLAGS $ABI $OPTIMISATION_CXX" FCFLAGS="$FCFLAGS $ABI $OPTIMISATION_F" ] ) +CFLAGS="$CFLAGS -fno-strict-overflow" + AC_MSG_CHECKING([for usable shared memory]) AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([#include @@ -217,6 +242,13 @@ AC_COMPILE_IFELSE( ) AC_SUBST(SHARED_MEMORY) +AC_C_INLINE + +if test "$ac_cv_c_inline" != no ; then + AC_DEFINE(HAVE_INLINE,1,[inline keywork or macro available]) + AC_SUBST(HAVE_INLINE) +fi + AC_MSG_CHECKING([for pselect]) AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([#include @@ -247,9 +279,9 @@ else IPCS_SYSV=-DIPCS_SYSV POSIX_IPCS=yes fi], -REG=$LDFLAGS +REG=$LIBS POSIX_IPCS=guessed -LDFLAGS=-lrt +LIBS="-lrt -lpthread" [AC_MSG_CHECKING([for POSIX semaphores and shared objects]) AC_LINK_IFELSE( [AC_LANG_PROGRAM([#include @@ -268,12 +300,12 @@ fd = shm_open(sem , O_CREAT | O_RDWR, S_ [IPCS_SYSV=-UIPCS_SYSV; AC_MSG_RESULT(yes)], [IPCS_SYSV=-DIPCS_SYSV; AC_MSG_RESULT(no)] )] -LDFLAGS=$REG +LIBS=$REG ) if test "$IPCS_SYSV" = "-UIPCS_SYSV" -a "$POSIX_IPCS" = "guessed"; then -REG=$LDFLAGS -LDFLAGS=-pthread +REG=$LIBS +LIBS=-pthread AC_MSG_CHECKING([for POSIX anonymous semaphores]) AC_LINK_IFELSE( [AC_LANG_PROGRAM([#include @@ -286,7 +318,7 @@ AC_LINK_IFELSE( [SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES; AC_MSG_RESULT(yes)], [SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES; AC_MSG_RESULT(no)] ) -LDFLAGS=$REG +LDFLAGS=$LIBS REG="" else SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES @@ -375,7 +407,7 @@ if test "$enableval" = "no"; then else MOTIF_SUPPORT="-DMOTIF_SUPPORT" fi], -if test "$have_x" == "yes"; then +if test "$have_x" = "yes"; then MOTIF_SUPPORT="-DMOTIF_SUPPORT" else MOTIF_SUPPORT="-UMOTIF_SUPPORT" @@ -423,6 +455,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 @@ -437,7 +475,8 @@ if test ! -d "$srcdir"/tools/$NCURSES; t do echo Applying script $i && chmod 775 $i && ./$i; done; for i in ../$NCURSES*.patch.gz; - do echo Applying patch $i && gunzip -c $i | patch -p1; + do echo Applying patch $i && \ + gunzip -c $i | patch -p1; done); fi if test ! -d "$srcdir"/tools/$READLINE; then @@ -494,6 +533,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 @@ -505,6 +548,10 @@ if test ! -d "$srcdir"/rplcas/$MPFR; the gunzip -c "$srcdir"/rplcas/$MPFR.tar.gz | \ (cd "$srcdir/rplcas" && tar -xf -) fi +if test ! -d "$srcdir"/rplcas/$MPFI; then + gunzip -c "$srcdir"/rplcas/$MPFI.tar.gz | \ + (cd "$srcdir/rplcas" && tar -xf -) +fi if test ! -d rplcas/$NTL; then gunzip -c "$srcdir"/rplcas/$NTL.tar.gz | \ (cd rplcas && tar -xf -) @@ -562,6 +609,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" @@ -665,8 +718,10 @@ AC_SUBST(libX) AC_SUBST(includeX) dnl Date -DATE=$(LANG=C date +"%A, %e %B %Y %T %z") +DATE=$(env LC_ALL=C date +"%A, %e %B %Y %T %z") +DATE_FR=$(env LC_ALL=fr_FR date +"%A, %e %B %Y %T %z") AC_SUBST(DATE) +AC_SUBST(DATE_FR) dnl Checks for libraries AC_CHECK_LIB(m, main,, AC_MSG_ERROR([Can not find libm !])) @@ -695,6 +750,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.])) @@ -782,7 +843,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; @@ -1134,8 +1195,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= case $OS in @@ -1265,6 +1324,12 @@ case $OS in break ;; esac +dnl Correction d'un problème de compilation pour GNUplot 5.0.0 +ac_configure_args="$ac_configure_args --disable-wxwidgets" +dnl Correction d'un problème d'ABI avec readline +ac_configure_args="$ac_configure_args \ + --with-abi-version=5.9 --with-rel-version=5.9" + case $OS in OS2) WHOLE_LIB1="" @@ -1292,8 +1357,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 @@ -1329,17 +1398,18 @@ 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) AC_SUBST(MPFR) +AC_SUBST(MPFI) AC_SUBST(NTL) AC_SUBST(COCOA) AC_SUBST(PARI) AC_SUBST(GIAC) AC_SUBST(INCMOTIF) AC_SUBST(LIBMOTIF) +AC_SUBST(ZLIB) AC_SUBST(CFLAGS) AC_SUBST(CXXFLAGS) @@ -1365,16 +1435,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)