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=''
with_xfs | \
with_i18n3 | \
with_mule | \
+ with_utf_2000 | \
+ with_chise | \
+ with_text_coding| \
with_file_coding| \
with_canna | \
with_wnn | \
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.
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])
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
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 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)
XE_APPEND(netinstall, INSTALL_ARCH_DEP_SUBDIR)
fi
- install_pp="$blddir/lib-src/installexe.sh"
+ 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
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* ) 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" )
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
+ 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 ;;
XE_ADD_OBJS(file-coding.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
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
!= "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
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 | head -1`"
+ echo " Compiler specs file: `$CC -v 2>&1 | sed 's/.* \([[^ ]]\)/\1/' | head -1`"
+ ;;
+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 | head -1`
+ 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
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."
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."