--- gforth/configure.in 2012/03/17 01:36:03 1.299 +++ gforth/configure.in 2012/03/22 16:39:18 1.305 @@ -128,6 +128,7 @@ else fi]) #variables mentioned in INSTALL +AC_ARG_VAR(SH, [The shell]) AC_ARG_VAR(CC, [The C compiler (must support GNU C 2.x).]) AC_ARG_VAR(FORTHSIZES, [Gforth command line options for the default stack and dictionary sizes (see INSTALL).]) AC_ARG_VAR(STACK_CACHE_REGS, [number of registers in the maximum stack cache state for gforth-fast and gforth-native (default platform-dependent).]) @@ -176,6 +177,8 @@ AC_PROG_CC test "$GCC" = "yes" || AC_MSG_ERROR(Gforth uses GNU C extensions and requires GCC 2.0 or higher) +test "x$SH" = "x" && SH="/bin/sh" + AC_MSG_CHECKING([whether to use two dispatches per conditional branch]) test x$condbranch_opt = x && if ($CC -v 2>&1 |grep 'gcc version 3' >/dev/null); then @@ -185,7 +188,9 @@ else fi AC_MSG_RESULT($condbranch_opt) AC_SUBST(condbranch_opt) +AC_SUBST(host_cpu) +AC_SUBST(SH) AC_SUBST(CC) AC_SUBST(GCC_LD) AC_SUBST(DEBUGFLAG) @@ -209,14 +214,18 @@ test "$make_type" = "GNU Make" && GNUMAK AC_MSG_RESULT($make_type) AC_SUBST(GNUMAKE) -AC_MSG_CHECKING([whether the linker accepts -export-dynamic]) -OLDLDFLAGS=$LDFLAGS -LDFLAGS="$LDFLAGS -export-dynamic" -dnl AC_TRY_LINK gives false positive on rs6000-ibm-aix4.2.1.0 -dnl AC_TRY_LINK(,,ac_export_dynamic=yes,ac_export_dynamic=no) -AC_TRY_RUN(main(){exit(0);},ac_export_dynamic=yes,ac_export_dynamic=no,ac_export_dynamic=no) -test $ac_export_dynamic = yes|| LDFLAGS=$OLDLDFLAGS -AC_MSG_RESULT($ac_export_dynamic) +if test "$ac_export_dynamic" != yes; then + AC_MSG_CHECKING([whether the linker accepts -export-dynamic]) + OLDLDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -export-dynamic" + dnl AC_TRY_LINK gives false positive on rs6000-ibm-aix4.2.1.0 + dnl AC_TRY_LINK(,,ac_export_dynamic=yes,ac_export_dynamic=no) + AC_TRY_RUN(main(){exit(0);},ac_export_dynamic=yes,ac_export_dynamic=no,ac_export_dynamic=no) + test $ac_export_dynamic = yes|| LDFLAGS=$OLDLDFLAGS + AC_MSG_RESULT($ac_export_dynamic) +else + LDFLAGS="$LDFLAGS -export-dynamic" +fi #terminology is a bit unusual here: The host is the system on which #gforth will run; the system on which configure will run is the `build' @@ -910,6 +919,13 @@ dnl This check is just for making later dnl using sin here is no good idea since it is built-into gcc and typechecked AC_CHECK_LIB(m,asin) AC_CHECK_LIB(ltdl,lt_dlinit) +dnl ,LIB_SUFFIX=.la,LIB_SUFFIX=.so) +if test "x$ac_cv_lib_ltdl_lt_dlinit" = xyes; then + LIB_SUFFIX=.la +else + LIB_SUFFIX=.so +fi +AC_SUBST(LIB_SUFFIX) AC_CHECK_LIB(rt,clock_gettime) if test -n "$GNU_LIBTOOL" -a $ac_cv_lib_ltdl_lt_dlinit = yes; then @@ -963,7 +979,7 @@ if test "$host_os" != "nextstep3" then AC_FUNC_MEMCMP fi -AC_REPLACE_FUNCS(memmove strtoul pow10 strerror strsignal atanh) +AC_REPLACE_FUNCS(memmove strtoul pow10 sincos strerror strsignal atanh) AC_FUNC_FSEEKO AC_CHECK_FUNCS(ftello dlopen sys_siglist getrusage nanosleep clock_gettime) AC_CHECK_TYPES(stack_t,,,[#include ]) @@ -1022,6 +1038,7 @@ vmgen machpc.fs envos.fs preforth +libforth gforthker engine/Makefile engine/libcc.h @@ -1032,6 +1049,7 @@ chmod +x gforthmi chmod +x vmgen chmod +x build-ec chmod +x preforth +chmod +x libforth chmod +x gforthker test -d kernel||mkdir kernel if test $srcdir != "."; then ln -sf $srcdir/gforth.el .; fi