--- rpl/Attic/configure.in 2011/09/10 20:44:48 1.79 +++ rpl/Attic/configure.in 2011/09/16 16:37:07 1.85 @@ -17,6 +17,8 @@ FILE=file-5.03 ICONV=libiconv-1.13.1 SQLITE=sqlite-3.7.7.1 OPENSSL=openssl-1.0.0e +OPENMOTIF=openmotif-2.3.3 +LIBXPM=libXpm-3.5.9 SIGSEGV=libsigsegv-2.6 GMP=gmp-5.0.2 @@ -203,13 +205,48 @@ 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]]], [ @@ -280,25 +317,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]]], [ @@ -377,6 +424,14 @@ if test ! -d "$srcdir"/tools/$SIGSEGV; t 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 -) @@ -534,41 +589,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) @@ -939,22 +959,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 @@ -1057,8 +1061,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 \ @@ -1072,8 +1074,6 @@ case $OS in 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\" \ @@ -1086,8 +1086,6 @@ case $OS in 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\" \ @@ -1100,8 +1098,6 @@ case $OS in 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\" \ @@ -1118,8 +1114,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 \ @@ -1136,8 +1130,6 @@ 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\" \ @@ -1150,13 +1142,6 @@ case $OS in 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 \ @@ -1171,13 +1156,6 @@ case $OS in 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 \ @@ -1193,13 +1171,6 @@ case $OS in *) 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 \ @@ -1219,7 +1190,6 @@ 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) @@ -1233,6 +1203,8 @@ AC_SUBST(FILE) AC_SUBST(ICONV) AC_SUBST(SQLITE) AC_SUBST(OPENSSL) +AC_SUBST(OPENMOTIF) +AC_SUBST(BUILD_OPENMOTIF) AC_SUBST(SIGSEGV) AC_SUBST(FINAL_ENCODING) AC_SUBST(DATE) @@ -1245,6 +1217,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)