--- rpl/Attic/configure.in 2011/07/25 07:44:51 1.73 +++ rpl/Attic/configure.in 2011/09/17 10:38:31 1.89 @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([rpl],[4.1.2]) +AC_INIT([rpl],[4.1.3]) AC_CANONICAL_TARGET AC_CANONICAL_TARGET AM_INIT_AUTOMAKE @@ -11,18 +11,21 @@ NCURSES=ncurses-5.9 READLINE=readline-6.2 UNITS=units-1.88 GSL=gsl-1.15 -GPP=gpp-2.24 +GPP=gpp-3.0 GNUPLOT=gnuplot-4.4.3 FILE=file-5.03 ICONV=libiconv-1.13.1 SQLITE=sqlite-3.7.7.1 -OPENSSL=openssl-1.0.0d +OPENSSL=openssl-1.0.0e +OPENMOTIF=openmotif-2.3.3 +LIBXPM=libXpm-3.5.9 +SIGSEGV=libsigsegv-2.6 -GMP=gmp-5.0.1 +GMP=gmp-5.0.2 MPFR=mpfr-3.0.1 NTL=ntl-5.5.2 COCOA=CoCoALib-0.9943 -PARI=pari-2.3.5 +PARI=pari-2.5.0 GIAC=giac-0.9.3 dnl Checks for C compiler @@ -202,13 +205,49 @@ fi],[ ) AC_ARG_ENABLE(sysv-semaphores, -[ --enable-sysv-ipcs use SystemV IPC functions [[default=no]]], [ +[ --enable-sysv-ipcs use SystemV IPC functions [[default=guessed]]], [ if test "$enableval" = "no"; then IPCS_SYSV=no else IPCS_SYSV=yes fi], -IPCS_SYSV=no) +[AC_MSG_CHECKING([for POSIX semaphores]) +AC_COMPILE_IFELSE( +[AC_LANG_PROGRAM([#include +#include +#include + ], +[ int fd; char *sem = "/sem.test"; +fd = shm_open(sem , O_CREAT | O_RDWR, S_IRUSR | S_IWUSR); + close(fd); + shm_unlink(sem); + return(0); +])], +[IPCS_SYSV=-UIPCS_SYSV; AC_MSG_RESULT(yes)], +[IPCS_SYSV=-DIPCS_SYSV; AC_MSG_RESULT(no)] + )] +) + +if test "$IPCS_SYSV" = "-UIPCS_SYSV"; then +REG=$LDFLAGS +LDFLAGS=-pthread +AC_MSG_CHECKING([for POSIX anonymous semaphores]) +AC_RUN_IFELSE( +[AC_LANG_PROGRAM([#include + ], +[ sem_t sem; + if (sem_init(&sem, 1, 0) != 0) return(1); + sem_destroy(&sem); + return(0); +])], +[SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES; AC_MSG_RESULT(yes)], +[SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES; AC_MSG_RESULT(no)] + ) +LDFLAGS=$REG +REG="" +else + SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES +fi AC_ARG_ENABLE(full-static, [ --enable-full-static build static RPL/2 engine [[default=shared]]], [ @@ -279,25 +318,35 @@ else FORCE_GNUPLOT_PATH=-UFORCE_GNUPLOT_PATH fi]) +libX="" +LIBMOTIF="" +INCMOTIF="" +BUILD_OPENMOTIF="" + AC_ARG_ENABLE(motif, [ --enable-motif provide the Motif support [[default=guessed]]], [ if test "$enableval" = "no"; then MOTIF_SUPPORT="-UMOTIF_SUPPORT" else - CFLAGS_ORIG=$CFLAGS - LIBS_ORIG=$LIBS - CFLAGS="$CFLAGS $X_CFLAGS" - LIBS="$LIB $X_LIBS" - AC_CHECK_LIB(Xm, main, MOTIF_SUPPORT="-DMOTIF_SUPPORT", MOTIF_SUPPORT="-UMOTIF_SUPPORT") - if test "$MOTIF_SUPPORT" = "-UMOTIF_SUPPORT"; then - AC_MSG_WARN([Can not find Motif! You may install it. -Motif flag is disabled. -]) - fi - LIBS=$LIBS_ORIG - CFLAGS=$CFLAGS_ORIG + MOTIF_SUPPORT="-DMOTIF_SUPPORT" fi], -MOTIF_SUPPORT=guessed) +if test "$have_x" == "yes"; then + MOTIF_SUPPORT="-DMOTIF_SUPPORT" +else + MOTIF_SUPPORT="-UMOTIF_SUPPORT" +fi) + +if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then + libX="$X_LIBS -lXt -lX11" + LIBMOTIF="\$(top_builddir)/tools/$OPENMOTIF/lib/Xm/.libs/libXm.a \ + \$(top_builddir)/tools/$LIBXPM/src/.libs/libXpm.a" + INCMOTIF="-I\$(top_srcdir)/tools/$OPENMOTIF/lib \ + -I\$(top_builddir)/tools/$OPENMOTIF/lib \ + -I\$(top_builddir)/tools/$LIBXPM/include" + BUILD_OPENMOTIF="$LIBXPM $OPENMOTIF" + AC_CONFIG_SUBDIRS(tools/$LIBXPM) + AC_CONFIG_SUBDIRS(tools/$OPENMOTIF) +fi AC_ARG_ENABLE(experimental, [ --enable-experimental enable experimental code [[default=no]]], [ @@ -372,6 +421,18 @@ if test ! -d "$srcdir"/tools/$SQLITE; th gunzip -c "$srcdir"/tools/$SQLITE.tar.gz | \ (cd "$srcdir/tools" && tar -xf -) fi +if test ! -d "$srcdir"/tools/$SIGSEGV; then + gunzip -c "$srcdir"/tools/$SIGSEGV.tar.gz | \ + (cd "$srcdir/tools" && tar -xf -) +fi +if test ! -d "$srcdir"/tools/$OPENMOTIF; then + gunzip -c "$srcdir"/tools/$OPENMOTIF.tar.gz | \ + (cd "$srcdir/tools" && tar -xf -) +fi +if test ! -d "$srcdir"/tools/$LIBXPM; then + gunzip -c "$srcdir"/tools/$LIBXPM.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 -) @@ -404,6 +465,8 @@ if test ! -d "$srcdir"/rplcas/$GIAC; the (cd "$srcdir/rplcas" && tar -xf -) fi +touch tools/openmotif.lib + dnl Default installation directory AC_PREFIX_DEFAULT(/usr/local) @@ -529,41 +592,6 @@ else fi fi -if test "$MOTIF_SUPPORT" = guessed; then - CFLAGS_ORIG=$CFLAGS - LIBS_ORIG=$LIBS - CFLAGS="$CFLAGS $X_CFLAGS" - LIBS="$LIB $X_LIBS" - AC_CHECK_LIB(Xm, main, MOTIF_SUPPORT="-DMOTIF_SUPPORT", MOTIF_SUPPORT="-UMOTIF_SUPPORT") - if test "$MOTIF_SUPPORT" = "-UMOTIF_SUPPORT"; then - AC_MSG_WARN([Cannot find Motif! You may install it. -Motif flag is disabled. -]) - fi - LIBS=$LIBS_ORIG - CFLAGS=$CFLAGS_ORIG -fi - -if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then - CFLAGS_ORIG=$CFLAGS - LIBS_ORIG=$LIBS - CFLAGS="$CFLAGS $X_CFLAGS" - LIBS="$LIB $X_LIBS" - AC_CHECK_LIB(Xpm, main, MOTIF_SUPPORT="-DMOTIF_SUPPORT", MOTIF_SUPPORT="-UMOTIF_SUPPORT") - if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then - libX="$X_LIBS -lXm -lXpm -lXt -lX11" - else - libX="" - AC_MSG_WARN([Cannot find libXpm! You may install it. -Motif flag is disabled. -]) - fi - LIBS=$LIBS_ORIG - CFLAGS=$CFLAGS_ORIG -else - libX="" -fi - dnl Substitutions AC_SUBST(GNUPLOT_SUPPORT) AC_SUBST(FORCE_GNUPLOT_PATH) @@ -934,22 +962,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 @@ -1052,8 +1064,6 @@ case $OS in Darwin) EXPORT_DYNAMIC=-Wl,-flat_namespace NESTED_FUNCTIONS=-fnested-functions - SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES - IPCS_SYSV=-UIPCS_SYSV CXXFLAGS="$CXXFLAGS -D_GLIBCXX_FULLY_DYNAMIC_STRING" ac_configure_args="$ac_configure_args --with-readline=builtin \ --disable-shared --enable-static --enable-threads \ @@ -1061,45 +1071,43 @@ case $OS in FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break ;; Cygwin) EXPORT_DYNAMIC=-Wl,--export-all-symbols NESTED_FUNCTIONS= - SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES - IPCS_SYSV=-UIPCS_SYSV 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 + ELF= break ;; Interix) EXPORT_DYNAMIC=-Wl,--export-all-symbols NESTED_FUNCTIONS= - SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES - IPCS_SYSV=-UIPCS_SYSV 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 + ELF= break;; AIX) EXPORT_DYNAMIC=-Wl,--export-dynamic NESTED_FUNCTIONS= - SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES - IPCS_SYSV=-UIPCS_SYSV 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 + ELF= break ;; OS/2) @@ -1109,8 +1117,6 @@ case $OS in OS=OS2 NESTED_FUNCTIONS= EXPORT_DYNAMIC=-Zmap - SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES - IPCS_SYSV=-DIPCS_SYSV ac_configure_args="$ac_configure_args --without-readline \ --without-cairo --disable-shared --enable-static \ --enable-threads \ @@ -1118,6 +1124,7 @@ case $OS in FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ LDFLAGS=\"$LDFLAGS\"" C_STANDARD= + ELF= break;; OpenBSD) @@ -1126,26 +1133,18 @@ case $OS in fi; EXPORT_DYNAMIC=-Wl,--export-dynamic NESTED_FUNCTIONS= - SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES - IPCS_SYSV=-DIPCS_SYSV 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 + 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 \ @@ -1154,18 +1153,27 @@ case $OS in 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= ac_configure_args="$ac_configure_args --with-readline=builtin \ --disable-shared --enable-static --enable-threads \ @@ -1173,6 +1181,7 @@ case $OS in FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \ LDFLAGS=\"$LDFLAGS\"" C_STANDARD=-std=gnu99 + ELF= break ;; esac @@ -1184,8 +1193,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) @@ -1197,6 +1206,10 @@ AC_SUBST(FILE) AC_SUBST(ICONV) AC_SUBST(SQLITE) AC_SUBST(OPENSSL) +AC_SUBST(LIBXPM) +AC_SUBST(OPENMOTIF) +AC_SUBST(BUILD_OPENMOTIF) +AC_SUBST(SIGSEGV) AC_SUBST(FINAL_ENCODING) AC_SUBST(DATE) AC_SUBST(DATE_FR) @@ -1208,6 +1221,8 @@ AC_SUBST(NTL) AC_SUBST(COCOA) AC_SUBST(PARI) AC_SUBST(GIAC) +AC_SUBST(INCMOTIF) +AC_SUBST(LIBMOTIF) AC_SUBST(CFLAGS) AC_SUBST(CXXFLAGS) @@ -1223,6 +1238,7 @@ 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)