--- rpl/configure.ac 2017/06/22 08:20:12 1.191 +++ rpl/configure.ac 2024/05/28 16:06:18 1.291 @@ -1,6 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([rpl],[4.1.26]) -AC_CANONICAL_TARGET +AC_INIT([rpl],[4.1.36]) AC_CANONICAL_TARGET AM_INIT_AUTOMAKE(silent-rules) AM_SILENT_RULES([yes]) @@ -8,28 +7,28 @@ AC_SUBST(target_cpu) AC_CONFIG_HEADERS([rplconfig.h]) dnl Libraries -NCURSES=ncurses-6.0 -READLINE=readline-7.0 -UNITS=units-2.13 -GSL=gsl-2.4 +NCURSES=ncurses-6.4 +READLINE=readline-8.2 +UNITS=units-2.22 +GSL=gsl-2.7.1 GPP=gpp-3.0 -GNUPLOT=gnuplot-5.0.6 -FILE=file-5.29 -ICONV=libiconv-1.14 -SQLITE=sqlite-3.19.3 -OPENSSL=openssl-1.1.0f -OPENMOTIF=openmotif-2.3.7 -LIBXPM=libXpm-3.5.11 -SIGSEGV=libsigsegv-2.11 -ZLIB=zlib-1.2.8 - -GMP=gmp-6.1.1 -MPFR=mpfr-3.1.5 -MPFI=mpfi-1.5.1 -NTL=ntl-9.11.0 -COCOA=CoCoALib-0.99542 -PARI=pari-2.7.6 -GIAC=giac-1.2.2 +GNUPLOT=gnuplot-5.4.8 +dnl ftp://ftp.astron.com/pub/file/ +FILE=file-5.45 +ICONV=libiconv-1.17 +SQLITE=sqlite-3.42.0 +OPENSSL=openssl-3.2.1 +OPENMOTIF=motif-2.3.8 +LIBXPM=libXpm-3.5.16 +SIGSEGV=libsigsegv-2.14 +ZLIB=zlib-1.2.13 + +GMP=gmp-6.3.0 +MPFR=mpfr-4.2.0 +MPFI=mpfi-1.5.4 +NTL=ntl-11.5.1 +PARI=pari-2.15.4 +GIAC=giac-1.9.0 dnl 32 bits ABI AC_ARG_WITH(gcc_version, @@ -95,18 +94,6 @@ dnl X paths AC_PATH_X AC_PATH_XTRA -if test "$ac_x_includes" != "no"; then - if test x"$ac_x_includes" != x; then - X_CFLAGS="$X_CFLAGS -I$ac_x_includes" - includeX="-I$ac_x_includes" - fi -fi -if test "$ac_x_libraries" != "no"; then - if test x"$ac_x_libraries" != x; then - X_LIBS="$X_LIBS -L$ac_x_libraries" - fi -fi - dnl 32 bits ABI AC_ARG_WITH(32bits-abi, [ --with-32bits-abi force 32bits ABI (multilib)],[ @@ -185,6 +172,18 @@ fi],[ AC_SUBST(RPLTOOLS) +dnl libcurl path +AC_ARG_WITH(curl, +[ --with-curl specify libcurl path used for RPL/CAS],[ +if test "$with_curl" = "no" -o "$with_curl" = "yes"; then + AC_MSG_ERROR([You have to specify libcurl path !]) +else + LIBCURL=-L$with_curl +fi],[ + LIBCURL= + ] +) + dnl RPL/CAS support AC_ARG_ENABLE(rplcas, [ --enable-rplcas compile rplcas (default=no)],[ @@ -194,7 +193,9 @@ if test "$enableval" = "no"; then INCRPLCAS= else RPLCAS=-DRPLCAS - LIBRPLCAS=\$\(top_builddir\)/rplcas/lib/librplcas.a + LIBRPLCAS="\$(top_builddir)/rplcas/lib/librplcas.a" +dnl LIBS="$LIBS $LIBCURL -lcurl" + LIBGIAC="$LIBCURL -lcurl" INCRPLCAS="-I\$(top_builddir)/rplcas/include/giac \ -I\$(top_builddir)/rplcas/include" fi],[ @@ -208,6 +209,7 @@ AC_SUBST(ABI) AC_SUBST(RPLCAS) AC_SUBST(LIBRPLCAS) AC_SUBST(INCRPLCAS) +AC_SUBST(LIBGIAC) dnl Options AC_ARG_ENABLE(optimization, @@ -298,7 +300,7 @@ AC_LINK_IFELSE( [SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES; AC_MSG_RESULT(no)] ) LDFLAGS=$LIBS -REG="" +LIBS=$REG else SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES fi @@ -316,7 +318,7 @@ AC_ARG_ENABLE(final-encoding, [ --enable-final-encoding force final encoding [[default=guessed]]], [ if test "$enableval" = "no"; then FINAL_ENCODING="\$(shell locale charmap | \ - \$(AWK) '/\=/ { print \$\$3;} !/\=/ { print \$\$1;}')" + \$(AWK) '/=/ { print \$\$3;} !/=/ { print \$\$1;}')" FORCED_FINAL_ENCODING=0 else FINAL_ENCODING="$enable_final_encoding" @@ -324,7 +326,7 @@ else fi], [ FORCED_FINAL_ENCODING=0 FINAL_ENCODING="\$(shell locale charmap | \ - \$(AWK) '/\=/ { print \$\$3;} !/\=/ { print \$\$1;}')"]) + \$(AWK) '/=/ { print \$\$3;} !/=/ { print \$\$1;}')"]) AC_ARG_ENABLE(tex, [ --enable-tex provide the TeX support [[default=guessed]]], [ @@ -378,6 +380,19 @@ libX="" LIBMOTIF="" INCMOTIF="" BUILD_OPENMOTIF="" +MODULE_MOTIF="" + + +if test "$ac_x_includes" != "no"; then + if test x"$ac_x_includes" != x; then + includeX="-I$ac_x_includes" + fi +fi +if test "$ac_x_libraries" != "no"; then + if test x"$ac_x_libraries" != x; then + X_LIBS="-L$ac_x_libraries" + fi +fi AC_ARG_ENABLE(motif, [ --enable-motif provide the Motif support [[default=guessed]]], [ @@ -392,9 +407,21 @@ else MOTIF_SUPPORT="-UMOTIF_SUPPORT" fi) +dnl libXinerama path +AC_ARG_WITH(xinerama, +[ --with-xinerama specify libxinerama path used for Motif],[ +if test "$with_xinerama" = "no" -o "$with_xinerama" = "yes"; then + AC_MSG_ERROR([You have to specify libxinerama path !]) +else + LIBXINERAMA=-L$with_xinerama +fi],[ + LIBXINERAMA= + ] +) + if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then - libX="$X_LIBS -lXt -lX11 -lXext" - LIBMOTIF="\$(top_builddir)/tools/$OPENMOTIF/lib/Xm/.libs/libXm.a \ + libX="$X_LIBS -lXt -lX11 -lXext $LIBXINERAMA -lXinerama" + LIBMOTIF="\$(top_builddir)/tools/$OPENMOTIF/install/lib/libXm.a \ \$(top_builddir)/tools/$LIBXPM/src/.libs/libXpm.a" INCMOTIF="-I\$(top_srcdir)/tools/$OPENMOTIF/lib \ -I\$(top_builddir)/tools/$OPENMOTIF/lib \ @@ -405,6 +432,8 @@ if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPP AC_CONFIG_SUBDIRS(tools/$LIBXPM) AC_CONFIG_SUBDIRS(tools/$OPENMOTIF) fi; + + MODULE_MOTIF="modules/motif" fi AC_ARG_ENABLE(experimental, @@ -440,6 +469,12 @@ if test "$UUENCODE" = no; then AC_MSG_ERROR([Can not find uuencode !]) fi +dnl Checks for patch +AC_CHECK_PROG(PATCH, patch, yes, no) +if test "$PATCH" = no; then + AC_MSG_ERROR([Can not find patch !]) +fi + if test ! -d tools; then mkdir tools fi @@ -469,6 +504,7 @@ fi if test ! -d "$srcdir"/tools/$GSL; then gunzip -c "$srcdir"/tools/$GSL.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) + (cd "$srcdir"/tools/$GSL && ./autogen.sh) if test $(uname) = "OS/2"; then (cd "$srcdir"/tools/$GSL; \ TMP=$(mktemp tmp.XXXXXXXXXX); \ @@ -479,6 +515,7 @@ fi if test ! -d "$srcdir"/tools/$GPP; then gunzip -c "$srcdir"/tools/$GPP.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) + (cd "$srcdir"/tools/$GPP && autoreconf -i) fi if test ! -d "$srcdir"/tools/$FILE; then gunzip -c "$srcdir"/tools/$FILE.tar.gz | \ @@ -530,15 +567,12 @@ fi if test ! -d "$srcdir"/rplcas/$MPFI; then gunzip -c "$srcdir"/rplcas/$MPFI.tar.gz | \ (cd "$srcdir/rplcas" && tar -xf -) + (cd "$srcdir"/rplcas/$MPFI && ./autogen.sh) fi if test ! -d rplcas/$NTL; then gunzip -c "$srcdir"/rplcas/$NTL.tar.gz | \ (cd rplcas && tar -xf -) fi -if test ! -d rplcas/$COCOA; then - gunzip -c "$srcdir"/rplcas/$COCOA.tar.gz | \ - (cd rplcas && tar -xf -) -fi if test ! -d rplcas/$PARI; then gunzip -c "$srcdir"/rplcas/$PARI.tar.gz | \ (cd rplcas && tar -xf -) @@ -707,6 +741,16 @@ AC_CHECK_LIB(m, main,, AC_MSG_ERROR([Can AC_CHECK_LIB(c, pthread_mutex_init,, [AC_CHECK_LIB(pthread, main,, AC_MSG_ERROR([Can not find libpthread !]))]) +if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then + REG=$LIBS + LIBS="$LIBS $libX" + AC_CHECK_LIB(Xinerama, XineramaIsActive,, + AC_MSG_ERROR([Can not find libXinerama !])) + LIBS=$REG +fi +AC_CHECK_LIB(gomp, omp_get_num_procs,, AC_MSG_ERROR([Can not find libgomp !])) +OPENMP=-lgomp +AC_SUBST(OPENMP) dnl Check for union semun AC_CHECK_TYPE([union semun], SEMUN=-DUNION_SEMUN, SEMUN=-UUNION_SEMUN, [[ @@ -753,7 +797,7 @@ if test "x$with_mysql" = xcheck -o "x$wi saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -L/$libMySQLinc" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT"; - libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) + libMySQLinc=$libMySQLinc],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) CFLAGS=$saved_CFLAGS if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then @@ -761,9 +805,17 @@ if test "x$with_mysql" = xcheck -o "x$wi saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $libMySQLinc/mysql" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT"; - libMySQLinc=$libMySQLinc],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) + libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) + CFLAGS=$saved_CFLAGS + fi + + if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then + AC_MSG_CHECKING(for libmysql includes in /usr/include/mariadb) + saved_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $libMySQLinc/mariadb" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT"; + libMySQLinc=$libMySQLinc/mariadb],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) CFLAGS=$saved_CFLAGS - libMySQLinc=$libMySQLinc/mysql fi if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then @@ -771,10 +823,11 @@ if test "x$with_mysql" = xcheck -o "x$wi saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $libMySQLinc/../local/include" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT"; - libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) + libMySQLinc=$libMySQLinc/../local/include],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) CFLAGS=$saved_CFLAGS - libMySQLinc=$libMySQLinc/../local/include - libMySQLlib=$libMySQLlib/../local/lib + if test "$MYSQL_SUPPORT" != "-UMYSQL_SUPPORT"; then + libMySQLlib=$libMySQLlib/../local/lib + fi; fi if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then @@ -782,10 +835,11 @@ if test "x$with_mysql" = xcheck -o "x$wi saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $libMySQLinc/../local/include/mysql" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT"; - libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) + libMySQLinc=$libMySQLinc/../local/include/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) CFLAGS=$saved_CFLAGS - libMySQLinc=$libMySQLinc/../local/include/mysql - libMySQLlib=$libMySQLlib/../local/lib + if test "$MYSQL_SUPPORT" != "-UMYSQL_SUPPORT"; then + libMySQLlib=$libMySQLlib/../local/lib + fi; fi else if test "x$with_mysql" != xno; then @@ -804,9 +858,8 @@ else saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $libMySQLinc/mysql" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT"; - libMySQLinc=$libMySQLinc],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) + libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"]) CFLAGS=$saved_CFLAGS - libMySQLinc=$libMySQLinc/mysql fi else MYSQL_SUPPORT="-UMYSQL_SUPPORT" @@ -820,9 +873,9 @@ if test "$MYSQL_SUPPORT" = "-DMYSQL_SUPP AC_MSG_CHECKING(for libmysql libraries in $libMySQLlib) saved_LIBS="$LIBS" if test $STATIC = no; then - LIBS="$LIBS -L/$libMySQLlib -lmysqlclient_r $libMySQLinc" + LIBS="$LIBS -L/$libMySQLlib -lmysqlclient_r -lz -ldl -lm -lssl -lcrypto $libMySQLinc" else - LIBS="$LIBS $libMySQLlib/libmysqlclient_r.a $libMySQLinc" + LIBS="$LIBS $libMySQLlib/libmysqlclient_r.a -lz -ldl -lm -lssl -lcrypto $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; @@ -1139,11 +1192,11 @@ AC_MSG_CHECKING([whether CC supports -ma AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])], [AC_MSG_RESULT([yes]); FPCFLAGS="$FPCFLAGS -malign-double"], [AC_MSG_RESULT([no])]) -CFLAGS=-mieee-fp -AC_MSG_CHECKING([whether CC supports -mieee-fp]) -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])], - [AC_MSG_RESULT([yes]); FPCFLAGS="$FPCFLAGS -mieee-fp"], - [AC_MSG_RESULT([no])]) +#CFLAGS=-mieee-fp +#AC_MSG_CHECKING([whether CC supports -mieee-fp]) +#AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])], +# [AC_MSG_RESULT([yes]); FPCFLAGS="$FPCFLAGS -mieee-fp"], +# [AC_MSG_RESULT([no])]) CFLAGS=-mieee AC_MSG_CHECKING([whether CC supports -mieee]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])], @@ -1307,8 +1360,8 @@ 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" +dnl ac_configure_args="$ac_configure_args \ +dnl --with-abi-version=5.9 --with-rel-version=5.9" case $OS in OS2) @@ -1408,11 +1461,11 @@ 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(MODULE_MOTIF) AC_SUBST(ZLIB) AC_SUBST(BUILD_SIGSEGV) AC_SUBST(BROKEN_SIGSEGV) @@ -1461,6 +1514,8 @@ AC_CONFIG_FILES(rplcas/Makefile) AC_CONFIG_FILES(rplawk/Makefile) AC_CONFIG_FILES(lapack/lapack/Makefile) AC_CONFIG_FILES(lapack/blas/Makefile) +AC_CONFIG_FILES(modules/motif/Makefile) +AC_CONFIG_FILES(modules/sets/Makefile) AC_CONFIG_FILES(man/rpl.1) AC_CONFIG_FILES(man/rplcc.1)