--- rpl/Attic/configure.in 2010/09/13 11:58:42 1.44 +++ rpl/Attic/configure.in 2011/09/15 19:46:41 1.82 @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([rpl],[4.0.19]) +AC_INIT([rpl],[4.1.3]) AC_CANONICAL_TARGET AC_CANONICAL_TARGET AM_INIT_AUTOMAKE @@ -7,16 +7,25 @@ AC_SUBST(target_cpu) AC_CONFIG_HEADERS([rplconfig.h]) dnl Libraries -NCURSES=ncurses-5.7-20100619 -READLINE=readline-6.1 +NCURSES=ncurses-5.9 +READLINE=readline-6.2 UNITS=units-1.88 -GSL=gsl-1.14 -GPP=gpp-2.24 -GNUPLOT=gnuplot-4.4.1 +GSL=gsl-1.15 +GPP=gpp-3.0 +GNUPLOT=gnuplot-4.4.3 FILE=file-5.03 ICONV=libiconv-1.13.1 -SQLITE=sqlite-3.7.2 -OPENSSL=openssl-1.0.0a +SQLITE=sqlite-3.7.7.1 +OPENSSL=openssl-1.0.0e +OPENMOTIF=openmotif-2.2.3 +SIGSEGV=libsigsegv-2.6 + +GMP=gmp-5.0.2 +MPFR=mpfr-3.0.1 +NTL=ntl-5.5.2 +COCOA=CoCoALib-0.9943 +PARI=pari-2.5.0 +GIAC=giac-0.9.3 dnl Checks for C compiler AC_PROG_CC(gcc) @@ -53,10 +62,30 @@ fi dnl Checks for C++ compiler AC_PROG_CXX(g++) -if test "$GXX" != yes; then +if test "$CXX" != "g++"; 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) @@ -107,22 +136,70 @@ if test "$ac_x_libraries" != "no"; then fi fi +dnl 32 bits ABI +AC_ARG_WITH(32bits-abi, +[ --with-32bits-abi force 32bits ABI (multilib)],[ +if test "$with-32bits-abi" = "no"; then + ABI= +else + ABI=-m32 +fi],[ + ABI= + ] +) + +if test x$ABI = x; then +AC_ARG_WITH(64bits-abi, +[ --with-64bits-abi force 64bits ABI (multilib)],[ +if test "$with-64bits-abi" = "no"; then + ABI= +else + ABI=-m64 +fi],[ + ABI= + ] +) +fi + +LDFLAGS="$LDFLAGS $ABI" + +dnl RPL/CAS support +AC_ARG_WITH(rplcas, +[ --with-rplcas compile rplcas (default=no)],[ +if test "$with-rplcas" = "no"; then + RPLCAS=-URPLCAS + LIBRPLCAS= +else + RPLCAS=-DRPLCAS + LIBRPLCAS=\$\(top_builddir\)/rplcas/lib/librplcas.a +fi],[ + RPLCAS=-URPLCAS + LIBRPLCAS= + ] +) + +AC_SUBST(ABI) +AC_SUBST(RPLCAS) +AC_SUBST(LIBRPLCAS) + dnl Options AC_ARG_ENABLE(optimization, [ --enable-optimization set compiler flags [[default=environment variables -O3]]], [ if test "$enableval" = "no"; then - CFLAGS= - FFLAGS= - CXXFLAGS= - FCFLAGS= -else - CFLAGS="$CFLAGS $enable_optimization" - FFLAGS="$FFLAGS $enable_optimization" - FCFLAGS="$FCFLAGS $enable_optimization" + CFLAGS=$ABI + FFLAGS=$ABI + 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" fi],[ - CFLAGS="$CFLAGS $OPTIMISATION_C" - FFLAGS="$FFLAGS $OPTIMISATION_F" - FCFLAGS="$FCFLAGS $OPTIMISATION_F" + CFLAGS="$CFLAGS $ABI $OPTIMISATION_C" + FFLAGS="$FFLAGS $ABI $OPTIMISATION_F" + CXXFLAGS="$CXXFLAGS $ABI $OPTIMISATION_CXX" + FCFLAGS="$FCFLAGS $ABI $OPTIMISATION_F" ] ) @@ -237,12 +314,9 @@ AC_ARG_ENABLE(debug, [ --enable-debug enable debug code [[default=no]]], [ if test "$enableval" = "no"; then DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS" - MALLOC="\$(top_builddir)/ptmalloc3/libptmalloc3.a" else DEBUG="-DDEBUG_MEMOIRE -UDEBUG_ERREURS" - MALLOC="" -fi], [DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS" - MALLOC="\$(top_builddir)/ptmalloc3/libptmalloc3.a"]) +fi], [DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS"]) AC_ARG_ENABLE(profile, [ --enable-profile enable profile code [[default=no]]], [ @@ -260,6 +334,10 @@ fi if test ! -d "$srcdir"/tools/$NCURSES; then gunzip -c "$srcdir"/tools/$NCURSES.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) + (cd "$srcdir/tools/"$NCURSES && \ + for i in ../$NCURSES*.patch.gz; + do gunzip -c $i | patch -p1; + done); fi if test ! -d "$srcdir"/tools/$READLINE; then gunzip -c "$srcdir"/tools/$READLINE.tar.gz | \ @@ -295,12 +373,42 @@ fi if test ! -d "$srcdir"/tools/$SQLITE; then gunzip -c "$srcdir"/tools/$SQLITE.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) - (cd "$srcdir/tools"/$SQLITE && gunzip -c ../$SQLITE.diff.gz | patch -p1) +fi +if test ! -d "$srcdir"/tools/$SIGSEGV; then + gunzip -c "$srcdir"/tools/$SIGSEGV.tar.gz | \ + (cd "$srcdir/tools" && tar -xf -) fi if test ! -d tools/$OPENSSL; then gunzip -c "$srcdir"/tools/$OPENSSL.tar.gz | \ (cd tools && tar -xf -) fi +if test ! -d rplcas; then + mkdir rplcas +fi +if test ! -d "$srcdir"/rplcas/$GMP; then + gunzip -c "$srcdir"/rplcas/$GMP.tar.gz | \ + (cd "$srcdir/rplcas" && tar -xf -) +fi +if test ! -d "$srcdir"/rplcas/$MPFR; then + gunzip -c "$srcdir"/rplcas/$MPFR.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 -) +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 -) +fi +if test ! -d "$srcdir"/rplcas/$GIAC; then + gunzip -c "$srcdir"/rplcas/$GIAC.tar.gz | \ + (cd "$srcdir/rplcas" && tar -xf -) +fi dnl Default installation directory AC_PREFIX_DEFAULT(/usr/local) @@ -832,22 +940,6 @@ AC_CACHE_CHECK([return type of signal ha AC_DEFINE_UNQUOTED([RETSIGTYPE],[$ac_cv_type_signal],[Define as the return type of signal handlers (`int' or `void').]) -dnl Checks for broken siginfo structure -AC_MSG_CHECKING([for broken siginfo->si_pid]) -AC_RUN_IFELSE([AC_LANG_PROGRAM([#include -#include -int flag; -void handler(int signal, siginfo_t *siginfo, void *context) -{ flag = ((*siginfo).si_pid == getpid()) ? 0 : 1; }], -[struct sigaction action; -action.sa_sigaction = handler; -action.sa_flags = SA_SIGINFO; -sigaction(SIGUSR1, &action, NULL); -raise(SIGUSR1); -return(flag);])], -[BROKEN_SIGINFO=-U_BROKEN_SIGINFO; AC_MSG_RESULT(no)], -[BROKEN_SIGINFO=-D_BROKEN_SIGINFO; AC_MSG_RESULT(yes)]) - AC_FUNC_STRCOLL AC_FUNC_STRFTIME AC_FUNC_VPRINTF @@ -863,7 +955,7 @@ if test $(uname) = "OS/2"; then bash -c "cd tools/$OPENSSL && os2/OS2-EMX.cmd" else if test "x$with_openssl_arch" = xnone; then - (cd tools/$OPENSSL && ./config) + (cd tools/$OPENSSL && ./config no-asm) elif test "x$with_openssl_arch" = xyes -o "x$with_openssl_arch" = xno; then (cd tools/$OPENSSL && ./Configure) AC_MSG_ERROR([OS/COMP informations are required!]) @@ -871,19 +963,10 @@ else (cd tools/$OPENSSL && ./Configure) AC_MSG_ERROR([Please specify OS and Architecture]) else - (cd tools/$OPENSSL && ./Configure $with_openssl_arch) + (cd tools/$OPENSSL && ./Configure no-asm $with_openssl_arch) fi fi -AC_CONFIG_SUBDIRS(tools/$NCURSES) -AC_CONFIG_SUBDIRS(tools/$READLINE) -AC_CONFIG_SUBDIRS(tools/$GSL) -AC_CONFIG_SUBDIRS(tools/$GPP) -AC_CONFIG_SUBDIRS(tools/$FILE) -AC_CONFIG_SUBDIRS(tools/$ICONV) -AC_CONFIG_SUBDIRS(tools/$SQLITE) -AC_CONFIG_SUBDIRS(tools/$UNITS) - if test "$MYGNUPLOT" = "yes"; then if test ! -d "$srcdir"/tools/$GNUPLOT; then gunzip -c "$srcdir"/tools/$GNUPLOT.tar.gz | \ @@ -897,6 +980,9 @@ fi AC_SUBST(GNUPLOT_COMPILATION) +HOST=$host +AC_SUBST(HOST) + case $host_cpu in i?86) @@ -949,6 +1035,7 @@ 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 @@ -959,8 +1046,12 @@ case $OS in IPCS_SYSV=-UIPCS_SYSV CXXFLAGS="$CXXFLAGS -D_GLIBCXX_FULLY_DYNAMIC_STRING" ac_configure_args="$ac_configure_args --with-readline=builtin \ - --disable-shared --enable-static" + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break ;; Cygwin) @@ -969,8 +1060,12 @@ case $OS in SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES IPCS_SYSV=-UIPCS_SYSV ac_configure_args="$ac_configure_args --with-readline=builtin \ - --disable-shared --enable-static" + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break ;; Interix) @@ -979,8 +1074,12 @@ case $OS in SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES IPCS_SYSV=-UIPCS_SYSV ac_configure_args="$ac_configure_args --with-readline=builtin \ - --disable-shared --enable-static" + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break;; AIX) @@ -989,12 +1088,15 @@ case $OS in SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES IPCS_SYSV=-UIPCS_SYSV ac_configure_args="$ac_configure_args --with-readline=builtin \ - --disable-shared --enable-static" + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break ;; OS/2) - MALLOC= if test $FORCED_FINAL_ENCODING -eq 0; then \ FINAL_ENCODING=CP850; \ fi; @@ -1004,8 +1106,13 @@ case $OS in SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES IPCS_SYSV=-DIPCS_SYSV ac_configure_args="$ac_configure_args --without-readline \ - --without-cairo --disable-shared --enable-static" + --without-cairo --disable-shared --enable-static \ + --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD= + ELF= break;; OpenBSD) @@ -1017,10 +1124,57 @@ case $OS in SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES IPCS_SYSV=-DIPCS_SYSV ac_configure_args="$ac_configure_args --with-readline=builtin \ - --disable-shared --enable-static" + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break;; + SunOS) + EXPORT_DYNAMIC=-Wl,--export-dynamic + NESTED_FUNCTIONS= + SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES + + if test $IPCS_SYSV = no; then + IPCS_SYSV=-UIPCS_SYSV + else + IPCS_SYSV=-DIPCS_SYSV + fi + + ac_configure_args="$ac_configure_args --with-readline=builtin \ + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" + C_STANDARD=-std=gnu99 + MALLOC=-lumem + ELF= + break ;; + + NetBSD) + EXPORT_DYNAMIC=-Wl,--export-dynamic + NESTED_FUNCTIONS= + SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES + + if test $IPCS_SYSV = no; then + IPCS_SYSV=-UIPCS_SYSV + else + IPCS_SYSV=-DIPCS_SYSV + fi + + ac_configure_args="$ac_configure_args --with-readline=builtin \ + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" + C_STANDARD=-std=gnu99 + GCCBIN=`which gcc` + GCCLIB=`dirname $GCCBIN`/../lib + ELF="-Wl,-R/usr/pkg/lib -Wl,-R$GCCLIB" + break ;; + *) EXPORT_DYNAMIC=-Wl,--export-dynamic NESTED_FUNCTIONS= @@ -1033,8 +1187,12 @@ case $OS in fi ac_configure_args="$ac_configure_args --with-readline=builtin \ - --disable-shared --enable-static" + --disable-shared --enable-static --enable-threads \ + CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \ + FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ + LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break ;; esac @@ -1046,8 +1204,8 @@ AC_SUBST(SEMAPHORES_NOMMES) AC_SUBST(IPCS_SYSV) AC_SUBST(SEMUN) AC_SUBST(IPV6) -AC_SUBST(BROKEN_SIGINFO) AC_SUBST(BSH_PATH) +AC_SUBST(ELF) AC_SUBST(NCURSES) AC_SUBST(READLINE) @@ -1059,16 +1217,35 @@ AC_SUBST(FILE) AC_SUBST(ICONV) AC_SUBST(SQLITE) AC_SUBST(OPENSSL) +AC_SUBST(OPENMOTIF) +AC_SUBST(SIGSEGV) AC_SUBST(FINAL_ENCODING) AC_SUBST(DATE) AC_SUBST(DATE_FR) -AC_SUBST(MALLOC) AC_SUBST(EXT_SQL) +AC_SUBST(MALLOC) +AC_SUBST(GMP) +AC_SUBST(MPFR) +AC_SUBST(NTL) +AC_SUBST(COCOA) +AC_SUBST(PARI) +AC_SUBST(GIAC) AC_SUBST(CFLAGS) AC_SUBST(CXXFLAGS) AC_SUBST(FFLAGS) AC_SUBST(FCFLAGS) +AC_SUBST(LDFLAGS) + +AC_CONFIG_SUBDIRS(tools/$NCURSES) +AC_CONFIG_SUBDIRS(tools/$READLINE) +AC_CONFIG_SUBDIRS(tools/$GSL) +AC_CONFIG_SUBDIRS(tools/$GPP) +AC_CONFIG_SUBDIRS(tools/$FILE) +AC_CONFIG_SUBDIRS(tools/$ICONV) +AC_CONFIG_SUBDIRS(tools/$SQLITE) +AC_CONFIG_SUBDIRS(tools/$UNITS) +AC_CONFIG_SUBDIRS(tools/$SIGSEGV) AC_CONFIG_FILES(Makefile) AC_CONFIG_FILES(COPYING) @@ -1084,10 +1261,10 @@ AC_CONFIG_FILES(scripts/rpllink) AC_CONFIG_FILES(rpltags/Makefile) AC_CONFIG_FILES(rpliconv/Makefile) AC_CONFIG_FILES(rplsums/Makefile) +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(ptmalloc3/Makefile) AC_CONFIG_FILES(man/rpl.1) AC_CONFIG_FILES(man/rplcc.1)