#### Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
#### Copyright (C) 1993-1995 Board of Trustees, University of Illinois.
#### Copyright (C) 1996, 1997 Sun Microsystems, Inc.
-#### Copyright (C) 1995, 1996 Ben Wing.
+#### Copyright (C) 1995, 1996, 2005 Ben Wing.
#### Copyright (C) 2000, 2001 Martin Buchholz.
#### Copyright (C) 1998, 1999 J. Kean Johnston.
with_site_modules='yes'
with_menubars=''
with_scrollbars=''
+dnl can't turn off widgets here because of systems where they are demanded
with_widgets=''
with_dialogs=''
with_file_coding=''
rel_alloc='default'
with_system_malloc='default'
with_dlmalloc='default'
+use_regex_malloc='yes'
dnl ESD is associated with crashes and lockups due to incorrect signal use.
with_esd_sound='no'
native_sound_lib=''
with_tty=""
use_union_type="no"
with_dnet=""
-pdump="no"
+dnl pdump now defaults by opsys
+pdump=''
dnl dragndrop is still experimental. When it is stable, comment out the following line:
with_dragndrop="no"
dnl Too annoying, even if mandated by IPv6 (and I'm not even sure of that)
with_xfs | \
with_i18n3 | \
with_mule | \
+ with_utf_2000 | \
+ with_chise | \
+ with_text_coding| \
with_file_coding| \
with_canna | \
with_wnn | \
with_workshop | \
with_sparcworks | \
with_tooltalk | \
+ with_concord | \
with_ldap | \
with_postgresql | \
with_pop | \
pdump | \
debug | \
use_assertions | \
+ use_regex_malloc | \
memory_usage_stats | \
with_clash_detection | \
- with_modules | \
+ with_modules | \
quick_build )
dnl Make sure the value given was either "yes" or "no".
case "$val" in
*-*-ultrix* ) opsys=ultrix4-3 ;;
dnl AIX
- *-*-aix3.1* ) opsys=aix3-1 ;;
- *-*-aix3.2.5 ) opsys=aix3-2-5 ;;
- *-*-aix3* ) opsys=aix3-2 ;;
- *-*-aix4.0* ) opsys=aix4 ;;
- *-*-aix4.1* ) opsys=aix4-1 ;;
- *-*-aix4* ) opsys=aix4-2 ;;
+ *-*-aix3.1* ) opsys=aix3-1 ;;
+ *-*-aix3.2.5 ) opsys=aix3-2-5 ;;
+ *-*-aix3* ) opsys=aix3-2 ;;
+ *-*-aix4.0* ) opsys=aix4 ;;
+ *-*-aix4.1* ) opsys=aix4-1 ;;
+ *-*-aix[[4-9]]* ) opsys=aix4-2 ;;
dnl Other generic OSes
*-gnu* ) opsys=gnu ;;
*-*-darwin*)
opsys=darwin
RANLIB="ranlib -c" dnl Avoids a link error with lwlib-config.c
- pdump=yes dnl No "native" working dumper available
;;
dnl Data General AViiON Machines
esac
case "$canonical" in
- *-solaris* )
+ *-solaris* )
opsys=sol2
- os_release=`uname -r | sed -e 's/^\([[0-9]]\)\.\([[0-9]]\).*/\1\2/'`
+ os_release_major=`uname -r | sed -e 's/^\([[0-9]]\{1,\}\)\.\([[0-9]]\{1,\}\).*/\1/'`
+ os_release_minor=`uname -r | sed -e 's/^\([[0-9]]\{1,\}\)\.\([[0-9]]\{1,\}\).*/\2/'`
+ case "$os_release_minor" in [[0-9]])
+ os_release_minor="0${os_release_minor}";;
+ esac
+ os_release="${os_release_major}${os_release_minor}"
AC_DEFINE_UNQUOTED(OS_RELEASE, $os_release) ;;
dnl The last Sun386 ran 4.0.
echo "Using configure-time autodetection only."
fi
+dnl --------------------------------------------------------------
+dnl $opsys detection complete; defaults depending on $opsys follow
+dnl --------------------------------------------------------------
+
+if test -z "$pdump"; then
+ case "$opsys" in
+ linux* ) pdump=yes ;; dnl glibc 2.3.1 seems to hose unexec
+ darwin ) pdump=yes ;; dnl No "native" working dumper available
+ cygwin* ) pdump=yes ;; dnl unexec is broken
+ *) pdump=no ;;
+ esac
+fi
if test -z "$dynamic"; then
case "$opsys" in
case "$opsys" in
hpux* | sunos4* | sco5 ) opsys="${opsys}-shr" ;;
decosf* ) ld_call_shared="-call_shared" ;;
+ darwin ) AC_DEFINE(DLSYM_NEEDS_UNDERSCORE) ;;
esac
else dnl "$dynamic" = "no"
case "$opsys" in
sol2)
AC_DEFINE(__EXTENSIONS__)
dnl Solaris 2 before 2.5 had some bugs with feature test macro interaction.
- if test "$os_release" -ge 55; then
+ if test "$os_release" -ge 505; then
AC_DEFINE(_XOPEN_SOURCE,500)
AC_DEFINE(_XOPEN_SOURCE_EXTENDED)
fi ;;
return 12;
#elif defined __USLC__ && defined __SCO_VERSION__
return 13;
+#elif defined __INTEL_COMPILER
+return 14;
#else
return 0;
#endif
}], [],
[case "$conftest_rc" in
- 11) echo "You appear to be using the SunPro C compiler."; __SUNPRO_C=yes ;;
- 12) echo "You appear to be using the DEC C compiler." ; __DECC=yes ;;
- 13) echo "You appear to be using the SCO C compiler." ; __USLC__=yes ;;
+ 11) echo "You appear to be using the SunPro C compiler." ; __SUNPRO_C=yes ;;
+ 12) echo "You appear to be using the DEC C compiler." ; __DECC=yes ;;
+ 13) echo "You appear to be using the SCO C compiler." ; __USLC__=yes ;;
+ 14) echo "You appear to be using the Intel C++ compiler."; __ICC=yes
+ dnl Newer versions of icc claim to be GCC
+ GCC=no ;;
esac])
dnl XEmacs supported mingw and cygnus have made this incompatible change
dnl so we just go with the flow.
case "$opsys" in mingw* | cygwin*)
- cygwin_include=`eval "gcc -print-file-name=libc.a"` ;
- cygwin_include=`eval "dirname $cygwin_include"` ;
- cygwin_include="-I$cygwin_include/../include" ;
+ cygwin_include=`eval gcc -print-search-dirs | sed -ne s'/install: //p'`
+ cygwin_include=`eval "cd $cygwin_include/../../../..; pwd"`
+ cygwin_include="-I$cygwin_include/include" ;
extra_includes="$cygwin_include/mingw $cygwin_include" ;
case "$opsys" in mingw*)
XE_APPEND($extra_includes, c_switch_system) ;;
CFLAGS="-g -O3 -Wall -Wno-switch -Winline -Wmissing-prototypes"
dnl Yuck, bad compares have been worth at least 3 crashes!
CFLAGS="$CFLAGS -Wsign-compare"
+ dnl XEmacs is known not to be strict-aliasing-safe.
+ case "`gcc -v --help 2>&1`" in
+ *-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
+ esac
dnl You get five zillion shadowing warnings with g++.
dnl Even with gcc, -Wshadow is questionable because of its complaints
dnl about parameters with the same names as global functions.
CFLAGS="-O3"
elif test "$CC" = "xlc"; then
CFLAGS="-g -O3 -qstrict -qnoansialias -qlibansi -qinfo -qro -qmaxmem=20000"
+ elif test "$__ICC" = "yes"; then
+ CFLAGS="-g -O3 -Ob2 -Wall -W1"
dnl ### Add optimal CFLAGS support for other compilers HERE!
else
CFLAGS="-O" ;dnl The only POSIX-approved flag
AC_MSG_RESULT(no)
fi
+dnl GNU ld now defaults to combreloc, which screws up unexec, but not pdump.
+dnl Note that it's OK if the GNU style long option causes non-GNU ld to barf
+dnl a usage message, that's often good enough. Please report it, though.
+dnl #### Should make this Solaris-friendly.
+dnl Link with -z nocombreloc for now.
+if test "$pdump" != "yes"; then
+ AC_MSG_CHECKING(for \"-z nocombreloc\" linker flag)
+ case "`ld --help 2>&1`" in
+ *-z\ nocombreloc* ) AC_MSG_RESULT(yes)
+ XE_PREPEND(-z nocombreloc, ld_switch_site) ;;
+ *) AC_MSG_RESULT(no) ;;
+ esac
+fi
+
+
dnl Inform compiler that certain flags are meant for the linker
dnl XE_PROTECT_LINKER_FLAGS(shell_var)
define([XE_PROTECT_LINKER_FLAGS], [
fi])dnl
XE_PROTECT_LINKER_FLAGS(ld_switch_system)
XE_PROTECT_LINKER_FLAGS(ld_switch_machine)
+XE_PROTECT_LINKER_FLAGS(ld_switch_site)
XE_PROTECT_LINKER_FLAGS(LDFLAGS)
XE_PROTECT_LINKER_FLAGS(ld_call_shared)
*86* ) dynodump_arch=i386 ;;
powerpc ) dynodump_arch=ppc ;;
esac
- dnl Dynodump requires the system linker
- test "$GCC" = "yes" && XE_APPEND(-fno-gnu-linker, ld_switch_site)
fi
dnl Feed s&m crud to src/Makefile
dnl Linux/powerpc needs the following magic for some reason
-test "$machine$opsys" = "powerpclinux" && start_flags="-T $srcdir/src/ppc.ldscript"
+dnl [Not needed with YellowDog 2.3 and causes link problems with YellowDog 3.0,
+dnl the two most popular PowerPC distributions.]
+dnl test "$machine$opsys" = "powerpclinux" && start_flags="-T $srcdir/src/ppc.ldscript"
if test "$unexec" = "unexaix.o"; then
dnl AIX needs various hacks to make static linking work.
case "$arg" in -L*) XE_ADD_RUNPATH_DIR(`echo '' "$arg" | sed -e 's:^ ::' -e 's/^-L//'`);; esac
done
dnl Sometimes /opt/SUNWdt/lib is the only installed Motif available
+ dnl #### this test always fails here as need_motif is null
if test "$opsys $need_motif" = "sol2 yes"; then
xe_runpath_dir="/opt/SUNWdt/lib";
eval "$xe_add_unique_runpath_dir";
dnl check for Unix98 socklen_t
AC_MSG_CHECKING(for socklen_t)
-AC_TRY_COMPILE([#include <sys/socket.h>
+AC_TRY_COMPILE([#include <sys/types.h>
+#include <sys/socket.h>
socklen_t x;
],[],[AC_MSG_RESULT(yes)],[
-AC_TRY_COMPILE([#include <sys/socket.h>
+AC_TRY_COMPILE([#include <sys/types.h>
+#include <sys/socket.h>
int accept (int, struct sockaddr *, size_t *);
],[],[
AC_MSG_RESULT(size_t)
AC_CHECK_SIZEOF(long long)
AC_CHECK_SIZEOF(void *)
+dnl Cygwin from 1003022 has intptr_t, uintptr_t in <cygwin/types.h>
+case $opsys in
+ cygwin* ) AC_EGREP_HEADER([typedef.*intptr_t;], [cygwin/types.h],
+ [AC_MSG_RESULT(yes)
+ AC_DEFINE(INTPTR_T_IN_CYGWIN_TYPES_H,1)],
+ [AC_MSG_RESULT(no)]) ;;
+esac
+
dnl check for long file names
AC_SYS_LONG_FILE_NAMES
dnl Link with "-z ignore" on Solaris if supported
if test "$opsys" = "sol2"; then
- if test "$os_release" -ge 56; then
+ if test "$os_release" -ge 506; then
AC_MSG_CHECKING(for \"-z ignore\" linker flag)
case "`ld -h 2>&1`" in
*-z\ ignore\|record* ) AC_MSG_RESULT(yes)
fi
fi
-dnl GNU ld now defaults to combreloc, which screws up unexec, but not pdump.
-dnl Note that it's OK if the GNU style long option causes non-GNU ld to barf
-dnl a usage message, that's often good enough. Please report it, though.
-dnl #### Should make this Solaris-friendly.
-dnl Link with -z nocombreloc for now.
-if test "$pdump" != "yes"; then
- AC_MSG_CHECKING(for \"-z nocombreloc\" linker flag)
- case "`ld --help 2>&1`" in
- *-z\ nocombreloc* ) AC_MSG_RESULT(yes)
- XE_PREPEND(-z nocombreloc, ld_switch_site) ;;
- *) AC_MSG_RESULT(no) ;;
- esac
-fi
-
dnl ----------------------
dnl Choose a window system
dnl ----------------------
possible_version=`${possible} --version 2> /dev/null`
if test "x${possible_version}" != "x"; then
GTK_CONFIG="${possible}"
+ case "${possible_version}" in
+ 1.0.*) AC_MSG_WARN([GTK 1.2 is required, please upgrade your version of GTK.]); with_gtk=no;;
+ 1.3.*) AC_MSG_WARN([GTK 1.3 is not supported right now]); with_gtk=no;;
+ 1.2.*)
+ with_gtk=yes
+ break
+ ;;
+ *) AC_MSG_WARN([Found unsupported version of GTK: $possible_version]);;
+ esac
fi
- case "${possible_version}" in
- 1.0.*) AC_MSG_WARN([GTK 1.2 is required, please upgrade your version of GTK.]); with_gtk=no;;
- 1.3.*) AC_MSG_WARN([GTK 1.3 is not supported right now]); with_gtk=no;;
- 1.2.*)
- with_gtk=yes
- break
- ;;
- *) AC_MSG_WARN([Found unsupported version of GTK: $possible_version]);;
- esac
done
AC_MSG_RESULT([${GTK_CONFIG}])
fi
if test "$x_libraries" = "NONE"; then
for dir in "/usr/X11/lib" "/usr/X11R6/lib" "/usr/lib/X11R6"; do
- if test -r "$dir/libX11.a"; then x_libraries="$dir"; break; fi
+ if test -r "$dir/libX11.a" -o -r "$dir/libX11.dylib"; then x_libraries="$dir"; break; fi
done
fi
XE_APPEND(lwlib, MAKE_SUBDIR)
XE_APPEND(lwlib, SRC_SUBDIR_DEPS)
- dnl Try to find Motif/CDE/Tooltalk dirs
- dnl These take precedence over other X libs/includes, so PRE-pend
- for lib_dir in "/usr/dt/lib" "/usr/lib/Motif2.1" "/usr/lib/Motif1.2" "/usr/lib/Motif1.1"; do
- inc_dir=`echo $lib_dir | sed -e 's/lib/include/'`
- if test -d "$lib_dir" -a -d "$inc_dir"; then
- case "$x_libraries" in *"$lib_dir"* ) ;; *)
- x_libraries="$lib_dir $x_libraries"
- XE_PREPEND(-L${lib_dir}, X_LIBS) ;;
- esac
- case "$x_includes" in "$inc_dir"* ) ;; *)
- x_includes="$inc_dir $x_includes"
- XE_PREPEND(-I${inc_dir}, X_CFLAGS) ;;
- esac
- break; dnl only need ONE Motif implementation!
- fi
- done
+
+ dnl Look for Motif, but only if not found in $x_includes and $x_libraries
+ AC_CHECK_HEADER(Xm/Xm.h, [AC_CHECK_LIB(Xm, XmStringFree, got_motif=yes)])
+
+ if test "$got_motif" != "yes"; then
+ dnl Try to find Motif/CDE/Tooltalk dirs
+ dnl These take precedence over other X libs/includes, so PRE-pend
+ for lib_dir in "/usr/dt/lib" "/usr/lib/Motif2.1" \
+ "/usr/lib/Motif1.2" "/usr/lib/Motif1.1"; do
+ inc_dir=`echo $lib_dir | sed -e 's/lib/include/'`
+ if test -d "$lib_dir" -a -d "$inc_dir"; then
+ case "$x_libraries" in *"$lib_dir"* ) ;; *)
+ x_libraries="$lib_dir $x_libraries"
+ XE_PREPEND(-L${lib_dir}, X_LIBS) ;;
+ esac
+ case "$x_includes" in "$inc_dir"* ) ;; *)
+ x_includes="$inc_dir $x_includes"
+ XE_PREPEND(-I${inc_dir}, X_CFLAGS) ;;
+ esac
+ break; dnl only need ONE Motif implementation!
+ fi
+ done
+ fi
dnl Contrib X libs/includes do NOT take precedence, so AP-pend
for rel in "X11R6" "X11R5" "X11R4"; do
esac
fi
- AC_CHECK_FUNCS(XConvertCase)
+ AC_CHECK_FUNCS(XConvertCase XtRegisterDrawable)
AC_CHECK_HEADERS(X11/Xlocale.h)
if test "$unexec" = "unexaix.o" -a "$x11_release" = "6"; then
dnl X11R6 requires thread-safe code on AIX for some reason
if test "$GCC" = "yes"; then
- XE_PREPEND(-mthreads, X_CFLAGS)
- XE_PREPEND(-mthreads, libs_x)
+ dnl gcc changed the name of the `-mthreads' option to `-pthread'
+ dnl on 2000-06-12
+ AC_MSG_CHECKING(for name of AIX gcc threads option)
+ case `$CC -v --help 2>&1` in
+ *-mthreads*) aix_threads=-mthreads ;;
+ *) aix_threads=-pthread ;;
+ esac
+ AC_MSG_RESULT($aix_threads)
+ XE_PREPEND($aix_threads, X_CFLAGS)
+ XE_PREPEND($aix_threads, libs_x)
else
- case "$CC" in
- "xlc" ) CC="xlc_r" ;;
- "xlC" ) CC="xlC_r" ;;
- "cc" ) CC="cc_r" ;;
+ dnl Try to use the thread-safe "_r" versions of xlc
+ case "$CC" in *_r) : ;;
+ *)
+ xe_save_CC="$CC"
+ CC="${CC}_r"
+ AC_CHECK_SIZEOF(short)
+ test "$ac_cv_sizeof_short" = 0 && CC="$xe_save_CC" ;;
esac
fi
fi
XE_APPEND(netinstall, INSTALL_ARCH_DEP_SUBDIR)
fi
- install_pp="$blddir/lib-src/installexe.sh"
- XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lwinspool, libs_system)
+ install_pp="$srcdir/lib-src/installexe.sh"
+ XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lkernel32 -lwinspool, libs_system)
test "$with_dragndrop" != no && XE_APPEND(msw, dragndrop_proto)
if test "$window_system" != x11; then
window_system=msw
AC_CHECKING(for LDAP)
test -z "$with_ldap" && { AC_CHECK_HEADER(ldap.h, ,with_ldap=no) }
test -z "$with_ldap" && { AC_CHECK_HEADER(lber.h, ,with_ldap=no) }
-if test "$with_ldap" != "no"; then
- AC_CHECK_LIB(ldap, ldap_search, with_ldap_nolber=yes, with_ldap_nolber=no)
- test "$with_ldap_nolber" = "no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_lber=yes, with_ldap_lber=no, -llber) }
- test "$with_ldap_nolber" = "no" -a "$with_ldap_lber" = "no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_krb=yes, with_ldap_krb=no, -llber -lkrb) }
- test "$with_ldap_nolber" = "no" -a "$with_ldap_lber" = "no" -a "$with_ldap_krb" = "no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_krbdes=yes, with_ldap_krbdes=no, -llber -lkrb -ldes) }
- test -z "$with_ldap" -a \( "$with_ldap_lber" = "yes" -o "$with_ldap_nolber" = "yes" -o "$with_ldap_krb" = "yes" -o "$with_ldap_krbdes" = "yes" \) && with_ldap=yes
+if test no != "$with_ldap";then
+ if test . != "${ldap_libs+.}";then
+ ldap_libs=
+ AC_CHECK_FUNC(ldap_open,dnl Allow it to be in generic "$LIBS"
+ [with_ldap=yes
+ test yes = "$extra_verbose" &&
+ echo "Setting ldap_libs to $ldap_libs"],dnl
+ [AC_CHECK_LIB(ldap, ldap_open,dnl
+ [with_ldap=yes],dnl
+dnl If logic of setting these vars change, change it the same way below.
+ [ldap_needs_lber=yes ldap_other_libs=-llber
+dnl This requires `AC_CACHE_VAL' (which is called by `AC_CHECK_LIB')
+dnl to be redefined to ignore cached (shell variable) value, as it is
+dnl done above, because the same variable is used in all
+dnl `AC_CHECK_LIB' expansions in macro invocation below. Worse, if it
+dnl is not done, there is no portable way to compensate for this
+dnl locally since `unset' command is not supported by all shells. The
+dnl other solution would be changing `AC_CHECK_LIB' so that cache
+dnl variable name depends on the macro OTHER-LIBRARIES argument.
+ AC_CHECK_LIB(ldap, ldap_open,dnl
+ [with_ldap=yes],dnl
+ [ldap_needs_krb=yes ldap_other_libs="$ldap_other_libs -lkrb"
+ AC_CHECK_LIB(ldap, ldap_open,dnl
+ [with_ldap=yes],dnl
+ [ldap_needs_des=yes ldap_other_libs="$ldap_other_libs -ldes"
+ AC_CHECK_LIB(ldap, ldap_open,dnl
+ [with_ldap=yes],dnl
+ [with_ldap=no],dnl
+ $ldap_other_libs)],dnl
+ $ldap_other_libs)],dnl
+ $ldap_other_libs)])
+ if test yes = "$with_ldap" -a yes != "$ldap_needs_lber";then
+dnl Need this check since `LDAP_OPT_ON' is (currently) used only with
+dnl `ldap_set_option', and the latter may not exist at all, for which
+dnl is testing later. So `LDAP_OPT_ON' is not necessarily defined.
+ AC_CACHE_CHECK([for LDAP_OPT_ON definition],xe_cv_have_LDAP_OPT_ON,
+ [AC_TRY_COMPILE(
+[#include <lber.h>
+#include <ldap.h>
+#ifdef LDAP_OPT_ON
+/* Relying on const defined by ac_c_const (upper case). */
+const void *const v = LDAP_OPT_ON;
+#else /* !defined (LDAP_OPT_ON) */
+choke me
+#endif /* !defined (LDAP_OPT_ON) */],[],
+ [xe_cv_have_LDAP_OPT_ON=yes],
+ [xe_cv_have_LDAP_OPT_ON=no])])
+ if test yes = "$xe_cv_have_LDAP_OPT_ON";then
+ AC_CACHE_CHECK([LDAP_OPT_ON linking],
+ xe_cv_LDAP_OPT_ON_links,
+ [xe_save_LIBS="$LIBS"
+ LIBS="-lldap $LIBS"
+AC_TRY_LINK(
+[#include <lber.h>
+#include <ldap.h>
+const void *const v = LDAP_OPT_ON;],[],
+ xe_cv_LDAP_OPT_ON_links=yes,
+ xe_cv_LDAP_OPT_ON_links=no)
+ LIBS="$xe_save_LIBS"])
+dnl In some openldap installations other `ldap_*' functions link with
+dnl `-lldap' alone, but `LDAP_OPT_ON' requires `-llber'.
+ if test yes != "$xe_cv_LDAP_OPT_ON_links";then
+ ldap_needs_lber=yes ldap_other_libs=-llber
+ AC_CACHE_CHECK([LDAP_OPT_ON linking with -llber],
+ xe_cv_LDAP_OPT_ON_links_w_lber,
+ [xe_save_LIBS="$LIBS"
+ LIBS="-lldap $ldap_other_libs $LIBS"
+AC_TRY_LINK(
+[#include <lber.h>
+#include <ldap.h>
+const void *const v = LDAP_OPT_ON;],[],
+ xe_cv_LDAP_OPT_ON_links_w_lber=yes,
+ xe_cv_LDAP_OPT_ON_links_w_lber=no)
+ LIBS="$xe_save_LIBS"])
+ if test yes != "$xe_cv_LDAP_OPT_ON_links_w_lber";then
+ with_ldap=no
+ fi
+ fi
+ fi
+ fi
+ if test yes = "$with_ldap";then
+ if test yes = "$ldap_needs_des";then
+ XE_PREPEND(-ldes, ldap_libs)
+ fi
+ if test yes = "$ldap_needs_krb";then
+ XE_PREPEND(-lkrb, ldap_libs)
+ fi
+ if test yes = "$ldap_needs_lber";then
+ XE_PREPEND(-llber, ldap_libs)
+ fi
+ XE_PREPEND(-lldap, ldap_libs)
+ fi])
+ else
+dnl Allow builder to override "$ldap_libs".
+ save_LIBS="$LIBS" LIBS="$ldap_libs $LIBS"
+ AC_CHECK_FUNC(ldap_open,dnl
+ [with_ldap=yes
+ test yes = "$extra_verbose" &&
+ echo "Setting ldap_libs to $ldap_libs"],dnl
+ [with_ldap=no])
+ LIBS="$save_LIBS"
+ fi
fi
if test "$with_ldap" = "yes"; then
AC_DEFINE(HAVE_LDAP)
XE_ADD_OBJS(eldap.o)
- if test "$with_ldap_nolber" = "yes" ; then
- XE_PREPEND(-lldap, LIBS)
- else
- if test "$with_ldap_krb" = "yes" ; then
- XE_PREPEND(-lkrb, LIBS)
- fi
- if test "$with_ldap_krbdes" = "yes" ; then
- XE_PREPEND(-ldes, LIBS)
- XE_PREPEND(-lkrb, LIBS)
- fi
- XE_PREPEND(-llber, LIBS)
- XE_PREPEND(-lldap, LIBS)
- fi
+ LIBS="$ldap_libs $LIBS"
AC_CHECK_FUNCS(ldap_set_option ldap_get_lderrno ldap_result2error ldap_parse_result)
fi
dnl -- should only happen if CYGWIN && WITH_XPM && WITH_MSW && !WITH_X
libpath_xpm=
incpath_xpm=
+ libname_xpm="-lXpm"
case "$opsys" in
cygwin*)
- cygwin_top=`eval "gcc -print-file-name=libc.a"` ;
- cygwin_top=`eval "dirname ${cygwin_top}"`;
- cygwin_top="${cygwin_top}/..";
+ cygwin_top=`eval gcc -print-search-dirs | sed -ne s'/install: //p'`
+ cygwin_top=`eval "cd $cygwin_top/../../../..; pwd"`
case "$window_system" in
dnl use "standard" search pattern
x11) ;;
dnl hardcode "standard" non-X11 xpm lib/inc dirs
msw) libpath_xpm="-L${cygwin_top}/lib/noX"
incpath_xpm="-I${cygwin_top}/include/noX"
+ libname_xpm="-lXpm-noX"
;;
dnl not supported on cygwin (yet?)
gtk) ;;
XE_PREPEND("$incpath_xpm", CFLAGS)
XE_PREPEND("$libpath_xpm", LDFLAGS)
AC_MSG_CHECKING(for Xpm - no older than 3.4f)
- xe_check_libs=-lXpm
+ xe_check_libs="$libname_xpm"
AC_TRY_RUN([#define XPM_NUMBERS
#include <X11/xpm.h>
int main(int c, char **v) {
dnl #### but doesn't actually verify this assumption.
AC_DEFINE(HAVE_XPM)
XE_PREPEND("$libpath_xpm", LDFLAGS)
- XE_PREPEND(-lXpm, libs_x)
+ XE_PREPEND("$libname_xpm", libs_x)
XE_PREPEND("$incpath_xpm", CFLAGS)
AC_MSG_CHECKING(for \"FOR_MSW\" xpm)
- xe_check_libs=-lXpm
+ xe_check_libs="$libname_xpm"
AC_TRY_LINK(, [XpmCreatePixmapFromData()],
[xpm_for_msw=no],
[xpm_for_msw=yes])
AC_CHECKING(for X11 graphics libraries)
fi
-dnl We don't automatically trigger widgets if athena is present
-dnl because of stability concerns.
-dnl But if the user wants widgets, still offer him autodetections
-case "$with_widgets" in
- "yes" | "athena") detect_athena=yes ;;
- *) detect_athena=no ;;
-esac
-
-if test "$with_x11" = "yes" -a "$detect_athena" = "yes" ; then
+if test "$with_x11" = "yes"; then
AC_CHECKING(for the Athena widgets)
dnl What in heck did the user actually want?
*) XE_DIE("Unknown Athena widget set \`$with_athena'. This should not happen.") ;;
esac
+ athena_3d_function=Xaw3dComputeBottomShadowRGB
+
dnl Search for the Athena library...
if test "$athena_3d" = "no"; then
AC_CHECK_LIB($athena_variant, XawScrollbarSetThumb,
[
dnl Must not be a 3d library...
- AC_CHECK_LIB($athena_variant, threeDClassRec,
+ AC_CHECK_LIB($athena_variant, $athena_3d_function,
AC_MSG_WARN("Could not find a non-3d Athena widget library."),
athena_lib=$athena_variant)
],
AC_MSG_WARN("Could not find an Athena widget library."))
else
dnl The real configuration, need 3d library
- AC_CHECK_LIB($athena_variant, threeDClassRec, athena_lib=$athena_variant,
+ AC_CHECK_LIB($athena_variant, $athena_3d_function, athena_lib=$athena_variant,
dnl OK, couldn't find it with a proper name, try the standard Athena lib
dnl If that is 3d, presume the user asked for what they have installed.
- AC_CHECK_LIB(Xaw, threeDClassRec,
+ AC_CHECK_LIB(Xaw, $athena_3d_function,
[
athena_lib=Xaw;
AC_MSG_WARN("Assuming that libXaw is actually $athena_variant.");
else
have_xaw=no
-fi dnl "$with_x11" = "yes" -a "detect_athena" = "yes"
+fi dnl "$with_x11" = "yes"
if test "$with_x11" = "yes"; then
dnl autodetect Motif - but only add to libs_x later (if necessary)
dnl Finish ensuring that we have values for the various toolkit items.
dnl Not all toolkits support all widgets
-dnl if Motif is available we use it for the dialog boxes.
+
+dnl Avoid using Motif :-(
+case "$opsys" in
+ *linux* | cygwin* ) lucid_prefers_motif="no" ;;
+ * ) lucid_prefers_motif="yes" ;;
+esac
case "$with_menubars" in "" | "yes" | "athena" )
with_menubars="lucid" ;;
esac
case "$with_dialogs" in "" | "yes" | "lucid" )
- if test "$have_motif" = "yes"; then with_dialogs="motif"
- elif test "$have_xaw" = "yes"; then with_dialogs="athena"
- else with_dialogs=no
+ if test "$lucid_prefers_motif" = "yes"; then
+ if test "$have_motif" = "yes"; then with_dialogs="motif"
+ elif test "$have_xaw" = "yes"; then with_dialogs="athena"
+ else with_dialogs=no
+ fi
+ else
+ if test "$have_xaw" = "yes"; then with_dialogs="athena"
+ elif test "$have_motif" = "yes"; then with_dialogs="motif"
+ else with_dialogs=no
+ fi
fi ;;
esac
case "$with_scrollbars" in "" | "yes" )
with_scrollbars="lucid" ;;
esac
-case "$with_widgets" in "" | "yes" | "lucid")
- if test "$have_motif" = "yes"; then with_widgets="motif"
- elif test "$have_xaw" = "yes"; then with_widgets="athena"
- else with_widgets=no
- fi ;;
+case "$with_widgets" in
+ "yes" | "lucid")
+ if test "$lucid_prefers_motif" = "yes"; then
+ if test "$have_motif" = "yes"; then with_widgets="motif"
+ elif test "$have_xaw" = "yes"; then with_widgets="athena"
+ else with_widgets=no
+ fi
+ else
+ if test "$have_xaw" = "yes"; then with_widgets="athena"
+ elif test "$have_motif" = "yes"; then with_widgets="motif"
+ else with_widgets=no
+ fi
+ fi ;;
+ "" )
+ with_widgets=no ;;
esac
all_widgets="$with_menubars $with_scrollbars $with_dialogs $with_toolbars $with_widgets"
XE_ADD_OBJS(file-coding.o)
fi
+dnl Autodetect concord
+concord_includes_found=no
+if test "$with_concord" != "no"; then
+ AC_CHECK_HEADER(concord.h, ,with_concord=no)
+fi
+if test "$concord_includes_found" = "no" -a "$with_concord" != "no" -a \
+ -d "/usr/local/concord/include"; then
+ save_c_switch_site="$c_switch_site"
+ c_switch_site="$c_switch_site -I/usr/local/concord/include"
+ AC_CHECK_HEADER(concord.h,concord_includes_found=yes)
+ if test "$concord_includes_found" != "yes"; then
+ c_switch_site="$save_c_switch_site"
+ with_concord="no"
+ fi
+fi
+
+test -z "$with_concord" && with_concord=yes
+if test "$with_concord" = "yes"; then
+ AC_DEFINE(HAVE_CONCORD)
+ XE_PREPEND(-lconcord, libs_x)
+ XE_ADD_OBJS(concord.o)
+fi
+
+test -z "$with_chise" && with_chise=yes
+if test "$with_chise" = "yes"; then
+ with_mule=yes
+ with_utf_2000=yes
+ with_text_coding=yes
+fi
+
if test "$with_mule" = "yes" ; then
AC_CHECKING(for Mule-related features)
AC_DEFINE(MULE)
- AC_DEFINE(FILE_CODING)
- XE_ADD_OBJS(mule.o mule-ccl.o mule-charset.o file-coding.o)
+ dnl Autodetect chise
+ chise_includes_found=no
+ if test "$with_chise" != "no"; then
+ AC_CHECK_HEADER(chise.h, ,with_chise=no)
+ fi
+ if test "$chise_includes_found" = "no" -a "$with_chise" != "no" -a \
+ -d "/usr/local/chise/include"; then
+ save_c_switch_site="$c_switch_site"
+ c_switch_site="$c_switch_site -I/usr/local/chise/include"
+ AC_CHECK_HEADER(chise.h,chise_includes_found=yes)
+ if test "$chise_includes_found" != "yes"; then
+ c_switch_site="$save_c_switch_site"
+ with_chise="no"
+ fi
+ fi
+
+ test -z "$with_chise" && with_chise=yes
+ if test "$with_chise" = "yes"; then
+ AC_DEFINE(HAVE_CHISE)
+ AC_DEFINE(HAVE_LIBCHISE)
+ XE_PREPEND(-lchise, libs_x)
+ fi
+
+ AC_DEFINE(FILE_CODING)
+ XE_ADD_OBJS(mule.o mule-ccl.o mule-charset.o)
+ if test "$with_utf_2000" = "yes" && test "$with_text_coding" = "yes"; then
+ AC_DEFINE(TEXT_CODING)
+ XE_ADD_OBJS(text-coding.o)
+ else
+ XE_ADD_OBJS(file-coding.o)
+ fi
dnl Use -lintl to get internationalized strerror for Mule
AC_CHECK_HEADERS(libintl.h)
AC_CHECK_LIB(intl, strerror)
+ if test "$with_utf_2000" = "yes" ; then
+ AC_DEFINE(CHAR_IS_UCS4)
+ AC_DEFINE(UTF2000)
+ with_wnn=no
+ with_wnn6=no
+ fi
+
AC_CHECKING(for Mule input methods)
dnl Do we have the XmIm* routines? And if so, do we want to use them?
dnl XIM seems to be flaky except on Solaris...
AC_CHECKING(for XIM)
AC_CHECK_LIB(X11, XOpenIM, with_xim=xlib, with_xim=no)
dnl XIM + Lesstif is not (yet?) usable
- if test "$have_motif $have_lesstif" = "yes no"; then
+ dnl Only use Motif if linking Motif anyway, or don't have xlib XIM
+ if test "$need_motif $have_lesstif" = "yes no"; then
+ AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif)
+ elif test "$have_motif $have_lesstif $with_xim" = "yes no no"; then
AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif)
fi ;;
esac
XE_COMPUTE_RUNPATH()
fi
+dnl ----------------------------------------------------------------
+dnl Check for POSIX functions.
+dnl ----------------------------------------------------------------
+
AC_CHECK_FUNCS(cbrt closedir dup2 eaccess fmod fpathconf frexp ftime getaddrinfo gethostname getnameinfo getpagesize gettimeofday getcwd getwd logb lrand48 matherr mkdir mktime perror poll random rename res_init rint rmdir select setitimer setpgid setlocale setsid sigblock sighold sigprocmask snprintf stpcpy strerror tzset ulimit usleep waitpid vsnprintf fsync ftruncate umask)
+dnl getaddrinfo() is borked under hpux11
+if test "$ac_cv_func_getaddrinfo" != "no" ; then
+ case "$opsys" in
+ hpux11* )
+ AC_MSG_WARN([Use of getaddrinfo is disabled for HP-UX 11.XX.])
+ ac_cv_func_getaddrinfo=no
+ ;;
+ esac
+fi
+
dnl ----------------------------------------------------------------
dnl Check for PTY support functions.
dnl ----------------------------------------------------------------
dnl Autodetect Sun native sound from SUNWaudmo package
if test -z "$sound_found" -a -d "/usr/demo/SOUND"; then
- sound_found=yes
- XE_ADD_OBJS(sunplay.o)
- if test -d "/usr/demo/SOUND/include"
- then sound_cflags="-I/usr/demo/SOUND/include"
- else sound_cflags="-I/usr/demo/SOUND"
+ if test -d "/usr/demo/SOUND/include/multimedia"; then
+ sun_sound_cflags="-I/usr/demo/SOUND/include"
+ elif test -d "/usr/demo/SOUND/multimedia"; then
+ sun_sound_cflags="-I/usr/demo/SOUND"
fi
- if test -z "$native_sound_lib" ; then
- if test -r "/usr/demo/SOUND/lib/libaudio.a"
- then native_sound_lib="/usr/demo/SOUND/lib/libaudio.a"
- else native_sound_lib="/usr/demo/SOUND/libaudio.a"
- fi
+
+ if test -n "$native_sound_lib"; then
+ sun_sound_lib="$native_sound_lib"
+ elif test -r "/usr/demo/SOUND/lib/libaudio.a"; then
+ sun_sound_lib="/usr/demo/SOUND/lib/libaudio.a"
+ elif test -r "/usr/demo/SOUND/libaudio.a"; then
+ sun_sound_lib="/usr/demo/SOUND/libaudio.a"
+ fi
+
+ if test -n "$sun_sound_cflags" -a -n "$sun_sound_lib"; then
+ native_sound_lib="$sun_sound_lib"
+ sound_cflags="$sun_sound_cflags"
+ sound_found=yes
+ XE_ADD_OBJS(sunplay.o)
fi
fi
done
fi
else dnl "$have_terminfo" = "no" && "with_ncurses" = "no"
- XE_ADD_OBJS(tparam.o)
+ if test -n "$libs_termcap" -a "$opsys" = "openbsd"; then
+ dnl We need to check if tgoto does not exist in termcap yet
+ dnl because on OpenBSD libtermcap is another name for libcurses
+ dnl which provides the same tgoto as ncurses
+ AC_CHECK_LIB(termcap, tgoto, , XE_ADD_OBJS(tparam.o))
+ else
+ XE_ADD_OBJS(tparam.o)
+ fi
dnl The HP-UX curses library seems to have a badly broken version of select(2)
dnl that makes "poll: interrupted system call" messages to appear and
dnl Emacs subprocesses to hang (e.g. TeX compilation w/ AUCTeX) */
AC_DEFINE_UNQUOTED(CURSES_H_FILE, "${curses_h_file-curses.h}")
AC_DEFINE_UNQUOTED(TERM_H_FILE, "${term_h_file-term.h}")
- dnl Autodetect gpm
- test -z "$with_gpm" && { AC_CHECK_HEADER(gpm.h, , with_gpm=no) }
- test -z "$with_gpm" && { AC_CHECK_LIB(gpm, Gpm_Open, with_gpm=yes, with_gpm=no) }
- if test "$with_gpm" = "yes"; then
- AC_DEFINE(HAVE_GPM)
- XE_ADD_OBJS(gpmevent.o)
- XE_PREPEND(-lgpm, LIBS)
+ dnl General Purpose Mouse (libgpm) support
+ if test "$with_gpm" != "no"; then
+ AC_CHECK_HEADER(gpm.h, [
+ AC_CHECK_LIB(gpm, Gpm_Open, have_gpm=yes)])
+ if test "$have_gpm" = "yes"; then
+ with_gpm=yes
+ AC_DEFINE(HAVE_GPM)
+ XE_ADD_OBJS(gpmevent.o)
+ XE_PREPEND(-lgpm, LIBS)
+ elif test "$with_gpm" = "yes"; then
+ XE_DIE(["GPM requested, but gpm.h or libgpm seems to be missing."])
+ else
+ with_gpm=no
+ fi
fi
else dnl "$with_tty" = "no"
"$with_database_dbm" = "yes" && \
AC_DEFINE(HAVE_DBM)
+dnl Check for u_int*_t typedefs.
+AC_CHECK_TYPE(u_int8_t, uint8_t)
+if test $ac_cv_type_u_int8_t = yes; then
+AC_DEFINE(HAVE_U_INT8_T,1)
+fi
+AC_CHECK_TYPE(u_int16_t, uint16_t)
+if test $ac_cv_type_u_int16_t = yes; then
+AC_DEFINE(HAVE_U_INT16_T,1)
+fi
+AC_CHECK_TYPE(u_int32_t, uint32_t)
+if test $ac_cv_type_u_int32_t = yes; then
+AC_DEFINE(HAVE_U_INT32_T,1)
+fi
+AC_CHECK_TYPE(u_int64_t, uint64_t)
+if test $ac_cv_type_u_int64_t = yes; then
+AC_DEFINE(HAVE_U_INT64_T,1)
+fi
+
dnl Check for Berkeley DB.
if test "$with_database_berkdb" != "no"; then
AC_MSG_CHECKING(for Berkeley db.h)
for header in "db/db.h" "db.h"; do
+ case "$opsys" in
+ *freebsd*)
+ AC_TRY_COMPILE([
+#include <stdlib.h>
+#if !(defined __GLIBC__ && __GLIBC_MINOR__ >= 1)
+#ifdef HAVE_INTTYPES_H
+#define __BIT_TYPES_DEFINED__
+#include <inttypes.h>
+#endif
+#endif
+#include <$header>
+],[], db_h_file="$header"; break)
+ ;;
+ *)
AC_TRY_COMPILE([
#include <stdlib.h>
#if !(defined __GLIBC__ && __GLIBC_MINOR__ >= 1)
#ifdef HAVE_INTTYPES_H
#define __BIT_TYPES_DEFINED__
#include <inttypes.h>
+#if !HAVE_U_INT8_T
typedef uint8_t u_int8_t;
+#endif
+#if !HAVE_U_INT16_T
typedef uint16_t u_int16_t;
+#endif
+#if !HAVE_U_INT32_T
typedef uint32_t u_int32_t;
+#endif
#ifdef WE_DONT_NEED_QUADS
+#if !HAVE_U_INT64_T
typedef uint64_t u_int64_t;
#endif
#endif
#endif
+#endif
#include <$header>
],[], db_h_file="$header"; break)
+ ;;
+ esac
done
if test -z "$db_h_file"
then AC_MSG_RESULT(no); with_database_berkdb=no
!= "no no no"; then
AC_DEFINE(HAVE_DATABASE)
XE_ADD_OBJS(database.o)
+ if test "$with_utf_2000" = "yes" -a "$with_chise" != "yes" ; then
+ AC_DEFINE(HAVE_CHISE)
+ fi
fi
dnl Socks support
if test "$with_msw" = "yes"; then
have_dl=yes;
else
- dnl Find headers and libraries
- AC_CHECK_HEADER(dlfcn.h, [
- AC_MSG_CHECKING([for dlopen in -lc])
- AC_TRY_LINK([#include <dlfcn.h>],dnl
- [dlopen ("", 0);], [ have_dl=yes ], [
- AC_MSG_CHECKING([for dlopen in -ldl])
- ac_save_LIBS="$LIBS"
- LIBS="-ldl $LIBS"
- AC_TRY_LINK([#include <dlfcn.h>],dnl
- [dlopen ("", 0);], [ have_dl=yes ],
- [LIBS="$ac_save_LIBS"])
- ac_save_LIBS=])])
- if test -n "$have_dl"; then
- AC_DEFINE(HAVE_DLOPEN)
- else
- AC_CHECK_LIB(dld, shl_load, [
- libdl=dld have_dl=yes;
- AC_DEFINE(HAVE_SHL_LOAD)], [
- AC_CHECK_LIB(dld, dld_init, [
- libdl=dld have_dl=yes;
- AC_DEFINE(HAVE_DLD_INIT)])])
- fi
+ dnl Check for Darwin
+ case "$opsys" in
+ darwin) have_dl=yes; AC_DEFINE(HAVE_DYLD) ;;
+ *) dnl Find headers and libraries
+ AC_CHECK_HEADER(dlfcn.h, [
+ AC_MSG_CHECKING([for dlopen in -lc])
+ AC_TRY_LINK([#include <dlfcn.h>],dnl
+ [dlopen ("", 0);], [ have_dl=yes ], [
+ AC_MSG_CHECKING([for dlopen in -ldl])
+ ac_save_LIBS="$LIBS"
+ LIBS="-ldl $LIBS"
+ AC_TRY_LINK([#include <dlfcn.h>],dnl
+ [dlopen ("", 0);], [ have_dl=yes ],
+ [LIBS="$ac_save_LIBS"])
+ ac_save_LIBS=])])
+ if test -n "$have_dl"; then
+ AC_DEFINE(HAVE_DLOPEN)
+ else
+ AC_CHECK_LIB(dld, shl_load, [
+ libdl=dld have_dl=yes;
+ AC_DEFINE(HAVE_SHL_LOAD)], [
+ AC_CHECK_LIB(dld, dld_init, [
+ libdl=dld have_dl=yes;
+ AC_DEFINE(HAVE_DLD_INIT)])])
+ fi
+ ;;
+ esac
fi dnl end !MS-Windows
if test -n "$have_dl"; then
dnl have reported incorrect results.
AC_TRY_RUN([int main(int c,char *v[]){return 0;}],[:],[
echo ""
- echo "*** PANIC *** The C compiler can no longer build working executables."
- echo "*** PANIC *** Please examine the tail of config.log for runtime errors."
- echo "*** PANIC *** The most likely reason for this problem is that configure"
- echo "*** PANIC *** links with shared libraries, but those libraries cannot be"
- echo "*** PANIC *** found at run time."
- echo "*** PANIC ***"
- echo "*** PANIC *** On a Linux system, edit /etc/ld.so.conf and re-run ldconfig."
- echo "*** PANIC *** On other systems, try telling configure where to find the"
- echo "*** PANIC *** shared libraries using the --site-runtime-libraries option"
- echo "*** PANIC ***"
- echo "*** PANIC *** Another way to shoot yourself in the foot is to specify"
- echo "*** PANIC *** --with-FEATURE when FEATURE is not actually installed"
- echo "*** PANIC *** on your system. Don't do that."
+ echo "*** PANIC *** configure forgot how to build working executables!"
+ echo ""
+ echo "*** This is most commonly due to an unforeseen environment, causing"
+ echo "*** configure to incorrectly compute the sequence of libraries to link."
+ echo "*** Please examine the tail of config.log for runtime errors."
+ echo "*** Pay special attention to the -l flags, and perhaps -I and -L."
+ echo "*** Often adding or removing explicit options in the configure"
+ echo "*** invocation can work around this kind of problem. If so, please"
+ echo "*** report it as a bug to xemacs-beta@xemacs.org."
+ echo "***"
+ echo "*** Other possible causes are inability to write to the file system"
+ echo "*** (bogus permissions or disk full) or a misconfiguration of the dynamic"
+ echo "*** linker. On Linux, check /etc/ld.conf and rerun ldconfig if"
+ echo "*** necessary. On other systems, try telling configure where to find"
+ echo "*** the shared libraries using the --site-runtime-libraries option."
+ echo "***"
+ echo "*** Another way to shoot yourself in the foot is to specify"
+ echo "*** --with-FEATURE when FEATURE is not actually installed on your"
+ echo "*** system. Don't do that."
exit 1])
dnl Process support
AC_SUBST(CFLAGS)
AC_SUBST(CPPFLAGS)
AC_SUBST(LDFLAGS)
-RECURSIVE_MAKE="\$(MAKE) \$(MFLAGS) CC='\$(CC)' CFLAGS='\$(CFLAGS)' LDFLAGS='\$(LDFLAGS)' CPPFLAGS='\$(CPPFLAGS)'"
-AC_SUBST(RECURSIVE_MAKE)
+RECURSIVE_MAKE_ARGS="\$(MFLAGS) CC='\$(CC)' CFLAGS='\$(CFLAGS)' LDFLAGS='\$(LDFLAGS)' CPPFLAGS='\$(CPPFLAGS)'"
+AC_SUBST(RECURSIVE_MAKE_ARGS)
AC_SUBST(native_sound_lib)
AC_SUBST(sound_cflags)
test "$with_kerberos" = "yes" && AC_DEFINE(KERBEROS)
test "$with_hesiod" = "yes" && AC_DEFINE(HESIOD)
test "$use_union_type" = "yes" && AC_DEFINE(USE_UNION_TYPE)
+test "$use_regex_malloc" = "yes" && AC_DEFINE(REGEX_MALLOC)
test "$pdump" = "yes" && AC_DEFINE(PDUMP)
test "$with_ipv6_cname" = "yes" && AC_DEFINE(IPV6_CANONICALIZE)
fi
echo " Compiler: $CC $CFLAGS"
+dnl Let's save some helpful-for-debugging info like compiler and libc versions..
+dnl First, see if it's gcc - the same check works everyplace...
+case "$CC" in
+ gcc*) echo " Compiler version: `$CC --version | sed 1q`"
+ echo " Compiler specs file: `$CC -v 2>&1 | sed 's/.* \([[^ ]]\)/\1/' | sed 1q`"
+ ;;
+dnl non-gcc machine-specific magic - contributions welcome
+ *) case "$canonical" in
+ *-*-aix* )
+ dnl Yes, it's this ugly for AIX...
+ realcc=`which $CC`
+ dnl Might be a symlink created by replaceCset command
+ if test -L $realcc ; then
+ ccdir=`dirname $realcc`
+ ccprog=`/bin/ls -l $realcc | sed 's/.* \([[^ ]]\)/\1/'`
+ dnl This doesn't handle ../../xlc type stuff, but I've not seen one...
+ case $ccprog in
+ */*) realcc=$ccprog;;
+ *) realcc=$ccdir/$ccprog;;
+ esac
+ fi
+ lpp=`lslpp -wqc $realcc | cut -f2 -d:`
+ if test ! -z "$lpp" ; then
+ lppstr=`lslpp -Lqc $lpp`
+ lpplev=`echo "$lppstr" | cut -f3 -d:`
+ lppdesc=`echo "$lppstr" | cut -f8 -d:`
+ fi
+ if test ! -z "$lpplev" ; then
+ echo " Compiler version: $lpp $lpplev - $lppdesc"
+ else
+ echo " Compiler version: (unknown version)"
+ fi
+ ;;
+
+ *-*-solaris*)
+ ccvers=`$CC -V 2>&1 | sed 1q`
+ if test ! -z "$ccvers" ; then
+ echo " Compiler version: $ccvers"
+ fi
+ ;;
+
+ alpha*-dec-osf*)
+ ccvers=`$CC -V | tr '\n' ' '`
+ if test ! -z "$ccvers" ; then
+ echo " Compiler version: $ccvers"
+ fi
+ ;;
+
+ mips-sgi-irix*)
+ ccvers=`$CC -version`
+ if test ! -z "$ccvers" ; then
+ echo " Compiler version: $ccvers"
+ fi
+ ;;
+
+ dnl Intel C++ Compiler on Linux
+ i[[3-9]]86-pc-linux)
+ ccvers=`$CC -V 2>&1 | sed -n 's@^Intel.*Version @@'p`
+ if test ! -z "$ccvers" ; then
+ echo " Compiler version: $ccvers"
+ fi
+ ;;
+
+ *) echo " Compiler version: $CC on $canonical";;
+ esac
+esac
+
echo " Relocating allocator for buffers: $rel_alloc"
echo " GNU version of malloc: ${GNU_MALLOC}${GNU_MALLOC_reason}"
case "$ld_switch_site" in
- Consider configuring with --pdump." ;;
esac
+dnl Now get the libc version - contributions welcome
+case "$canonical" in
+ *-*-linux*)
+ if test -f /etc/redhat-release ; then
+ echo " libc: `rpm -q glibc`";
+dnl need a Debian and Suse check here...
+ else
+ echo "Need to guess glibc1/2/etc here";
+ fi
+ ;;
+
+ *-*-aix*)
+ echo " libc: bos.rte.libc `lslpp -Lqc bos.rte.libc | cut -f3 -d:`"
+ ;;
+
+ *-*-solaris*)
+ libc=`pkginfo -l SUNWcsl | grep VERSION: | awk '{print $2}'`
+ echo " libc: SUNWcsl $libc"
+
+ ;;
+
+ mips-sgi-irix*)
+ echo " IRIX version: `uname -sRm`'"
+ ;;
+
+
+ alpha*-dec-osf*)
+ dnl Another ugly case
+ (cd /usr/.smdb.;
+ libc=` grep -h libc.so *.inv | awk '$9 == "f" {print $12}' | tr '\n' ','`
+ echo " libc: $libc"
+
+ )
+ ;;
+
+ *) echo " libc: system-provided libc on $canonical" ;;
+esac
+
+
echo "
Window System:"
if test "$with_msw" = "yes"; then
echo " - Handling WM_COMMAND properly."
fi
fi
+if test "$need_motif" = "yes" ; then
+ echo " Compiling in support for Motif."
+ if test "$have_lesstif" = "yes"; then
+ echo " - Using LessTif implementation."
+ fi
+ echo " *WARNING* Many versions of Motif are buggy, requiring workarounds."
+ echo " You are likely to experience slow redisplay."
+ echo " You may need to install vendor patches to Motif."
+ echo " See PROBLEMS for more information."
+fi
if test "$need_athena" = "yes"; then
echo " Compiling in support for the Athena widget set:"
echo " - Athena headers location: $athena_h_path"
echo " - Using PostgreSQL header file: $libpq_fe_h_file"
test "$with_postgresqlv7" = yes && echo " - Using PostgreSQL V7 bindings."
fi
+if test "$with_concord" = yes; then
+ echo " Compiling in support for CONCORD."
+fi
echo "
-Internationalization:"
+Multiscriptization / Multilingualization / Internationalization:"
test "$with_mule" = yes && echo " Compiling in support for Mule (multi-lingual Emacs)."
+test "$with_chise" = yes && echo " Using CHISE (CHaracter Information Service Environment) support."
+test "$with_utf_2000" = yes && echo " Using UTF-2000 (UTF-8) buffer/string representation."
+test "$with_text_coding" = yes && echo " Compiling in support for text coding."
test "$with_file_coding" = yes && echo " Compiling in support for file coding."
test "$with_xim" != no && echo " Compiling in support for XIM (X11R5+ I18N input method)."
test "$with_xim" = motif && echo " - Using Motif to provide XIM support."
test "$with_socks" = yes && echo " Compiling in support for SOCKS."
test "$with_dnet" = yes && echo " Compiling in support for DNET."
test "$with_modules" = "yes" && echo " Compiling in support for dynamic shared object modules."
-test "$use_union_type" = yes && echo " Using the union type for Lisp_Objects."
+if test "$use_union_type" = yes; then
+ echo " WARNING: ---------------------------------------------------------"
+ echo " Using the union type for Lisp_Objects."
+ echo " Union type has been implicated in hard-to-debug runtime crashes."
+ echo " Do NOT use this build of XEmacs for ordinary work. See PROBLEMS."
+ echo " WARNING: ---------------------------------------------------------"
+fi
+if test "$use_regex_malloc" = no; then
+ echo " WARNING: -----------------------------------------------------------"
+ echo " Using alloca to allocate the failure stack."
+ echo " It may be impossible to detect stack exhaustion, and you will crash."
+ echo " Do NOT use this build of XEmacs for ordinary work."
+ echo " WARNING: -----------------------------------------------------------"
+fi
test "$pdump" = yes && echo " Using the new portable dumper."
test "$debug" = yes && echo " Compiling in support for extra debugging code."
test "$usage_tracking" = yes && echo " Compiling in support for active usage tracking (Sun internal)."