--- rpl/Attic/configure.in 2010/03/04 10:09:30 1.9 +++ rpl/Attic/configure.in 2010/08/06 15:27:41 1.32 @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([rpl],[4.0.11]) +AC_INIT([rpl],[4.0.18]) AC_CANONICAL_TARGET AC_CANONICAL_TARGET AM_INIT_AUTOMAKE @@ -7,30 +7,39 @@ AC_SUBST(target_cpu) AC_CONFIG_HEADERS([rplconfig.h]) dnl Libraries -NCURSES=ncurses-5.7-20100206 +NCURSES=ncurses-5.7-20100619 READLINE=readline-6.1 -UNITS=units-1.87 -GSL=gsl-1.13 +UNITS=units-1.88 +GSL=gsl-1.14 GPP=gpp-2.24 -GNUPLOT=gnuplot-4.2.6 +GNUPLOT=gnuplot-4.4.0 FILE=file-5.03 ICONV=libiconv-1.13.1 +SQLITE=sqlite-3.7.0.1 +OPENSSL=openssl-1.0.0a dnl Checks for C compiler -AC_PROG_CC(gcc-4.4 gcc) +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 4 -a $GCC_VERSION_MINEURE -ge 4; then + if test $GCC_VERSION_MAJEURE -ge 5; then OPTIMISATION_C=-O3 else - if test $GCC_VERSION_MAJEURE -ge 5; then + if test $GCC_VERSION_MAJEURE -ge 4 -a $GCC_VERSION_MINEURE -ge 4; \ + then OPTIMISATION_C=-O3 else - OPTIMISATION_C=-O2 + 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 @@ -42,21 +51,21 @@ if test "$GCC" != yes; then fi dnl Checks for C++ compiler -AC_PROG_CXX(g++-4.4 g++) +AC_PROG_CXX(g++) if test "$GXX" != yes; then AC_MSG_ERROR([Cannot find g++! You have to install it.]) fi dnl Checks for Fortran 77 compiler -AC_PROG_F77(gfortran-4.4 gfortran) +AC_PROG_F77(gfortran) if test "$F77" != gfortran -a "$F77" != gfortran-4.4; then AC_MSG_ERROR([Cannot find gfortran! You have to install it.]) fi dnl Check for Fortran 9* compiler -AC_PROG_FC(gfortran-4.4 gfortran) +AC_PROG_FC(gfortran) if test "$FC" != gfortran -a "$FC" != gfortran-4.4; then AC_MSG_ERROR([Cannot find gfortran! You have to install it.]) @@ -67,13 +76,17 @@ if test x"$FC" != x""; then 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 4 -a $GCC_VERSION_MINEURE -ge 4; then + if test $GCC_VERSION_MAJEURE -ge 5; then OPTIMISATION_F=-O3 else - if test $GCC_VERSION_MAJEURE -ge 5; then + if test $GCC_VERSION_MAJEURE -ge 4 -a $GCC_VERSION_MINEURE -ge 4; then OPTIMISATION_F=-O3 else - OPTIMISATION_F=-O2 + 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 @@ -113,16 +126,25 @@ fi],[ ] ) +AC_ARG_ENABLE(full-static, +[ --enable-full-static build static RPL/2 engine [[default=shared]]], [ +if test "$enableval" = "no"; then + STATIC=no +else + STATIC=yes +fi], +STATIC=no) + 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;}')" else FINAL_ENCODING="$enable_final_encoding" fi], 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]]], [ @@ -202,10 +224,13 @@ EXPERIMENTAL_CODE="-UEXPERIMENTAL_CODE") AC_ARG_ENABLE(debug, [ --enable-debug enable debug code [[default=no]]], [ if test "$enableval" = "no"; then - DEBUG="" + DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS" + MALLOC="\$(top_builddir)/ptmalloc3/libptmalloc3.a" else - DEBUG="-DDEBUG_MEMOIRE" -fi], [DEBUG=""]) + DEBUG="-DDEBUG_MEMOIRE -UDEBUG_ERREURS" + MALLOC="" +fi], [DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS" + MALLOC="\$(top_builddir)/ptmalloc3/libptmalloc3.a"]) AC_ARG_ENABLE(profile, [ --enable-profile enable profile code [[default=no]]], [ @@ -243,40 +268,20 @@ fi if test ! -d "$srcdir"/tools/$FILE; then gunzip -c "$srcdir"/tools/$FILE.tar.gz | \ (cd "$srcdir/tools" && tar -xf - ) - TMP=$(mktemp) (cd "$srcdir/tools"/$FILE && gunzip -c ../$FILE.diff.gz | patch -p1) - sed 's/libmagic/librplfile/g' "$srcdir"/tools/$FILE/src/Makefile.am > $TMP - sed 's/^bin_PROGRAMS = file/bin_PROGRAMS = rplfile/g' $TMP | \ - sed 's/^file_/rplfile_/g' > \ - "$srcdir"/tools/$FILE/src/Makefile.am - sed 's/file$/rplfile/g' "$srcdir"/tools/$FILE/magic/Makefile.am > $TMP - \mv -f $TMP "$srcdir"/tools/$FILE/magic/Makefile.am - (cd "$srcdir"/tools/$FILE && libtoolize --copy --force \ - && aclocal && automake -af && autoconf); fi if test ! -d "$srcdir"/tools/$ICONV; then gunzip -c "$srcdir"/tools/$ICONV.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) fi - -AC_CHECK_PROG(LIBTOOLIZE, libtoolize, yes, no) -if test "$LIBTOOLIZE" = "no"; then - AC_MSG_ERROR([Cannot find libtoolize! You have to install it.]) -fi - -AC_CHECK_PROG(ACLOCAL, aclocal, yes, no) -if test "$ACLOCAL" = "no"; then - AC_MSG_ERROR([Cannot find aclocal! You have to install it.]) -fi - -AC_CHECK_PROG(AUTOMAKE, automake, yes, no) -if test "$AUTOMAKE" = "no"; then - AC_MSG_ERROR([Cannot find automake! You have to install it.]) +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 - -AC_CHECK_PROG(AUTOCONF, autoconf, yes, no) -if test "$AUTOCONF" = "no"; then - AC_MSG_ERROR([Cannot find autoconf! You have to install it.]) +if test ! -d tools/$OPENSSL; then + gunzip -c "$srcdir"/tools/$OPENSSL.tar.gz | \ + (cd tools && tar -xf -) fi dnl Default installation directory @@ -302,10 +307,10 @@ AC_PROG_LN_S AC_PROG_MAKE_SET AC_PROG_RANLIB -dnl Checks for awk -AC_CHECK_PROG(AWK, awk, yes, no) +dnl Checks for nawk +AC_CHECK_PROG(AWK, nawk, yes, no) if test "$AWK" = no; then - AC_MSG_ERROR([Can not find awk !]) + AC_MSG_ERROR([Can not find nawk !]) fi dnl Checks for sed @@ -477,11 +482,11 @@ AC_ARG_WITH(mysql, if test "x$with_mysql" = xcheck -o "x$with_mysql" = yes; then libMySQLinc="-I/usr/include" - libMySQLlib="-L/usr/lib" + libMySQLlib="/usr/lib" AC_MSG_CHECKING(for libmysql includes in /usr/include) saved_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $libMySQLinc" + 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"]) CFLAGS=$saved_CFLAGS @@ -520,7 +525,7 @@ if test "x$with_mysql" = xcheck -o "x$wi else if test "x$with_mysql" != xno; then libMySQLinc="-I$with_mysql/include" - libMySQLlib="-L$with_mysql/lib" + libMySQLlib="$with_mysql/lib" AC_MSG_CHECKING(for libmysql includes in $with_mysql) saved_CFLAGS="$CFLAGS" @@ -549,10 +554,19 @@ if test "$MYSQL_SUPPORT" = "-DMYSQL_SUPP if test $MYSQL_LIB = no; then AC_MSG_CHECKING(for libmysql libraries in $libMySQLlib) saved_LIBS="$LIBS" - LIBS="$LIBS $libMySQLlib $libMySQLinc -lmysqlclient_r" + if test $STATIC = no; then + LIBS="$LIBS -L/$libMySQLlib -lmysqlclient_r $libMySQLinc" + else + LIBS="$LIBS $libMySQLlib/libmysqlclient_r.a -lz $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; - libMySQLlib="$libMySQLlib -lmysqlclient_r" + if test $STATIC = no; then + libMySQLlib="-L/$libMySQLlib -lmysqlclient_r" + else + libMySQLlib="$libMySQLlib/libmysqlclient_r.a" + EXT_SQL="$EXT_SQL $libMySQLlib" + fi fi if test $MYSQL_LIB = no; then @@ -579,7 +593,7 @@ AC_ARG_WITH(postgresql, if test "x$with_postgresql" = xcheck -o "x$with_postgresql" = xyes; then libPgSQLinc="-I/usr/include" - libPgSQLlib="-L/usr/lib" + libPgSQLlib="/usr/lib" AC_MSG_CHECKING(for libpq includes in /usr/include) saved_CFLAGS="$CFLAGS" @@ -647,7 +661,7 @@ if test "x$with_postgresql" = xcheck -o else if test "x$with_postgresql" != xno; then libPgSQLinc="-I$with_postgresql/include" - libPgSQLlib="-L$with_postgresql/lib" + libPgSQLlib="$with_postgresql/lib" AC_MSG_CHECKING(for libpq includes in $libPgSQLinc) saved_CFLAGS="$CFLAGS" @@ -689,11 +703,20 @@ if test "$POSTGRESQL_SUPPORT" = "-DPOSTG if test $POSTGRESQL_LIB = no; then AC_MSG_CHECKING(for libpq libraries in $libPgSQLlib) saved_LIBS="$LIBS" - LIBS="$LIBS $libPgSQLlib $libPgSQLinc -lpq" + if test $STATIC = no; then + LIBS="$LIBS -L/$libPgSQLlib $libPgSQLinc -lpq" + else + LIBS="$LIBS $libPgSQLlib/libpq.a $libPgSQLinc" + fi AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[PGconn *conn; const char *conninfo="dbname=postgres"; conn = PQconnectdb(conninfo);]])],[AC_MSG_RESULT([yes]); POSTGRESQL_LIB="yes"],[AC_MSG_RESULT([no]); POSTGRESQL_LIB="no"]) LIBS=$saved_LIBS; - libPgSQLlib="$libPgSQLlib -lpq" + if test $STATIC = no; then + libPgSQLlib="-L/$libPgSQLlib -lpq" + else + libPgSQLlib="$libPgSQLlib/libpq.a" + EXT_SQL="$EXT_SQL $libPgSQLlib" + fi fi fi @@ -754,11 +777,33 @@ AC_CHECK_FUNCS(ftime getcwd putenv selec AC_CONFIG_SUBDIRS(tools/$NCURSES) AC_CONFIG_SUBDIRS(tools/$READLINE) -AC_CONFIG_SUBDIRS(tools/$UNITS) 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) + +dnl Check for OpenSSL os/comp +AC_ARG_WITH(openssl_arch, +[ --with-openssl-arch=ARCH specify os and compiler for openssl (ARCH or list)], +[], [with_openssl_arch=none]) + +if test $(uname) = "OS/2"; then + (cd tools/$OPENSSL && os2/OS2-EMX.cmd) +else + if test "x$with_openssl_arch" = xnone; then + (cd tools/$OPENSSL && ./config) + 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!]) + elif test "x$with_openssl_arch" = xlist; then + (cd tools/$OPENSSL && ./Configure) + AC_MSG_ERROR([Please specify OS and Architecture]) + else + (cd tools/$OPENSSL && ./Configure $with_openssl_arch) + fi +fi if test "$MYGNUPLOT" = "yes"; then if test ! -d "$srcdir"/tools/$GNUPLOT; then @@ -808,35 +853,75 @@ esac case $host_os in cygwin*) - LIBICONV=libiconv.dll.a OS=Cygwin break ;; interix*) - LIBICONV=libiconv.dll.a OS=Interix break ;; *) - LIBICONV=libiconv.a OS=$(uname) break ;; esac -AC_SUBST(LIBICONV) 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') -if test $(uname) = "SunOS"; then - LIBMTMALLOC=-lmtmalloc -else - LIBMTMALLOC= -fi +case $OS in + + Darwin) + EXPORT_DYNAMIC=-Wl,-flat_namespace + NESTED_FUNCTIONS=-fnested-functions + SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES + CXXFLAGS="$CXXFLAGS -D_GLIBCXX_FULLY_DYNAMIC_STRING" + ac_configure_args="$ac_configure_args --with-readline=builtin \ + --disable-shared --enable-static" + break ;; + + Cygwin) + EXPORT_DYNAMIC=-Wl,--export-all-symbols + NESTED_FUNCTIONS= + SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES + ac_configure_args="$ac_configure_args --with-readline=builtin \ + --disable-shared --enable-static" + break ;; + + AIX) + EXPORT_DYNAMIC=-Wl,--export-dynamic + NESTED_FUNCTIONS= + SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES + ac_configure_args="$ac_configure_args --with-readline=builtin \ + --disable-shared --enable-static" + break ;; + + OS/2) + MALLOC= + OS=OS2 + FINAL_ENCODING=UTF-8 + NESTED_FUNCTIONS= + EXPORT_DYNAMIC=-Zmap + SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES + ac_configure_args="$ac_configure_args --without-readline \ + --without-cairo --disable-shared --enable-static" + break;; + + *) + EXPORT_DYNAMIC=-Wl,--export-dynamic + NESTED_FUNCTIONS= + SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES + ac_configure_args="$ac_configure_args --with-readline=builtin \ + --disable-shared --enable-static" + break ;; + +esac -AC_SUBST(LIBMTMALLOC) +AC_SUBST(EXPORT_DYNAMIC) +AC_SUBST(NESTED_FUNCTIONS) +AC_SUBST(SEMAPHORES_NOMMES) AC_SUBST(NCURSES) AC_SUBST(READLINE) @@ -846,9 +931,13 @@ AC_SUBST(GPP) AC_SUBST(GNUPLOT) AC_SUBST(FILE) AC_SUBST(ICONV) +AC_SUBST(SQLITE) +AC_SUBST(OPENSSL) AC_SUBST(FINAL_ENCODING) AC_SUBST(DATE) AC_SUBST(DATE_FR) +AC_SUBST(MALLOC) +AC_SUBST(EXT_SQL) AC_SUBST(CFLAGS) AC_SUBST(CXXFLAGS) @@ -868,8 +957,10 @@ AC_CONFIG_FILES(scripts/rplcc) AC_CONFIG_FILES(scripts/rpllink) AC_CONFIG_FILES(rpltags/Makefile) AC_CONFIG_FILES(rpliconv/Makefile) +AC_CONFIG_FILES(rplsums/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)