From: tomo Date: Mon, 17 May 1999 09:41:48 +0000 (+0000) Subject: XEmacs 21.2.11 X-Git-Tag: r21-2-11~1 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=28a3fa29bc0bd9a124b6e3379e82d62e815c22a2;p=chise%2Fxemacs-chise.git- XEmacs 21.2.11 --- diff --git a/CHANGES-beta b/CHANGES-beta index 2143e05..4e0c83b 100644 --- a/CHANGES-beta +++ b/CHANGES-beta @@ -1,4 +1,14 @@ -*- indented-text -*- +to 21.2 beta11 "Calliope" +-- Dialog box fix from Jan Vroonhof +-- unified mswindows and tty event loops from Andy Piper +-- miscellaneous patches from Gleb Arshinov +-- miscellaneous patches from Charles Waldman and Adrian Aichner +-- Mule dump time files remerged from mule-base package +-- Documentation fixes from Jan Vroonhof +-- 24bit color image fix from Kazuo OISHI +-- various build fixes from Martin Buchholz + to 21.2 beta10 "Boreas" -- package UI fix from Jan Vroonhof -- MS Windows NT process fix from Gleb Arshinov diff --git a/ChangeLog b/ChangeLog index e469aa2..d840e5b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,56 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + +1999-02-16 Andy Piper + + * PROBLEMS: add entries for building under Cygwin. + +1999-02-14 Jan Vroonhof + + * README.packages: Clear up that mule-sumo packages is used _in + addition_ to the normal sumo. + +1999-02-16 Martin Buchholz + + * configure.usage: Move quantify/purify into debug flags section + +1999-02-10 Martin Buchholz + + * configure.in: + - Fixup xfs comments and redundant option checking + + * configure.in: + * INSTALL: + * lisp/paths.el: + - improved automounter tmp directory support. + - support 4 (!) empirically discovered automounter conventions + +1999-02-10 Martin Buchholz + + * lwlib/lwlib.h: + - redo CONST hacking to deal with X11 R4, which was + broken in a previous patch. + +1999-02-10 Martin Buchholz + + * configure.in: + - irix uses -rpath + +1999-02-10 Martin Buchholz + + * configure.in: + - Check for XOpenIM before using xim=xlib + - only use XmIm if $have_motif = yes + +1999-02-10 Martin Buchholz + + * configure.in. Port to BSDI BSD/OS 4.0. + +1999-01-07 Michael Sperber [Mr. Preprocessor] + + * configure.in: Warn if using Motif dialog boxes on AIX 4.3. + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/INSTALL b/INSTALL index 2cef985..88a377f 100644 --- a/INSTALL +++ b/INSTALL @@ -396,16 +396,12 @@ variable gets by default! Make sure you know what kind of value the variable should have. If you don't pay attention to what you are doing, you'll make a mistake. -Things may malfunction if the variable `directory-abbrev-alist' is not set -up to translate "temporary" automounter mount points into the canonical -form. The default value of this variable contains the translation - - ("^/tmp_mnt/" . "/") - -meaning translate "/tmp_mnt/net/FOO" into "/net/FOO", which is appropriate -for the default configuration of the Sun automounter, but which may be -inappropriate for different vendor's automounters, or if you have customized -your mount-point names. +Things may malfunction if the variable `directory-abbrev-alist' is not +set up to translate "temporary" automounter mount points into the +canonical form. XEmacs tries to detect how your automounter is +configured. If you have an unusual automounter configuration that +XEmacs cannot detect, you may need to change the value of +`directory-abbrev-alist'. 5) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs Lisp code you want XEmacs to load before it is dumped out. Use diff --git a/PROBLEMS b/PROBLEMS index 448cc36..127ee47 100644 --- a/PROBLEMS +++ b/PROBLEMS @@ -119,6 +119,10 @@ libz.a in the X11 binary directory. ** AIX *** On AIX 4.3, you must specify --with-dialogs=athena with configure +*** The libXt shipped with AIX 4.3 is broken. This causes xemacs -nw + to fail in various ways. The solution is to build against stock + X11R6. + *** On AIX, you get this compiler error message: Processing include file ./XMenuInt.h @@ -463,6 +467,61 @@ to take advantage of the keyboard map in emacskeys.sco. Note: Much of the above entry is probably not valid for XEmacs 21.0 and later. +** Cygwin +*** In general use etc/check_cygwin_setup.sh to trap environment problems. + +The script etc/check_cygwin_setup.sh will attempt to detect whether +you have a suitable environment for building. This script may not work +correctly if you are using ash instead of bash (see below). + +*** X11 not detected. + +This is usually because xmkmf is not in your path or because you are +using the default cygwin shell. The default cygwin shell (/bin/sh.exe) +is ash which appears to work in most circumstances but has some wierd +failure modes. I recommend replacing sh.exe with bash.exe, this will +mean configure is slower but more reliable. + +*** Subprocesses do not work. + +You do not have "tty" in your CYGWIN32 (for b19) or CYGWIN (for b20) +environment variable. This must be set in your autoexec.bat (win95) or +the system properties (winnt) as it must be read before the cygwin dll +initializes. + +*** ^G does not work on hung subprocesses. + +This is a known problem. It can be remedied with cygwin b20 or greater +by defining BROKEN_SIGIO in src/s/cygwin32.h, however this currently +leads to instability in XEmacs. + +*** The XEmacs executable crashes at startup. + +This can be caused by many things. + +If you are running with X11 you need to have cygwin b19 or cygwin +b20.1 or greater, cygwin b20 will not work. + +If you are running with cygwin b19 make sure you are using egcs 1.0.2 +rather than vanilla gcc. XEmacs builds by default with -O3 which does +not work with the gcc that ships with b19. Alternatively use -O2. + +*** The info files will not build. + +makeinfo that ships with cygwin (all versions) is a noop. You need to +obtain makeinfo from somewhere or build it yourself. + +*** I have no graphics. + +You need to obtain the various graphics libraries. Pre-built versions +of these and the X libraries are located on the XEmacs website in +ftp://ftp.xemacs.org/pub/aux/cygwin*. + +*** There are no images in the toolbar buttons. + +You need version 4.71 of commctrl.dll which does not ship with windows +95. You can get this by installing IE 4.0 or downloading it from the +microsoft website. * Problems with running XEmacs diff --git a/README.packages b/README.packages index 2d3f904..014eb00 100644 --- a/README.packages +++ b/README.packages @@ -74,16 +74,16 @@ The Sumo Tarball Those with little time, cheap connections and plenty of disk space can install all packages at once using the sumo tarballs. -Download the files +Download the file -xemacs-sumo-.tar.gz if you have a latin-1 XEmacs. +xemacs-sumo-.tar.gz -or +For an XEmacs compiled with Mule you also need -xemacs-mule-sumo-.tar.gz if you have a MULE XEmacs. +xemacs-mule-sumo-.tar.gz -N.B. There are called 'Sumo Tarballs' for good reason. They are -currently 15MB and 23MB (gzipped) respectively. +N.B. They are called 'Sumo Tarballs' for good reason. They are +currently about 15MB and 2.3MB (gzipped) respectively. Install them by @@ -120,7 +120,7 @@ XEmacs comes with some tools to make the periodic updating and installing easier. It will notice if new packages or versions are available and will fetch them from the ftp site. -Unfortunately this requires that a few packages are alreadyin place. +Unfortunately this requires that a few packages are already in place. You will have to install them by hand as above or use a SUMO tarball. This requirement will hopefully go away in the future. The packages you need are: diff --git a/configure b/configure index 23394a2..6818c5f 100755 --- a/configure +++ b/configure @@ -2,7 +2,7 @@ #### Configuration script for XEmacs. Largely divergent from FSF. #### Guess values for system-dependent variables and create Makefiles. -#### Generated automatically using autoconf version 2.12 +#### Generated automatically using autoconf version 2.13 #### Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. #### Copyright (C) 1993-1995 Board of Trustees, University of Illinois. #### Copyright (C) 1996, 1997 Sun Microsystems, Inc. @@ -199,6 +199,8 @@ ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no +ac_exeext= +ac_objext=o if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then @@ -781,7 +783,7 @@ echo " Use \`$progname --help' to show usage.") >&2 && exit 1 fi echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -echo "configure:785: checking whether ln -s works" >&5 +echo "configure:787: checking whether ln -s works" >&5 rm -f conftestdata if ln -s X conftestdata 2>/dev/null @@ -806,17 +808,26 @@ for dir in lisp etc man info; do fi done + absolute_pwd="`pwd`"; if test -n "$PWD" -a "`cd $PWD && pwd`" = "$absolute_pwd" then blddir="$PWD" -else blddir="$absolute_pwd" +else blddir="$absolute_pwd"; if test -d "/net"; then + if test -d "/tmp_mnt/net"; then tdir="tmp_mnt/net"; else tdir="tmp_mnt"; fi + blddir=`echo "$blddir" | \ + sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` +fi fi case "$srcdir" in /* ) ;; . ) srcdir="$blddir" ;; - * ) srcdir="`cd $srcdir && pwd`" ;; + * ) srcdir="`cd $srcdir && pwd`"; if test -d "/net"; then + if test -d "/tmp_mnt/net"; then tdir="tmp_mnt/net"; else tdir="tmp_mnt"; fi + srcdir=`echo "$srcdir" | \ + sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` +fi ;; esac if test `pwd` != `sh -c cd $srcdir && pwd` \ @@ -997,7 +1008,7 @@ EOF echo $ac_n "checking "host system type"""... $ac_c" 1>&6 -echo "configure:1001: checking "host system type"" >&5 +echo "configure:1012: checking "host system type"" >&5 internal_configuration=`echo $configuration | sed 's/-\(workshop\)//'` canonical=`${CONFIG_SHELL-/bin/sh} $srcdir/config.sub "$internal_configuration"` configuration=`echo "$configuration" | sed 's/^\([^-][^-]*-[^-][^-]*-[^-][^-]*\)-.*$/\1/'` @@ -1370,6 +1381,7 @@ EOF *-xenix* ) opsys=xenix ;; *-sco3.2v4* ) opsys=sco4 NON_GNU_CPP=/lib/cpp ;; *-bsd386* | *-bsdi1* ) opsys=bsd386 ;; + *-bsdi4* ) opsys=bsdos4 ;; *-bsdi3* ) opsys=bsdos3 ;; *-bsdi2.1* ) opsys=bsdos2-1 ;; *-bsdi2* ) opsys=bsdos2 ;; @@ -1486,13 +1498,14 @@ xe_save_CFLAGS="$CFLAGS" # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1490: checking for $ac_word" >&5 +echo "configure:1502: checking for $ac_word" >&5 if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_CC="gcc" @@ -1512,14 +1525,15 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1516: checking for $ac_word" >&5 +echo "configure:1529: checking for $ac_word" >&5 if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ac_prog_rejected=no - for ac_dir in $PATH; do + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then @@ -1553,11 +1567,42 @@ else echo "$ac_t""no" 1>&6 fi + if test -z "$CC"; then + case "`uname -s`" in + *win32* | *WIN32*) + # Extract the first word of "cl", so it can be a program name with args. +set dummy cl; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1577: checking for $ac_word" >&5 + +if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="cl" + break + fi + done + IFS="$ac_save_ifs" +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + fi test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1561: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:1606: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' @@ -1568,12 +1613,14 @@ ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no -cat > conftest.$ac_ext < conftest.$ac_ext << EOF + +#line 1619 "configure" #include "confdefs.h" + main(){return(0);} EOF -if { (eval echo configure:1577: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1624: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1587,25 +1634,33 @@ else ac_cv_prog_cc_works=no fi rm -fr conftest* +ac_ext=c +xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' +xe_ldflags='$LDFLAGS $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_x_site $ld_switch_run' +xe_libs='$ld_call_shared $xe_check_libs $X_EXTRA_LIBS $libs_x $X_PRE_LIBS $LIBS $libs_machine $libs_system $libs_standard' +ac_cpp='$CPP '"$xe_cppflags" +ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' +cross_compiling=no echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1597: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1652: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1602: checking whether we are using GNU C" >&5 +echo "configure:1657: checking whether we are using GNU C" >&5 cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1664: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1615,11 +1670,15 @@ echo "$ac_t""$ac_cv_prog_gcc" 1>&6 if test $ac_cv_prog_gcc = yes; then GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1623: checking whether ${CC-cc} accepts -g" >&5 +else + GCC= +fi + +ac_test_CFLAGS="${CFLAGS+set}" +ac_save_CFLAGS="$CFLAGS" +CFLAGS= +echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:1682: checking whether ${CC-cc} accepts -g" >&5 echo 'void f(){}' > conftest.c if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then @@ -1631,16 +1690,20 @@ rm -f conftest* echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then +if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then CFLAGS="-g -O2" else - CFLAGS="-O2" + CFLAGS="-g" fi else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi fi if test "$with_gcc" = "no" -a "$GCC" = "yes"; then @@ -1648,13 +1711,14 @@ if test "$with_gcc" = "no" -a "$GCC" = "yes"; then # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1652: checking for $ac_word" >&5 +echo "configure:1715: checking for $ac_word" >&5 if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_CC="gcc" @@ -1674,14 +1738,15 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1678: checking for $ac_word" >&5 +echo "configure:1742: checking for $ac_word" >&5 if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ac_prog_rejected=no - for ac_dir in $PATH; do + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then @@ -1715,11 +1780,42 @@ else echo "$ac_t""no" 1>&6 fi + if test -z "$CC"; then + case "`uname -s`" in + *win32* | *WIN32*) + # Extract the first word of "cl", so it can be a program name with args. +set dummy cl; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1790: checking for $ac_word" >&5 + +if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="cl" + break + fi + done + IFS="$ac_save_ifs" +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + fi test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1723: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:1819: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' @@ -1730,12 +1826,14 @@ ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no -cat > conftest.$ac_ext < conftest.$ac_ext << EOF + +#line 1832 "configure" #include "confdefs.h" + main(){return(0);} EOF -if { (eval echo configure:1739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1837: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1749,25 +1847,33 @@ else ac_cv_prog_cc_works=no fi rm -fr conftest* +ac_ext=c +xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' +xe_ldflags='$LDFLAGS $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_x_site $ld_switch_run' +xe_libs='$ld_call_shared $xe_check_libs $X_EXTRA_LIBS $libs_x $X_PRE_LIBS $LIBS $libs_machine $libs_system $libs_standard' +ac_cpp='$CPP '"$xe_cppflags" +ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' +cross_compiling=no echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1759: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1865: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1764: checking whether we are using GNU C" >&5 +echo "configure:1870: checking whether we are using GNU C" >&5 cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1877: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1777,11 +1883,15 @@ echo "$ac_t""$ac_cv_prog_gcc" 1>&6 if test $ac_cv_prog_gcc = yes; then GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1785: checking whether ${CC-cc} accepts -g" >&5 +else + GCC= +fi + +ac_test_CFLAGS="${CFLAGS+set}" +ac_save_CFLAGS="$CFLAGS" +CFLAGS= +echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:1895: checking whether ${CC-cc} accepts -g" >&5 echo 'void f(){}' > conftest.c if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then @@ -1793,16 +1903,20 @@ rm -f conftest* echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then +if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then CFLAGS="-g -O2" else - CFLAGS="-O2" + CFLAGS="-g" fi else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi fi elif test "$with_gcc" = "yes" -a "$GCC" != "yes" ; then @@ -1810,13 +1924,14 @@ elif test "$with_gcc" = "yes" -a "$GCC" != "yes" ; then # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1814: checking for $ac_word" >&5 +echo "configure:1928: checking for $ac_word" >&5 if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_CC="gcc" @@ -1836,14 +1951,15 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1840: checking for $ac_word" >&5 +echo "configure:1955: checking for $ac_word" >&5 if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ac_prog_rejected=no - for ac_dir in $PATH; do + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then @@ -1877,11 +1993,42 @@ else echo "$ac_t""no" 1>&6 fi + if test -z "$CC"; then + case "`uname -s`" in + *win32* | *WIN32*) + # Extract the first word of "cl", so it can be a program name with args. +set dummy cl; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2003: checking for $ac_word" >&5 + +if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="cl" + break + fi + done + IFS="$ac_save_ifs" +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + ;; + esac + fi test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1885: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:2032: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' @@ -1892,12 +2039,14 @@ ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no -cat > conftest.$ac_ext < conftest.$ac_ext << EOF + +#line 2045 "configure" #include "confdefs.h" + main(){return(0);} EOF -if { (eval echo configure:1901: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2050: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1911,25 +2060,33 @@ else ac_cv_prog_cc_works=no fi rm -fr conftest* +ac_ext=c +xe_cppflags='$CPPFLAGS $c_switch_site $c_switch_machine $c_switch_system $c_switch_x_site $X_CFLAGS' +xe_ldflags='$LDFLAGS $ld_switch_site $ld_switch_machine $ld_switch_system $ld_switch_x_site $ld_switch_run' +xe_libs='$ld_call_shared $xe_check_libs $X_EXTRA_LIBS $libs_x $X_PRE_LIBS $LIBS $libs_machine $libs_system $libs_standard' +ac_cpp='$CPP '"$xe_cppflags" +ac_compile='${CC-cc} -c $CFLAGS '"$xe_cppflags"' conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' +cross_compiling=no echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1921: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:2078: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1926: checking whether we are using GNU C" >&5 +echo "configure:2083: checking whether we are using GNU C" >&5 cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2090: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1939,11 +2096,15 @@ echo "$ac_t""$ac_cv_prog_gcc" 1>&6 if test $ac_cv_prog_gcc = yes; then GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1947: checking whether ${CC-cc} accepts -g" >&5 +else + GCC= +fi + +ac_test_CFLAGS="${CFLAGS+set}" +ac_save_CFLAGS="$CFLAGS" +CFLAGS= +echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:2108: checking whether ${CC-cc} accepts -g" >&5 echo 'void f(){}' > conftest.c if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then @@ -1955,16 +2116,20 @@ rm -f conftest* echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then +if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then CFLAGS="-g -O2" else - CFLAGS="-O2" + CFLAGS="-g" fi else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi fi fi @@ -1976,7 +2141,7 @@ test -n "$CPP" -a -d "$CPP" && CPP= test -n "$NON_GNU_CPP" -a "$GCC" != "yes" -a -z "$CPP" && CPP="$NON_GNU_CPP" echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1980: checking how to run the C preprocessor" >&5 +echo "configure:2145: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1989,14 +2154,14 @@ if test -z "$CPP"; then # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1999: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:2164: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : else @@ -2006,14 +2171,31 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:2181: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP="${CC-cc} -nologo -E" + cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2016: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:2198: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : else @@ -2026,6 +2208,8 @@ fi rm -f conftest* fi rm -f conftest* +fi +rm -f conftest* ac_cv_prog_CPP="$CPP" CPP="$ac_cv_prog_CPP" else @@ -2035,9 +2219,9 @@ echo "$ac_t""$CPP" 1>&6 echo $ac_n "checking for AIX""... $ac_c" 1>&6 -echo "configure:2039: checking for AIX" >&5 +echo "configure:2223: checking for AIX" >&5 cat > conftest.$ac_ext <&6 -echo "configure:2068: checking for GNU libc" >&5 +echo "configure:2252: checking for GNU libc" >&5 cat > conftest.$ac_ext < int main() { @@ -2078,7 +2262,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2082: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2266: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* have_glibc=yes else @@ -2100,7 +2284,7 @@ EOF cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:2300: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then : else @@ -2380,7 +2564,7 @@ test -n "$unexec" && extra_objs="$extra_objs $unexec" && if test "$ext fi echo $ac_n "checking for dynodump""... $ac_c" 1>&6 -echo "configure:2384: checking for dynodump" >&5 +echo "configure:2568: checking for dynodump" >&5 if test "$unexec" != "unexsol2.o"; then echo "$ac_t""no" 1>&6 else @@ -2418,12 +2602,12 @@ if test "$unexec" = "unexaix.o"; then done echo $ac_n "checking for terminateAndUnload in -lC""... $ac_c" 1>&6 -echo "configure:2422: checking for terminateAndUnload in -lC" >&5 +echo "configure:2606: checking for terminateAndUnload in -lC" >&5 ac_lib_var=`echo C'_'terminateAndUnload | sed 'y%./+-%__p_%'` xe_check_libs=" -lC " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2538,10 +2722,10 @@ fi if test "$add_runtime_path" = "yes"; then echo $ac_n "checking "for runtime libraries flag"""... $ac_c" 1>&6 -echo "configure:2542: checking "for runtime libraries flag"" >&5 +echo "configure:2726: checking "for runtime libraries flag"" >&5 case "$opsys" in sol2 ) dash_r="-R" ;; - decosf* | linux* ) dash_r="-rpath " ;; + decosf* | linux* | irix*) dash_r="-rpath " ;; *) dash_r="" for try_dash_r in "-R" "-R " "-rpath "; do @@ -2560,14 +2744,14 @@ if test "$GCC" = "yes"; then done fi cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2755: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* dash_r="$try_dash_r" else @@ -2669,10 +2853,10 @@ else fi after_morecore_hook_exists=yes echo $ac_n "checking for malloc_get_state""... $ac_c" 1>&6 -echo "configure:2673: checking for malloc_get_state" >&5 +echo "configure:2857: checking for malloc_get_state" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc_get_state=yes" else @@ -2715,10 +2899,10 @@ doug_lea_malloc=no fi echo $ac_n "checking for malloc_set_state""... $ac_c" 1>&6 -echo "configure:2719: checking for malloc_set_state" >&5 +echo "configure:2903: checking for malloc_set_state" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc_set_state=yes" else @@ -2761,16 +2945,16 @@ doug_lea_malloc=no fi echo $ac_n "checking whether __after_morecore_hook exists""... $ac_c" 1>&6 -echo "configure:2765: checking whether __after_morecore_hook exists" >&5 +echo "configure:2949: checking whether __after_morecore_hook exists" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2958: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""yes" 1>&6 else @@ -2829,13 +3013,14 @@ fi # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2833: checking for $ac_word" >&5 +echo "configure:3017: checking for $ac_word" >&5 if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_RANLIB="ranlib" @@ -2878,26 +3063,28 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:2886: checking for a BSD compatible install" >&5 +echo "configure:3072: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then - IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="${IFS}:" + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" for ac_dir in $PATH; do # Account for people who put trailing slashes in PATH elements. case "$ac_dir/" in /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. - for ac_prog in ginstall installbsd scoinst install; do + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do if test -f $ac_dir/$ac_prog; then if test $ac_prog = install && grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. - # OSF/1 installbsd also uses dspmsg, but is usable. : else ac_cv_path_install="$ac_dir/$ac_prog -c" @@ -2926,6 +3113,8 @@ echo "$ac_t""$INSTALL" 1>&6 # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' + test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' for ac_prog in 'bison -y' byacc @@ -2933,13 +3122,14 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2937: checking for $ac_word" >&5 +echo "configure:3126: checking for $ac_word" >&5 if test -n "$YACC"; then ac_cv_prog_YACC="$YACC" # Let the user override the test. else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then ac_cv_prog_YACC="$ac_prog" @@ -2964,16 +3154,16 @@ for ac_hdr in mach/mach.h sys/stropts.h sys/timeb.h sys/time.h unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2968: checking for $ac_hdr" >&5 +echo "configure:3158: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2976: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:3166: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -3005,16 +3195,16 @@ for ac_hdr in utime.h locale.h libgen.h fcntl.h ulimit.h cygwin/version.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3009: checking for $ac_hdr" >&5 +echo "configure:3199: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3017: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:3207: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -3046,16 +3236,16 @@ for ac_hdr in kstat.h sys/pstat.h inttypes.h sys/un.h a.out.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3050: checking for $ac_hdr" >&5 +echo "configure:3240: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3058: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:3248: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -3084,10 +3274,10 @@ fi done echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6 -echo "configure:3088: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo "configure:3278: checking for sys/wait.h that is POSIX.1 compatible" >&5 cat > conftest.$ac_ext < #include @@ -3103,7 +3293,7 @@ wait (&s); s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; ; return 0; } EOF -if { (eval echo configure:3107: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3297: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_sys_wait_h=yes else @@ -3127,10 +3317,10 @@ EOF fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:3131: checking for ANSI C header files" >&5 +echo "configure:3321: checking for ANSI C header files" >&5 cat > conftest.$ac_ext < #include @@ -3138,8 +3328,8 @@ cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3142: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:3332: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* ac_cv_header_stdc=yes @@ -3155,7 +3345,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -3173,7 +3363,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -3191,7 +3381,7 @@ fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -3202,7 +3392,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:3206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:3396: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then : else @@ -3228,10 +3418,10 @@ EOF fi echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:3232: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:3422: checking whether time.h and sys/time.h may both be included" >&5 cat > conftest.$ac_ext < #include @@ -3240,7 +3430,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:3244: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3434: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -3264,10 +3454,10 @@ EOF fi echo $ac_n "checking for sys_siglist declaration in signal.h or unistd.h""... $ac_c" 1>&6 -echo "configure:3268: checking for sys_siglist declaration in signal.h or unistd.h" >&5 +echo "configure:3458: checking for sys_siglist declaration in signal.h or unistd.h" >&5 cat > conftest.$ac_ext < #include @@ -3279,7 +3469,7 @@ int main() { char *msg = *(sys_siglist + 1); ; return 0; } EOF -if { (eval echo configure:3283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3473: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_decl_sys_siglist=yes else @@ -3304,9 +3494,9 @@ fi echo $ac_n "checking for struct utimbuf""... $ac_c" 1>&6 -echo "configure:3308: checking for struct utimbuf" >&5 +echo "configure:3498: checking for struct utimbuf" >&5 cat > conftest.$ac_ext < @@ -3325,7 +3515,7 @@ int main() { static struct utimbuf x; x.actime = x.modtime; ; return 0; } EOF -if { (eval echo configure:3329: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3519: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* echo "$ac_t""yes" 1>&6 { test "$extra_verbose" = "yes" && cat << \EOF @@ -3345,10 +3535,10 @@ fi rm -f conftest* echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:3349: checking return type of signal handlers" >&5 +echo "configure:3539: checking return type of signal handlers" >&5 cat > conftest.$ac_ext < #include @@ -3365,7 +3555,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:3369: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3559: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -3387,10 +3577,10 @@ EOF echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:3391: checking for size_t" >&5 +echo "configure:3581: checking for size_t" >&5 cat > conftest.$ac_ext < #if STDC_HEADERS @@ -3399,7 +3589,7 @@ cat > conftest.$ac_ext <&5 | - egrep "size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "(^|[^a-zA-Z_0-9])size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_size_t=yes else @@ -3421,10 +3611,10 @@ EOF fi echo $ac_n "checking for pid_t""... $ac_c" 1>&6 -echo "configure:3425: checking for pid_t" >&5 +echo "configure:3615: checking for pid_t" >&5 cat > conftest.$ac_ext < #if STDC_HEADERS @@ -3433,7 +3623,7 @@ cat > conftest.$ac_ext <&5 | - egrep "pid_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "(^|[^a-zA-Z_0-9])pid_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_pid_t=yes else @@ -3455,10 +3645,10 @@ EOF fi echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6 -echo "configure:3459: checking for uid_t in sys/types.h" >&5 +echo "configure:3649: checking for uid_t in sys/types.h" >&5 cat > conftest.$ac_ext < EOF @@ -3494,10 +3684,10 @@ EOF fi echo $ac_n "checking for mode_t""... $ac_c" 1>&6 -echo "configure:3498: checking for mode_t" >&5 +echo "configure:3688: checking for mode_t" >&5 cat > conftest.$ac_ext < #if STDC_HEADERS @@ -3506,7 +3696,7 @@ cat > conftest.$ac_ext <&5 | - egrep "mode_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "(^|[^a-zA-Z_0-9])mode_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_mode_t=yes else @@ -3528,10 +3718,10 @@ EOF fi echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:3532: checking for off_t" >&5 +echo "configure:3722: checking for off_t" >&5 cat > conftest.$ac_ext < #if STDC_HEADERS @@ -3540,7 +3730,7 @@ cat > conftest.$ac_ext <&5 | - egrep "off_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then + egrep "(^|[^a-zA-Z_0-9])off_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then rm -rf conftest* ac_cv_type_off_t=yes else @@ -3563,9 +3753,9 @@ fi echo $ac_n "checking for struct timeval""... $ac_c" 1>&6 -echo "configure:3567: checking for struct timeval" >&5 +echo "configure:3757: checking for struct timeval" >&5 cat > conftest.$ac_ext < @@ -3581,7 +3771,7 @@ int main() { static struct timeval x; x.tv_sec = x.tv_usec; ; return 0; } EOF -if { (eval echo configure:3585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3775: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* echo "$ac_t""yes" 1>&6 HAVE_TIMEVAL=yes @@ -3603,10 +3793,10 @@ fi rm -f conftest* echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 -echo "configure:3607: checking whether struct tm is in sys/time.h or time.h" >&5 +echo "configure:3797: checking whether struct tm is in sys/time.h or time.h" >&5 cat > conftest.$ac_ext < #include @@ -3614,7 +3804,7 @@ int main() { struct tm *tp; tp->tm_sec; ; return 0; } EOF -if { (eval echo configure:3618: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3808: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h else @@ -3638,10 +3828,10 @@ EOF fi echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6 -echo "configure:3642: checking for tm_zone in struct tm" >&5 +echo "configure:3832: checking for tm_zone in struct tm" >&5 cat > conftest.$ac_ext < #include <$ac_cv_struct_tm> @@ -3649,7 +3839,7 @@ int main() { struct tm tm; tm.tm_zone; ; return 0; } EOF -if { (eval echo configure:3653: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3843: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm_zone=yes else @@ -3672,10 +3862,10 @@ EOF else echo $ac_n "checking for tzname""... $ac_c" 1>&6 -echo "configure:3676: checking for tzname" >&5 +echo "configure:3866: checking for tzname" >&5 cat > conftest.$ac_ext < #ifndef tzname /* For SGI. */ @@ -3685,7 +3875,7 @@ int main() { atoi(*tzname); ; return 0; } EOF -if { (eval echo configure:3689: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:3879: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_var_tzname=yes else @@ -3711,10 +3901,10 @@ fi echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:3715: checking for working const" >&5 +echo "configure:3905: checking for working const" >&5 cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3957: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -3788,7 +3978,7 @@ fi echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:3792: checking whether ${MAKE-make} sets \${MAKE}" >&5 +echo "configure:3982: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` cat > conftestmake <<\EOF @@ -3813,12 +4003,12 @@ fi echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6 -echo "configure:3817: checking whether byte ordering is bigendian" >&5 +echo "configure:4007: checking whether byte ordering is bigendian" >&5 ac_cv_c_bigendian=unknown # See if sys/param.h defines the BYTE_ORDER macro. cat > conftest.$ac_ext < #include @@ -3829,11 +4019,11 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:3833: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4023: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* # It does; now see whether it defined to BIG_ENDIAN or not. cat > conftest.$ac_ext < #include @@ -3844,7 +4034,7 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:3848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4038: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_bigendian=yes else @@ -3861,7 +4051,7 @@ fi rm -f conftest* if test $ac_cv_c_bigendian = unknown; then cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:4068: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_c_bigendian=no else @@ -3901,10 +4091,10 @@ fi echo $ac_n "checking size of short""... $ac_c" 1>&6 -echo "configure:3905: checking size of short" >&5 +echo "configure:4095: checking size of short" >&5 cat > conftest.$ac_ext < main() @@ -3915,7 +4105,7 @@ main() exit(0); } EOF -if { (eval echo configure:3919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:4109: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_sizeof_short=`cat conftestval` else @@ -3943,10 +4133,10 @@ if test "$ac_cv_sizeof_short" = 0; then exit 1 fi echo $ac_n "checking size of int""... $ac_c" 1>&6 -echo "configure:3947: checking size of int" >&5 +echo "configure:4137: checking size of int" >&5 cat > conftest.$ac_ext < main() @@ -3957,7 +4147,7 @@ main() exit(0); } EOF -if { (eval echo configure:3961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:4151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_sizeof_int=`cat conftestval` else @@ -3979,10 +4169,10 @@ EOF echo $ac_n "checking size of long""... $ac_c" 1>&6 -echo "configure:3983: checking size of long" >&5 +echo "configure:4173: checking size of long" >&5 cat > conftest.$ac_ext < main() @@ -3993,7 +4183,7 @@ main() exit(0); } EOF -if { (eval echo configure:3997: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:4187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_sizeof_long=`cat conftestval` else @@ -4015,10 +4205,10 @@ EOF echo $ac_n "checking size of long long""... $ac_c" 1>&6 -echo "configure:4019: checking size of long long" >&5 +echo "configure:4209: checking size of long long" >&5 cat > conftest.$ac_ext < main() @@ -4029,7 +4219,7 @@ main() exit(0); } EOF -if { (eval echo configure:4033: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:4223: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_sizeof_long_long=`cat conftestval` else @@ -4051,10 +4241,10 @@ EOF echo $ac_n "checking size of void *""... $ac_c" 1>&6 -echo "configure:4055: checking size of void *" >&5 +echo "configure:4245: checking size of void *" >&5 cat > conftest.$ac_ext < main() @@ -4065,7 +4255,7 @@ main() exit(0); } EOF -if { (eval echo configure:4069: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:4259: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_sizeof_void_p=`cat conftestval` else @@ -4088,7 +4278,7 @@ EOF echo $ac_n "checking for long file names""... $ac_c" 1>&6 -echo "configure:4092: checking for long file names" >&5 +echo "configure:4282: checking for long file names" >&5 ac_cv_sys_long_file_names=yes # Test for long file names in all the places we know might matter: @@ -4135,12 +4325,12 @@ fi echo $ac_n "checking for sin in -lm""... $ac_c" 1>&6 -echo "configure:4139: checking for sin in -lm" >&5 +echo "configure:4329: checking for sin in -lm" >&5 ac_lib_var=`echo m'_'sin | sed 'y%./+-%__p_%'` xe_check_libs=" -lm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4345: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4193,14 +4383,14 @@ EOF cat > conftest.$ac_ext < int main() { return atanh(1.0) + asinh(1.0) + acosh(1.0); ; return 0; } EOF -if { (eval echo configure:4204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4394: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* { test "$extra_verbose" = "yes" && cat << \EOF Defining HAVE_INVERSE_HYPERBOLIC @@ -4217,7 +4407,7 @@ fi rm -f conftest* echo "checking type of mail spool file locking" 1>&6 -echo "configure:4221: checking type of mail spool file locking" >&5 +echo "configure:4411: checking type of mail spool file locking" >&5 test -z "$mail_locking" -a "$mail_use_flock" = "yes" && mail_locking=flock test -z "$mail_locking" -a "$mail_use_lockf" = "yes" && mail_locking=lockf if test "$mail_locking" = "lockf"; then { test "$extra_verbose" = "yes" && cat << \EOF @@ -4241,12 +4431,12 @@ fi echo $ac_n "checking for kstat_open in -lkstat""... $ac_c" 1>&6 -echo "configure:4245: checking for kstat_open in -lkstat" >&5 +echo "configure:4435: checking for kstat_open in -lkstat" >&5 ac_lib_var=`echo kstat'_'kstat_open | sed 'y%./+-%__p_%'` xe_check_libs=" -lkstat " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4291,12 +4481,12 @@ fi echo $ac_n "checking for kvm_read in -lkvm""... $ac_c" 1>&6 -echo "configure:4295: checking for kvm_read in -lkvm" >&5 +echo "configure:4485: checking for kvm_read in -lkvm" >&5 ac_lib_var=`echo kvm'_'kvm_read | sed 'y%./+-%__p_%'` xe_check_libs=" -lkvm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4501: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4342,12 +4532,12 @@ fi case "$opsys" in decosf*) echo $ac_n "checking for cma_open in -lpthreads""... $ac_c" 1>&6 -echo "configure:4346: checking for cma_open in -lpthreads" >&5 +echo "configure:4536: checking for cma_open in -lpthreads" >&5 ac_lib_var=`echo pthreads'_'cma_open | sed 'y%./+-%__p_%'` xe_check_libs=" -lpthreads " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4394,7 +4584,7 @@ fi esac echo $ac_n "checking whether the -xildoff compiler flag is required""... $ac_c" 1>&6 -echo "configure:4398: checking whether the -xildoff compiler flag is required" >&5 +echo "configure:4588: checking whether the -xildoff compiler flag is required" >&5 if ${CC-cc} '-###' -xildon no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; then if ${CC-cc} '-###' -xildoff no_such_file.c 2>&1 | grep '^[^ ]*/ild ' > /dev/null ; then echo "$ac_t""no" 1>&6; @@ -4405,7 +4595,7 @@ fi if test "$opsys" = "sol2" && test "$OS_RELEASE" -ge 56; then echo $ac_n "checking for \"-z ignore\" linker flag""... $ac_c" 1>&6 -echo "configure:4409: checking for \"-z ignore\" linker flag" >&5 +echo "configure:4599: checking for \"-z ignore\" linker flag" >&5 case "`ld -h 2>&1`" in *-z\ ignore\|record* ) echo "$ac_t""yes" 1>&6 ld_switch_site="-z ignore $ld_switch_site" && if test "$extra_verbose" = "yes"; then echo " Prepending \"-z ignore\" to \$ld_switch_site"; fi ;; @@ -4415,7 +4605,7 @@ fi echo "checking "for specified window system"" 1>&6 -echo "configure:4419: checking "for specified window system"" >&5 +echo "configure:4609: checking "for specified window system"" >&5 if test "$with_x11" != "no"; then test "$x_includes $x_libraries" != "NONE NONE" && \ @@ -4448,7 +4638,7 @@ if test "$with_x11" != "no"; then # Uses ac_ vars as temps to allow command line to override cache and checks. # --without-x overrides everything else, but does not touch the cache. echo $ac_n "checking for X""... $ac_c" 1>&6 -echo "configure:4452: checking for X" >&5 +echo "configure:4642: checking for X" >&5 # Check whether --with-x or --without-x was given. if test "${with_x+set}" = set; then @@ -4508,13 +4698,13 @@ if test "$ac_x_includes" = NO; then # First, try using that file with no special directory specified. cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4517: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:4707: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* # We can compile using X headers with no special include directory. @@ -4582,14 +4772,14 @@ if test "$ac_x_libraries" = NO; then ac_save_LIBS="$LIBS" LIBS="-l$x_direct_test_library $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4783: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* LIBS="$ac_save_LIBS" # We can link X programs with no special library path. @@ -4698,17 +4888,17 @@ else case "`(uname -sr) 2>/dev/null`" in "SunOS 5"*) echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6 -echo "configure:4702: checking whether -R must be followed by a space" >&5 +echo "configure:4892: checking whether -R must be followed by a space" >&5 ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4902: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_R_nospace=yes else @@ -4724,14 +4914,14 @@ rm -f conftest* else LIBS="$ac_xsave_LIBS -R $x_libraries" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_R_space=yes else @@ -4767,12 +4957,12 @@ ac_cv_lib_dnet_dnet_ntoa=no else echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6 -echo "configure:4771: checking for dnet_ntoa in -ldnet" >&5 +echo "configure:4961: checking for dnet_ntoa in -ldnet" >&5 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'` xe_check_libs=" -ldnet " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:4977: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4807,12 +4997,12 @@ fi if test $ac_cv_lib_dnet_dnet_ntoa = no; then echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6 -echo "configure:4811: checking for dnet_ntoa in -ldnet_stub" >&5 +echo "configure:5001: checking for dnet_ntoa in -ldnet_stub" >&5 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'` xe_check_libs=" -ldnet_stub " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4852,10 +5042,10 @@ fi # The nsl library prevents programs from opening the X display # on Irix 5.2, according to dickey@clark.net. echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6 -echo "configure:4856: checking for gethostbyname" >&5 +echo "configure:5046: checking for gethostbyname" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5072: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_gethostbyname=yes" else @@ -4899,12 +5089,12 @@ fi if test $ac_cv_func_gethostbyname = no; then echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6 -echo "configure:4903: checking for gethostbyname in -lnsl" >&5 +echo "configure:5093: checking for gethostbyname in -lnsl" >&5 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'` xe_check_libs=" -lnsl " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5109: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4945,10 +5135,10 @@ fi # -lsocket must be given before -lnsl if both are needed. # We assume that if connect needs -lnsl, so does gethostbyname. echo $ac_n "checking for connect""... $ac_c" 1>&6 -echo "configure:4949: checking for connect" >&5 +echo "configure:5139: checking for connect" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_connect=yes" else @@ -4994,12 +5184,12 @@ fi xe_msg_checking="for connect in -lsocket" test -n "$X_EXTRA_LIBS" && xe_msg_checking="$xe_msg_checking using extra libs $X_EXTRA_LIBS" echo $ac_n "checking "$xe_msg_checking"""... $ac_c" 1>&6 -echo "configure:4998: checking "$xe_msg_checking"" >&5 +echo "configure:5188: checking "$xe_msg_checking"" >&5 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'` xe_check_libs=" -lsocket $X_EXTRA_LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5034,10 +5224,10 @@ fi # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX. echo $ac_n "checking for remove""... $ac_c" 1>&6 -echo "configure:5038: checking for remove" >&5 +echo "configure:5228: checking for remove" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5254: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_remove=yes" else @@ -5081,12 +5271,12 @@ fi if test $ac_cv_func_remove = no; then echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6 -echo "configure:5085: checking for remove in -lposix" >&5 +echo "configure:5275: checking for remove in -lposix" >&5 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'` xe_check_libs=" -lposix " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5291: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5121,10 +5311,10 @@ fi # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. echo $ac_n "checking for shmat""... $ac_c" 1>&6 -echo "configure:5125: checking for shmat" >&5 +echo "configure:5315: checking for shmat" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5341: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_shmat=yes" else @@ -5168,12 +5358,12 @@ fi if test $ac_cv_func_shmat = no; then echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6 -echo "configure:5172: checking for shmat in -lipc" >&5 +echo "configure:5362: checking for shmat in -lipc" >&5 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'` xe_check_libs=" -lipc " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5378: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5217,13 +5407,15 @@ fi # libraries we check for below, so use a different variable. # --interran@uluru.Stanford.EDU, kb@cs.umb.edu. -echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6 -echo "configure:5222: checking for IceConnectionNumber in -lICE" >&5 +xe_msg_checking="for IceConnectionNumber in -lICE" +test -n "$X_EXTRA_LIBS" && xe_msg_checking="$xe_msg_checking using extra libs $X_EXTRA_LIBS" +echo $ac_n "checking "$xe_msg_checking"""... $ac_c" 1>&6 +echo "configure:5414: checking "$xe_msg_checking"" >&5 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'` -xe_check_libs=" -lICE " +xe_check_libs=" -lICE $X_EXTRA_LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5430: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5403,7 +5595,7 @@ EOF echo "checking for X defines extracted by xmkmf" 1>&6 -echo "configure:5407: checking for X defines extracted by xmkmf" >&5 +echo "configure:5599: checking for X defines extracted by xmkmf" >&5 rm -fr conftestdir if mkdir conftestdir; then cd conftestdir @@ -5435,16 +5627,16 @@ EOF ac_safe=`echo "X11/Intrinsic.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for X11/Intrinsic.h""... $ac_c" 1>&6 -echo "configure:5439: checking for X11/Intrinsic.h" >&5 +echo "configure:5631: checking for X11/Intrinsic.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5447: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:5639: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -5467,12 +5659,12 @@ fi echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6 -echo "configure:5471: checking for XOpenDisplay in -lX11" >&5 +echo "configure:5663: checking for XOpenDisplay in -lX11" >&5 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'` xe_check_libs=" -lX11 " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5679: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5508,12 +5700,12 @@ fi xe_msg_checking="for XGetFontProperty in -lX11" test -n "-b i486-linuxaout" && xe_msg_checking="$xe_msg_checking using extra libs -b i486-linuxaout" echo $ac_n "checking "$xe_msg_checking"""... $ac_c" 1>&6 -echo "configure:5512: checking "$xe_msg_checking"" >&5 +echo "configure:5704: checking "$xe_msg_checking"" >&5 ac_lib_var=`echo X11'_'XGetFontProperty | sed 'y%./+-%__p_%'` xe_check_libs=" -lX11 -b i486-linuxaout" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5720: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5551,12 +5743,12 @@ fi echo $ac_n "checking for XShapeSelectInput in -lXext""... $ac_c" 1>&6 -echo "configure:5555: checking for XShapeSelectInput in -lXext" >&5 +echo "configure:5747: checking for XShapeSelectInput in -lXext" >&5 ac_lib_var=`echo Xext'_'XShapeSelectInput | sed 'y%./+-%__p_%'` xe_check_libs=" -lXext " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5763: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5590,12 +5782,12 @@ fi echo $ac_n "checking for XtOpenDisplay in -lXt""... $ac_c" 1>&6 -echo "configure:5594: checking for XtOpenDisplay in -lXt" >&5 +echo "configure:5786: checking for XtOpenDisplay in -lXt" >&5 ac_lib_var=`echo Xt'_'XtOpenDisplay | sed 'y%./+-%__p_%'` xe_check_libs=" -lXt " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5629,14 +5821,14 @@ fi echo $ac_n "checking the version of X11 being used""... $ac_c" 1>&6 -echo "configure:5633: checking the version of X11 being used" >&5 +echo "configure:5825: checking the version of X11 being used" >&5 cat > conftest.$ac_ext < int main(int c, char *v[]) { return c>1 ? XlibSpecificationRelease : 0; } EOF -if { (eval echo configure:5640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:5832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ./conftest foobar; x11_release=$? else @@ -5661,16 +5853,16 @@ EOF do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5665: checking for $ac_hdr" >&5 +echo "configure:5857: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5673: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:5865: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -5700,7 +5892,7 @@ done echo $ac_n "checking for XFree86""... $ac_c" 1>&6 -echo "configure:5704: checking for XFree86" >&5 +echo "configure:5896: checking for XFree86" >&5 if test -d "/usr/X386/include" -o \ -f "/etc/XF86Config" -o \ -f "/etc/X11/XF86Config" -o \ @@ -5720,12 +5912,12 @@ EOF test -z "$with_xmu" && { echo $ac_n "checking for XmuReadBitmapDataFromFile in -lXmu""... $ac_c" 1>&6 -echo "configure:5724: checking for XmuReadBitmapDataFromFile in -lXmu" >&5 +echo "configure:5916: checking for XmuReadBitmapDataFromFile in -lXmu" >&5 ac_lib_var=`echo Xmu'_'XmuReadBitmapDataFromFile | sed 'y%./+-%__p_%'` xe_check_libs=" -lXmu " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5932: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5775,19 +5967,19 @@ EOF echo $ac_n "checking for main in -lXbsd""... $ac_c" 1>&6 -echo "configure:5779: checking for main in -lXbsd" >&5 +echo "configure:5971: checking for main in -lXbsd" >&5 ac_lib_var=`echo Xbsd'_'main | sed 'y%./+-%__p_%'` xe_check_libs=" -lXbsd " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:5983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5824,22 +6016,22 @@ fi fi if test "$with_msw" != "no"; then echo "checking for MS-Windows" 1>&6 -echo "configure:5828: checking for MS-Windows" >&5 +echo "configure:6020: checking for MS-Windows" >&5 echo $ac_n "checking for main in -lgdi32""... $ac_c" 1>&6 -echo "configure:5831: checking for main in -lgdi32" >&5 +echo "configure:6023: checking for main in -lgdi32" >&5 ac_lib_var=`echo gdi32'_'main | sed 'y%./+-%__p_%'` xe_check_libs=" -lgdi32 " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5904,12 +6096,12 @@ EOF fi fi cat > conftest.$ac_ext < int main() { return (open("/dev/windows", O_RDONLY, 0) > 0)? 0 : 1; } EOF -if { (eval echo configure:5913: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:6105: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then { test "$extra_verbose" = "yes" && cat << \EOF Defining HAVE_MSG_SELECT @@ -5964,7 +6156,7 @@ else fi if test "$with_x11" != "yes"; then - for feature in tooltalk cde offix session xim xmu + for feature in tooltalk cde offix session xim xmu do if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then echo "configure: warning: --with-$feature ignored: Not valid without X support" 1>&2 @@ -5987,7 +6179,7 @@ case "$x_libraries" in *X11R4* ) esac echo "checking for session-management option" 1>&6 -echo "configure:5991: checking for session-management option" >&5; +echo "configure:6183: checking for session-management option" >&5; if test "$with_session" != "no"; then { test "$extra_verbose" = "yes" && cat << \EOF Defining HAVE_SESSION @@ -6002,16 +6194,16 @@ fi test -z "$with_xauth" && test "$window_system" = "none" && with_xauth=no test -z "$with_xauth" && { ac_safe=`echo "X11/Xauth.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for X11/Xauth.h""... $ac_c" 1>&6 -echo "configure:6006: checking for X11/Xauth.h" >&5 +echo "configure:6198: checking for X11/Xauth.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6014: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:6206: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6033,12 +6225,12 @@ fi } test -z "$with_xauth" && { echo $ac_n "checking for XauGetAuthByAddr in -lXau""... $ac_c" 1>&6 -echo "configure:6037: checking for XauGetAuthByAddr in -lXau" >&5 +echo "configure:6229: checking for XauGetAuthByAddr in -lXau" >&5 ac_lib_var=`echo Xau'_'XauGetAuthByAddr | sed 'y%./+-%__p_%'` xe_check_libs=" -lXau " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6245: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6094,16 +6286,16 @@ if test "$with_tooltalk" != "no" ; then for dir in "" "Tt/" "desktop/" ; do ac_safe=`echo "${dir}tt_c.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ${dir}tt_c.h""... $ac_c" 1>&6 -echo "configure:6098: checking for ${dir}tt_c.h" >&5 +echo "configure:6290: checking for ${dir}tt_c.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6106: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:6298: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6138,12 +6330,12 @@ if test "$with_tooltalk" != "no" ; then xe_msg_checking="for tt_message_create in -ltt" test -n "$extra_libs" && xe_msg_checking="$xe_msg_checking using extra libs $extra_libs" echo $ac_n "checking "$xe_msg_checking"""... $ac_c" 1>&6 -echo "configure:6142: checking "$xe_msg_checking"" >&5 +echo "configure:6334: checking "$xe_msg_checking"" >&5 ac_lib_var=`echo tt'_'tt_message_create | sed 'y%./+-%__p_%'` xe_check_libs=" -ltt $extra_libs" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6211,16 +6403,16 @@ fi test -z "$with_cde" && { ac_safe=`echo "Dt/Dt.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for Dt/Dt.h""... $ac_c" 1>&6 -echo "configure:6215: checking for Dt/Dt.h" >&5 +echo "configure:6407: checking for Dt/Dt.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6223: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:6415: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6242,12 +6434,12 @@ fi } test -z "$with_cde" && { echo $ac_n "checking for DtDndDragStart in -lDtSvc""... $ac_c" 1>&6 -echo "configure:6246: checking for DtDndDragStart in -lDtSvc" >&5 +echo "configure:6438: checking for DtDndDragStart in -lDtSvc" >&5 ac_lib_var=`echo DtSvc'_'DtDndDragStart | sed 'y%./+-%__p_%'` xe_check_libs=" -lDtSvc " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6454: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6327,7 +6519,7 @@ EOF fi echo $ac_n "checking if drag and drop API is needed""... $ac_c" 1>&6 -echo "configure:6331: checking if drag and drop API is needed" >&5 +echo "configure:6523: checking if drag and drop API is needed" >&5 if test "$with_dragndrop" != "no" ; then if test -n "$dragndrop_proto" ; then with_dragndrop=yes @@ -6348,19 +6540,19 @@ EOF fi echo "checking for LDAP" 1>&6 -echo "configure:6352: checking for LDAP" >&5 +echo "configure:6544: checking for LDAP" >&5 test -z "$with_ldap" && { ac_safe=`echo "ldap.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ldap.h""... $ac_c" 1>&6 -echo "configure:6355: checking for ldap.h" >&5 +echo "configure:6547: checking for ldap.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6363: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:6555: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6382,16 +6574,16 @@ fi } test -z "$with_ldap" && { ac_safe=`echo "lber.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for lber.h""... $ac_c" 1>&6 -echo "configure:6386: checking for lber.h" >&5 +echo "configure:6578: checking for lber.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6394: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:6586: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6416,12 +6608,12 @@ if test "$with_ldap" != "no"; then xe_msg_checking="for ldap_open in -lldap" test -n "-llber" && xe_msg_checking="$xe_msg_checking using extra libs -llber" echo $ac_n "checking "$xe_msg_checking"""... $ac_c" 1>&6 -echo "configure:6420: checking "$xe_msg_checking"" >&5 +echo "configure:6612: checking "$xe_msg_checking"" >&5 ac_lib_var=`echo ldap'_'ldap_open | sed 'y%./+-%__p_%'` xe_check_libs=" -lldap -llber" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6455,12 +6647,12 @@ fi } test "$with_umich_ldap" = "no" && { echo $ac_n "checking for ldap_set_option in -lldap10""... $ac_c" 1>&6 -echo "configure:6459: checking for ldap_set_option in -lldap10" >&5 +echo "configure:6651: checking for ldap_set_option in -lldap10" >&5 ac_lib_var=`echo ldap10'_'ldap_set_option | sed 'y%./+-%__p_%'` xe_check_libs=" -lldap10 " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6667: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6535,15 +6727,15 @@ fi if test "$window_system" != "none"; then echo "checking for graphics libraries" 1>&6 -echo "configure:6539: checking for graphics libraries" >&5 +echo "configure:6731: checking for graphics libraries" >&5 xpm_problem="" if test -z "$with_xpm"; then echo $ac_n "checking for Xpm - no older than 3.4f""... $ac_c" 1>&6 -echo "configure:6544: checking for Xpm - no older than 3.4f" >&5 +echo "configure:6736: checking for Xpm - no older than 3.4f" >&5 xe_check_libs=-lXpm cat > conftest.$ac_ext < int main(int c, char **v) { @@ -6551,7 +6743,7 @@ echo "configure:6544: checking for Xpm - no older than 3.4f" >&5 XpmIncludeVersion != XpmLibraryVersion() ? 1 : XpmIncludeVersion < 30406 ? 2 : 0 ;} EOF -if { (eval echo configure:6555: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:6747: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ./conftest dummy_arg; xpm_status=$?; if test "$xpm_status" = "0"; then @@ -6593,17 +6785,17 @@ EOF libs_x="-lXpm $libs_x" && if test "$extra_verbose" = "yes"; then echo " Prepending \"-lXpm\" to \$libs_x"; fi echo $ac_n "checking for \"FOR_MSW\" xpm""... $ac_c" 1>&6 -echo "configure:6597: checking for \"FOR_MSW\" xpm" >&5 +echo "configure:6789: checking for \"FOR_MSW\" xpm" >&5 xe_check_libs=-lXpm cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* xpm_for_msw=no else @@ -6629,16 +6821,16 @@ EOF test -z "$with_xface" && { ac_safe=`echo "compface.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for compface.h""... $ac_c" 1>&6 -echo "configure:6633: checking for compface.h" >&5 +echo "configure:6825: checking for compface.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6641: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:6833: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6660,12 +6852,12 @@ fi } test -z "$with_xface" && { echo $ac_n "checking for UnGenFace in -lcompface""... $ac_c" 1>&6 -echo "configure:6664: checking for UnGenFace in -lcompface" >&5 +echo "configure:6856: checking for UnGenFace in -lcompface" >&5 ac_lib_var=`echo compface'_'UnGenFace | sed 'y%./+-%__p_%'` xe_check_libs=" -lcompface " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6872: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6728,12 +6920,12 @@ EOF if test "$with_png $with_tiff" != "no no"; then echo $ac_n "checking for inflate in -lc""... $ac_c" 1>&6 -echo "configure:6732: checking for inflate in -lc" >&5 +echo "configure:6924: checking for inflate in -lc" >&5 ac_lib_var=`echo c'_'inflate | sed 'y%./+-%__p_%'` xe_check_libs=" -lc " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6940: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6763,12 +6955,12 @@ else echo "$ac_t""no" 1>&6 echo $ac_n "checking for inflate in -lz""... $ac_c" 1>&6 -echo "configure:6767: checking for inflate in -lz" >&5 +echo "configure:6959: checking for inflate in -lz" >&5 ac_lib_var=`echo z'_'inflate | sed 'y%./+-%__p_%'` xe_check_libs=" -lz " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:6975: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6798,12 +6990,12 @@ else echo "$ac_t""no" 1>&6 echo $ac_n "checking for inflate in -lgz""... $ac_c" 1>&6 -echo "configure:6802: checking for inflate in -lgz" >&5 +echo "configure:6994: checking for inflate in -lgz" >&5 ac_lib_var=`echo gz'_'inflate | sed 'y%./+-%__p_%'` xe_check_libs=" -lgz " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7010: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6844,16 +7036,16 @@ fi test -z "$with_jpeg" && { ac_safe=`echo "jpeglib.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for jpeglib.h""... $ac_c" 1>&6 -echo "configure:6848: checking for jpeglib.h" >&5 +echo "configure:7040: checking for jpeglib.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6856: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:7048: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -6875,12 +7067,12 @@ fi } test -z "$with_jpeg" && { echo $ac_n "checking for jpeg_destroy_decompress in -ljpeg""... $ac_c" 1>&6 -echo "configure:6879: checking for jpeg_destroy_decompress in -ljpeg" >&5 +echo "configure:7071: checking for jpeg_destroy_decompress in -ljpeg" >&5 ac_lib_var=`echo jpeg'_'jpeg_destroy_decompress | sed 'y%./+-%__p_%'` xe_check_libs=" -ljpeg " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7087: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6927,10 +7119,10 @@ EOF png_problem="" test -z "$with_png" && { echo $ac_n "checking for pow""... $ac_c" 1>&6 -echo "configure:6931: checking for pow" >&5 +echo "configure:7123: checking for pow" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_pow=yes" else @@ -6974,16 +7166,16 @@ fi } test -z "$with_png" && { ac_safe=`echo "png.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for png.h""... $ac_c" 1>&6 -echo "configure:6978: checking for png.h" >&5 +echo "configure:7170: checking for png.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6986: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:7178: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -7005,12 +7197,12 @@ fi } test -z "$with_png" && { echo $ac_n "checking for png_read_image in -lpng""... $ac_c" 1>&6 -echo "configure:7009: checking for png_read_image in -lpng" >&5 +echo "configure:7201: checking for png_read_image in -lpng" >&5 ac_lib_var=`echo png'_'png_read_image | sed 'y%./+-%__p_%'` xe_check_libs=" -lpng " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7217: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7044,10 +7236,10 @@ fi } if test -z "$with_png"; then echo $ac_n "checking for workable png version information""... $ac_c" 1>&6 -echo "configure:7048: checking for workable png version information" >&5 +echo "configure:7240: checking for workable png version information" >&5 xe_check_libs="-lpng -lz" cat > conftest.$ac_ext < int main(int c, char **v) { @@ -7055,7 +7247,7 @@ echo "configure:7048: checking for workable png version information" >&5 if (strcmp(png_libpng_ver, PNG_LIBPNG_VER_STRING) != 0) return 1; return (PNG_LIBPNG_VER < 10002) ? 2 : 0 ;} EOF -if { (eval echo configure:7059: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:7251: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ./conftest dummy_arg; png_status=$?; if test "$png_status" = "0"; then @@ -7098,16 +7290,16 @@ EOF test -z "$with_tiff" && { ac_safe=`echo "tiffio.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for tiffio.h""... $ac_c" 1>&6 -echo "configure:7102: checking for tiffio.h" >&5 +echo "configure:7294: checking for tiffio.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:7110: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:7302: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -7129,12 +7321,12 @@ fi } test -z "$with_tiff" && { echo $ac_n "checking for TIFFClientOpen in -ltiff""... $ac_c" 1>&6 -echo "configure:7133: checking for TIFFClientOpen in -ltiff" >&5 +echo "configure:7325: checking for TIFFClientOpen in -ltiff" >&5 ac_lib_var=`echo tiff'_'TIFFClientOpen | sed 'y%./+-%__p_%'` xe_check_libs=" -ltiff " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7341: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7184,16 +7376,16 @@ fi if test "$with_x11" = "yes"; then echo "checking for X11 graphics libraries" 1>&6 -echo "configure:7188: checking for X11 graphics libraries" >&5 +echo "configure:7380: checking for X11 graphics libraries" >&5 echo $ac_n "checking for XawScrollbarSetThumb in -lXaw""... $ac_c" 1>&6 -echo "configure:7192: checking for XawScrollbarSetThumb in -lXaw" >&5 +echo "configure:7384: checking for XawScrollbarSetThumb in -lXaw" >&5 ac_lib_var=`echo Xaw'_'XawScrollbarSetThumb | sed 'y%./+-%__p_%'` xe_check_libs=" -lXaw " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7400: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7228,16 +7420,16 @@ fi ac_safe=`echo "Xm/Xm.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for Xm/Xm.h""... $ac_c" 1>&6 -echo "configure:7232: checking for Xm/Xm.h" >&5 +echo "configure:7424: checking for Xm/Xm.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:7240: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:7432: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -7253,12 +7445,12 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for XmStringFree in -lXm""... $ac_c" 1>&6 -echo "configure:7257: checking for XmStringFree in -lXm" >&5 +echo "configure:7449: checking for XmStringFree in -lXm" >&5 ac_lib_var=`echo Xm'_'XmStringFree | sed 'y%./+-%__p_%'` xe_check_libs=" -lXm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7465: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7298,9 +7490,9 @@ fi if test "$have_motif" = "yes"; then echo $ac_n "checking for Lesstif""... $ac_c" 1>&6 -echo "configure:7302: checking for Lesstif" >&5 +echo "configure:7494: checking for Lesstif" >&5 cat > conftest.$ac_ext < #ifdef LESSTIF_VERSION @@ -7581,7 +7773,7 @@ fi if test "$with_mule" = "yes" ; then echo "checking for Mule-related features" 1>&6 -echo "configure:7585: checking for Mule-related features" >&5 +echo "configure:7777: checking for Mule-related features" >&5 { test "$extra_verbose" = "yes" && cat << \EOF Defining MULE EOF @@ -7606,16 +7798,16 @@ EOF do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:7610: checking for $ac_hdr" >&5 +echo "configure:7802: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:7618: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:7810: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -7645,12 +7837,12 @@ done echo $ac_n "checking for strerror in -lintl""... $ac_c" 1>&6 -echo "configure:7649: checking for strerror in -lintl" >&5 +echo "configure:7841: checking for strerror in -lintl" >&5 ac_lib_var=`echo intl'_'strerror | sed 'y%./+-%__p_%'` xe_check_libs=" -lintl " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7857: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7694,19 +7886,58 @@ fi echo "checking for Mule input methods" 1>&6 -echo "configure:7698: checking for Mule input methods" >&5 +echo "configure:7890: checking for Mule input methods" >&5 case "$with_xim" in "" | "yes" ) echo "checking for XIM" 1>&6 -echo "configure:7701: checking for XIM" >&5 - if test "$have_lesstif" = "yes"; then with_xim=xlib - else +echo "configure:7893: checking for XIM" >&5 + +echo $ac_n "checking for XOpenIM in -lX11""... $ac_c" 1>&6 +echo "configure:7896: checking for XOpenIM in -lX11" >&5 +ac_lib_var=`echo X11'_'XOpenIM | sed 'y%./+-%__p_%'` + +xe_check_libs=" -lX11 " +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +xe_check_libs="" + +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then + echo "$ac_t""yes" 1>&6 + with_xim=xlib +else + echo "$ac_t""no" 1>&6 +with_xim=no +fi + + + if test "$have_motif $have_lesstif" = "yes no"; then + echo $ac_n "checking for XmImMbLookupString in -lXm""... $ac_c" 1>&6 -echo "configure:7705: checking for XmImMbLookupString in -lXm" >&5 +echo "configure:7936: checking for XmImMbLookupString in -lXm" >&5 ac_lib_var=`echo Xm'_'XmImMbLookupString | sed 'y%./+-%__p_%'` xe_check_libs=" -lXm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:7952: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7734,11 +7965,10 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then with_xim=motif else echo "$ac_t""no" 1>&6 -with_xim=xlib fi - fi + fi ;; esac if test "$with_xim" != "no"; then { test "$extra_verbose" = "yes" && cat << \EOF @@ -7783,15 +8013,15 @@ EOF if test "$with_xfs" = "yes" ; then echo "checking for XFontSet" 1>&6 -echo "configure:7787: checking for XFontSet" >&5 +echo "configure:8017: checking for XFontSet" >&5 echo $ac_n "checking for XmbDrawString in -lX11""... $ac_c" 1>&6 -echo "configure:7790: checking for XmbDrawString in -lX11" >&5 +echo "configure:8020: checking for XmbDrawString in -lX11" >&5 ac_lib_var=`echo X11'_'XmbDrawString | sed 'y%./+-%__p_%'` xe_check_libs=" -lX11 " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8036: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7842,16 +8072,16 @@ EOF test "$with_wnn6" = "yes" && with_wnn=yes # wnn6 implies wnn support test -z "$with_wnn" && { ac_safe=`echo "wnn/jllib.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for wnn/jllib.h""... $ac_c" 1>&6 -echo "configure:7846: checking for wnn/jllib.h" >&5 +echo "configure:8076: checking for wnn/jllib.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:7854: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:8084: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -7875,10 +8105,10 @@ fi for ac_func in crypt do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7879: checking for $ac_func" >&5 +echo "configure:8109: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8135: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7930,12 +8160,12 @@ done test "$ac_cv_func_crypt" != "yes" && { echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6 -echo "configure:7934: checking for crypt in -lcrypt" >&5 +echo "configure:8164: checking for crypt in -lcrypt" >&5 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'` xe_check_libs=" -lcrypt " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8180: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7981,12 +8211,12 @@ fi if test -z "$with_wnn" -o "$with_wnn" = "yes"; then echo $ac_n "checking for jl_dic_list_e in -lwnn""... $ac_c" 1>&6 -echo "configure:7985: checking for jl_dic_list_e in -lwnn" >&5 +echo "configure:8215: checking for jl_dic_list_e in -lwnn" >&5 ac_lib_var=`echo wnn'_'jl_dic_list_e | sed 'y%./+-%__p_%'` xe_check_libs=" -lwnn " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8231: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8015,12 +8245,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for jl_dic_list_e in -lwnn4""... $ac_c" 1>&6 -echo "configure:8019: checking for jl_dic_list_e in -lwnn4" >&5 +echo "configure:8249: checking for jl_dic_list_e in -lwnn4" >&5 ac_lib_var=`echo wnn4'_'jl_dic_list_e | sed 'y%./+-%__p_%'` xe_check_libs=" -lwnn4 " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8265: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8049,12 +8279,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for jl_dic_list_e in -lwnn6""... $ac_c" 1>&6 -echo "configure:8053: checking for jl_dic_list_e in -lwnn6" >&5 +echo "configure:8283: checking for jl_dic_list_e in -lwnn6" >&5 ac_lib_var=`echo wnn6'_'jl_dic_list_e | sed 'y%./+-%__p_%'` xe_check_libs=" -lwnn6 " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8083,12 +8313,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for dic_list_e in -lwnn6_fromsrc""... $ac_c" 1>&6 -echo "configure:8087: checking for dic_list_e in -lwnn6_fromsrc" >&5 +echo "configure:8317: checking for dic_list_e in -lwnn6_fromsrc" >&5 ac_lib_var=`echo wnn6_fromsrc'_'dic_list_e | sed 'y%./+-%__p_%'` xe_check_libs=" -lwnn6_fromsrc " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8333: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8147,12 +8377,12 @@ EOF if test "$with_wnn6" != "no"; then echo $ac_n "checking for jl_fi_dic_list in -l$libwnn""... $ac_c" 1>&6 -echo "configure:8151: checking for jl_fi_dic_list in -l$libwnn" >&5 +echo "configure:8381: checking for jl_fi_dic_list in -l$libwnn" >&5 ac_lib_var=`echo $libwnn'_'jl_fi_dic_list | sed 'y%./+-%__p_%'` xe_check_libs=" -l$libwnn " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8198,16 +8428,16 @@ EOF if test "$with_canna" != "no"; then ac_safe=`echo "canna/jrkanji.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for canna/jrkanji.h""... $ac_c" 1>&6 -echo "configure:8202: checking for canna/jrkanji.h" >&5 +echo "configure:8432: checking for canna/jrkanji.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:8210: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:8440: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -8233,16 +8463,16 @@ fi c_switch_site="$c_switch_site -I/usr/local/canna/include" ac_safe=`echo "canna/jrkanji.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for canna/jrkanji.h""... $ac_c" 1>&6 -echo "configure:8237: checking for canna/jrkanji.h" >&5 +echo "configure:8467: checking for canna/jrkanji.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:8245: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:8475: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -8269,16 +8499,16 @@ fi test -z "$with_canna" && { ac_safe=`echo "canna/RK.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for canna/RK.h""... $ac_c" 1>&6 -echo "configure:8273: checking for canna/RK.h" >&5 +echo "configure:8503: checking for canna/RK.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:8281: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:8511: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -8300,12 +8530,12 @@ fi } test -z "$with_canna" && { echo $ac_n "checking for RkBgnBun in -lRKC""... $ac_c" 1>&6 -echo "configure:8304: checking for RkBgnBun in -lRKC" >&5 +echo "configure:8534: checking for RkBgnBun in -lRKC" >&5 ac_lib_var=`echo RKC'_'RkBgnBun | sed 'y%./+-%__p_%'` xe_check_libs=" -lRKC " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8550: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8339,12 +8569,12 @@ fi } test -z "$with_canna" && { echo $ac_n "checking for jrKanjiControl in -lcanna""... $ac_c" 1>&6 -echo "configure:8343: checking for jrKanjiControl in -lcanna" >&5 +echo "configure:8573: checking for jrKanjiControl in -lcanna" >&5 ac_lib_var=`echo canna'_'jrKanjiControl | sed 'y%./+-%__p_%'` xe_check_libs=" -lcanna " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8589: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8404,12 +8634,12 @@ if test "$need_motif" = "yes" ; then libs_x="-lXm $libs_x" && if test "$extra_verbose" = "yes"; then echo " Prepending \"-lXm\" to \$libs_x"; fi echo $ac_n "checking for layout_object_getvalue in -li18n""... $ac_c" 1>&6 -echo "configure:8408: checking for layout_object_getvalue in -li18n" >&5 +echo "configure:8638: checking for layout_object_getvalue in -li18n" >&5 ac_lib_var=`echo i18n'_'layout_object_getvalue | sed 'y%./+-%__p_%'` xe_check_libs=" -li18n " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8654: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -8506,10 +8736,10 @@ fi for ac_func in cbrt closedir dup2 eaccess fmod fpathconf frexp ftime gethostname 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 strcasecmp strerror tzset ulimit usleep utimes waitpid vsnprintf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:8510: checking for $ac_func" >&5 +echo "configure:8740: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8766: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -8573,10 +8803,10 @@ case "$opsys" in * ) for ac_func in realpath do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:8577: checking for $ac_func" >&5 +echo "configure:8807: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -8633,16 +8863,16 @@ done esac echo $ac_n "checking whether netdb declares h_errno""... $ac_c" 1>&6 -echo "configure:8637: checking whether netdb declares h_errno" >&5 +echo "configure:8867: checking whether netdb declares h_errno" >&5 cat > conftest.$ac_ext < int main() { return h_errno; ; return 0; } EOF -if { (eval echo configure:8646: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:8876: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""yes" 1>&6 { test "$extra_verbose" = "yes" && cat << \EOF @@ -8662,16 +8892,16 @@ fi rm -f conftest* echo $ac_n "checking for sigsetjmp""... $ac_c" 1>&6 -echo "configure:8666: checking for sigsetjmp" >&5 +echo "configure:8896: checking for sigsetjmp" >&5 cat > conftest.$ac_ext < int main() { sigjmp_buf bar; sigsetjmp (bar, 0); ; return 0; } EOF -if { (eval echo configure:8675: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8905: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* echo "$ac_t""yes" 1>&6 { test "$extra_verbose" = "yes" && cat << \EOF @@ -8691,11 +8921,11 @@ fi rm -f conftest* echo $ac_n "checking whether localtime caches TZ""... $ac_c" 1>&6 -echo "configure:8695: checking whether localtime caches TZ" >&5 +echo "configure:8925: checking whether localtime caches TZ" >&5 if test "$ac_cv_func_tzset" = "yes"; then cat > conftest.$ac_ext < #if STDC_HEADERS @@ -8730,7 +8960,7 @@ main() exit (0); } EOF -if { (eval echo configure:8734: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:8964: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then emacs_cv_localtime_cache=no else @@ -8760,9 +8990,9 @@ fi if test "$HAVE_TIMEVAL" = "yes"; then echo $ac_n "checking whether gettimeofday accepts one or two arguments""... $ac_c" 1>&6 -echo "configure:8764: checking whether gettimeofday accepts one or two arguments" >&5 +echo "configure:8994: checking whether gettimeofday accepts one or two arguments" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:9018: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""two" 1>&6 else @@ -8806,19 +9036,19 @@ fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:8810: checking for inline" >&5 +echo "configure:9040: checking for inline" >&5 ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -8868,17 +9098,17 @@ fi # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 -echo "configure:8872: checking for working alloca.h" >&5 +echo "configure:9102: checking for working alloca.h" >&5 cat > conftest.$ac_ext < int main() { char *p = alloca(2 * sizeof(int)); ; return 0; } EOF -if { (eval echo configure:8882: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:9112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes else @@ -8902,23 +9132,28 @@ EOF fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:8906: checking for alloca" >&5 +echo "configure:9136: checking for alloca" >&5 cat > conftest.$ac_ext < +# ifdef _MSC_VER +# include +# define alloca _alloca # else -# ifdef _AIX - #pragma alloca +# if HAVE_ALLOCA_H +# include # else -# ifndef alloca /* predefined by HP cc +Olibcalls */ +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca /* predefined by HP cc +Olibcalls */ char *alloca (); +# endif # endif # endif # endif @@ -8928,7 +9163,7 @@ int main() { char *p = (char *) alloca(1); ; return 0; } EOF -if { (eval echo configure:8932: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:9167: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes else @@ -8956,7 +9191,7 @@ if test $ac_cv_func_alloca_works = no; then # that cause trouble. Some versions do not even contain alloca or # contain a buggy version. If you still want to use their alloca, # use ar to extract alloca.o from them instead of compiling alloca.c. - ALLOCA=alloca.o + ALLOCA=alloca.${ac_objext} { test "$extra_verbose" = "yes" && cat << \EOF Defining C_ALLOCA EOF @@ -8967,10 +9202,10 @@ EOF echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:8971: checking whether alloca needs Cray hooks" >&5 +echo "configure:9206: checking whether alloca needs Cray hooks" >&5 cat > conftest.$ac_ext <&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:8998: checking for $ac_func" >&5 +echo "configure:9233: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:9259: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -9050,10 +9285,10 @@ done fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:9054: checking stack direction for C alloca" >&5 +echo "configure:9289: checking stack direction for C alloca" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:9311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_c_stack_direction=1 else @@ -9101,16 +9336,16 @@ test -n "$ALLOCA" && extra_objs="$extra_objs $ALLOCA" && if test "$extra_verbos ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for vfork.h""... $ac_c" 1>&6 -echo "configure:9105: checking for vfork.h" >&5 +echo "configure:9340: checking for vfork.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:9113: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:9348: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -9137,10 +9372,10 @@ else fi echo $ac_n "checking for working vfork""... $ac_c" 1>&6 -echo "configure:9141: checking for working vfork" >&5 +echo "configure:9376: checking for working vfork" >&5 cat > conftest.$ac_ext < @@ -9235,7 +9470,7 @@ main() { } } EOF -if { (eval echo configure:9239: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:9474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_func_vfork_works=yes else @@ -9261,10 +9496,10 @@ fi echo $ac_n "checking for working strcoll""... $ac_c" 1>&6 -echo "configure:9265: checking for working strcoll" >&5 +echo "configure:9500: checking for working strcoll" >&5 cat > conftest.$ac_ext < main () @@ -9274,7 +9509,7 @@ main () strcoll ("123", "456") >= 0); } EOF -if { (eval echo configure:9278: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:9513: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_func_strcoll_works=yes else @@ -9302,10 +9537,10 @@ fi for ac_func in getpgrp do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:9306: checking for $ac_func" >&5 +echo "configure:9541: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:9567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -9356,10 +9591,10 @@ fi done echo $ac_n "checking whether getpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:9360: checking whether getpgrp takes no argument" >&5 +echo "configure:9595: checking whether getpgrp takes no argument" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:9653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_func_getpgrp_void=yes else @@ -9441,10 +9676,10 @@ fi echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:9445: checking for working mmap" >&5 +echo "configure:9680: checking for working mmap" >&5 case "$opsys" in ultrix* ) have_mmap=no ;; *) cat > conftest.$ac_ext < #include @@ -9477,7 +9712,7 @@ int main (int argc, char *argv[]) return 1; } EOF -if { (eval echo configure:9481: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:9716: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then have_mmap=yes else @@ -9502,16 +9737,16 @@ for ac_hdr in unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:9506: checking for $ac_hdr" >&5 +echo "configure:9741: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:9514: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:9749: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -9542,10 +9777,10 @@ done for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:9546: checking for $ac_func" >&5 +echo "configure:9781: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:9807: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -9596,10 +9831,10 @@ fi done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:9600: checking for working mmap" >&5 +echo "configure:9835: checking for working mmap" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:9978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then ac_cv_func_mmap_fixed_mapped=yes else @@ -9777,16 +10012,16 @@ EOF ac_safe=`echo "termios.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for termios.h""... $ac_c" 1>&6 -echo "configure:9781: checking for termios.h" >&5 +echo "configure:10016: checking for termios.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:9789: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10024: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -9828,16 +10063,16 @@ else echo "$ac_t""no" 1>&6 ac_safe=`echo "termio.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for termio.h""... $ac_c" 1>&6 -echo "configure:9832: checking for termio.h" >&5 +echo "configure:10067: checking for termio.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:9840: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10075: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -9868,10 +10103,10 @@ fi echo $ac_n "checking for socket""... $ac_c" 1>&6 -echo "configure:9872: checking for socket" >&5 +echo "configure:10107: checking for socket" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10133: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_socket=yes" else @@ -9909,16 +10144,16 @@ if eval "test \"`echo '$ac_cv_func_'socket`\" = yes"; then echo "$ac_t""yes" 1>&6 ac_safe=`echo "netinet/in.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for netinet/in.h""... $ac_c" 1>&6 -echo "configure:9913: checking for netinet/in.h" >&5 +echo "configure:10148: checking for netinet/in.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:9921: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10156: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -9934,16 +10169,16 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 ac_safe=`echo "arpa/inet.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for arpa/inet.h""... $ac_c" 1>&6 -echo "configure:9938: checking for arpa/inet.h" >&5 +echo "configure:10173: checking for arpa/inet.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:9946: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10181: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -9967,9 +10202,9 @@ EOF } echo $ac_n "checking "for sun_len member in struct sockaddr_un"""... $ac_c" 1>&6 -echo "configure:9971: checking "for sun_len member in struct sockaddr_un"" >&5 +echo "configure:10206: checking "for sun_len member in struct sockaddr_un"" >&5 cat > conftest.$ac_ext < @@ -9980,7 +10215,7 @@ int main() { static struct sockaddr_un x; x.sun_len = 1; ; return 0; } EOF -if { (eval echo configure:9984: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10219: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""yes" 1>&6; { test "$extra_verbose" = "yes" && cat << \EOF Defining HAVE_SOCKADDR_SUN_LEN @@ -9998,9 +10233,9 @@ else fi rm -f conftest* echo $ac_n "checking "for ip_mreq struct in netinet/in.h"""... $ac_c" 1>&6 -echo "configure:10002: checking "for ip_mreq struct in netinet/in.h"" >&5 +echo "configure:10237: checking "for ip_mreq struct in netinet/in.h"" >&5 cat > conftest.$ac_ext < @@ -10010,7 +10245,7 @@ int main() { static struct ip_mreq x; ; return 0; } EOF -if { (eval echo configure:10014: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10249: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""yes" 1>&6; { test "$extra_verbose" = "yes" && cat << \EOF Defining HAVE_MULTICAST @@ -10041,10 +10276,10 @@ fi echo $ac_n "checking for msgget""... $ac_c" 1>&6 -echo "configure:10045: checking for msgget" >&5 +echo "configure:10280: checking for msgget" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10306: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_msgget=yes" else @@ -10082,16 +10317,16 @@ if eval "test \"`echo '$ac_cv_func_'msgget`\" = yes"; then echo "$ac_t""yes" 1>&6 ac_safe=`echo "sys/ipc.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for sys/ipc.h""... $ac_c" 1>&6 -echo "configure:10086: checking for sys/ipc.h" >&5 +echo "configure:10321: checking for sys/ipc.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10094: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10329: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10107,16 +10342,16 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 ac_safe=`echo "sys/msg.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for sys/msg.h""... $ac_c" 1>&6 -echo "configure:10111: checking for sys/msg.h" >&5 +echo "configure:10346: checking for sys/msg.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10119: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10354: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10153,16 +10388,16 @@ fi ac_safe=`echo "dirent.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for dirent.h""... $ac_c" 1>&6 -echo "configure:10157: checking for dirent.h" >&5 +echo "configure:10392: checking for dirent.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10165: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10400: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10188,16 +10423,16 @@ else echo "$ac_t""no" 1>&6 ac_safe=`echo "sys/dir.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for sys/dir.h""... $ac_c" 1>&6 -echo "configure:10192: checking for sys/dir.h" >&5 +echo "configure:10427: checking for sys/dir.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10200: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10435: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10229,16 +10464,16 @@ fi ac_safe=`echo "nlist.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for nlist.h""... $ac_c" 1>&6 -echo "configure:10233: checking for nlist.h" >&5 +echo "configure:10468: checking for nlist.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10241: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10476: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10267,7 +10502,7 @@ fi echo "checking "for sound support"" 1>&6 -echo "configure:10271: checking "for sound support"" >&5 +echo "configure:10506: checking "for sound support"" >&5 case "$with_sound" in native | both ) with_native_sound=yes;; nas | no ) with_native_sound=no;; @@ -10278,16 +10513,16 @@ if test "$with_native_sound" != "no"; then if test -n "$native_sound_lib"; then ac_safe=`echo "multimedia/audio_device.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for multimedia/audio_device.h""... $ac_c" 1>&6 -echo "configure:10282: checking for multimedia/audio_device.h" >&5 +echo "configure:10517: checking for multimedia/audio_device.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10290: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10525: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10334,12 +10569,12 @@ fi if test -z "$native_sound_lib"; then echo $ac_n "checking for ALopenport in -laudio""... $ac_c" 1>&6 -echo "configure:10338: checking for ALopenport in -laudio" >&5 +echo "configure:10573: checking for ALopenport in -laudio" >&5 ac_lib_var=`echo audio'_'ALopenport | sed 'y%./+-%__p_%'` xe_check_libs=" -laudio " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10589: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10381,12 +10616,12 @@ fi if test -z "$native_sound_lib"; then echo $ac_n "checking for AOpenAudio in -lAlib""... $ac_c" 1>&6 -echo "configure:10385: checking for AOpenAudio in -lAlib" >&5 +echo "configure:10620: checking for AOpenAudio in -lAlib" >&5 ac_lib_var=`echo Alib'_'AOpenAudio | sed 'y%./+-%__p_%'` xe_check_libs=" -lAlib " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10636: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10435,16 +10670,16 @@ fi for dir in "machine" "sys" "linux"; do ac_safe=`echo "${dir}/soundcard.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ${dir}/soundcard.h""... $ac_c" 1>&6 -echo "configure:10439: checking for ${dir}/soundcard.h" >&5 +echo "configure:10674: checking for ${dir}/soundcard.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10447: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10513,7 +10748,7 @@ EOF fi libs_x="-laudio $libs_x" && if test "$extra_verbose" = "yes"; then echo " Prepending \"-laudio\" to \$libs_x"; fi cat > conftest.$ac_ext < EOF @@ -10540,7 +10775,7 @@ test -z "$with_tty" && with_tty=yes if test "$with_tty" = "yes" ; then echo "checking for TTY-related features" 1>&6 -echo "configure:10544: checking for TTY-related features" >&5 +echo "configure:10779: checking for TTY-related features" >&5 { test "$extra_verbose" = "yes" && cat << \EOF Defining HAVE_TTY EOF @@ -10556,12 +10791,12 @@ EOF if test -z "$with_ncurses"; then echo $ac_n "checking for tgetent in -lncurses""... $ac_c" 1>&6 -echo "configure:10560: checking for tgetent in -lncurses" >&5 +echo "configure:10795: checking for tgetent in -lncurses" >&5 ac_lib_var=`echo ncurses'_'tgetent | sed 'y%./+-%__p_%'` xe_check_libs=" -lncurses " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10811: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10605,16 +10840,16 @@ EOF ac_safe=`echo "ncurses/curses.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ncurses/curses.h""... $ac_c" 1>&6 -echo "configure:10609: checking for ncurses/curses.h" >&5 +echo "configure:10844: checking for ncurses/curses.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10617: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10852: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10635,16 +10870,16 @@ fi ac_safe=`echo "ncurses/term.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ncurses/term.h""... $ac_c" 1>&6 -echo "configure:10639: checking for ncurses/term.h" >&5 +echo "configure:10874: checking for ncurses/term.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10647: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10882: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10673,16 +10908,16 @@ fi c_switch_site="$c_switch_site -I/usr/include/ncurses" ac_safe=`echo "ncurses/curses.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ncurses/curses.h""... $ac_c" 1>&6 -echo "configure:10677: checking for ncurses/curses.h" >&5 +echo "configure:10912: checking for ncurses/curses.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10685: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:10920: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10716,12 +10951,12 @@ fi for lib in curses termlib termcap; do echo $ac_n "checking for tgetent in -l$lib""... $ac_c" 1>&6 -echo "configure:10720: checking for tgetent in -l$lib" >&5 +echo "configure:10955: checking for tgetent in -l$lib" >&5 ac_lib_var=`echo $lib'_'tgetent | sed 'y%./+-%__p_%'` xe_check_libs=" -l$lib " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:10971: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10763,12 +10998,12 @@ fi else echo $ac_n "checking for tgetent in -lcurses""... $ac_c" 1>&6 -echo "configure:10767: checking for tgetent in -lcurses" >&5 +echo "configure:11002: checking for tgetent in -lcurses" >&5 ac_lib_var=`echo curses'_'tgetent | sed 'y%./+-%__p_%'` xe_check_libs=" -lcurses " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11018: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10797,12 +11032,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for tgetent in -ltermcap""... $ac_c" 1>&6 -echo "configure:10801: checking for tgetent in -ltermcap" >&5 +echo "configure:11036: checking for tgetent in -ltermcap" >&5 ac_lib_var=`echo termcap'_'tgetent | sed 'y%./+-%__p_%'` xe_check_libs=" -ltermcap " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11052: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10861,16 +11096,16 @@ EOF test -z "$with_gpm" && { ac_safe=`echo "gpm.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for gpm.h""... $ac_c" 1>&6 -echo "configure:10865: checking for gpm.h" >&5 +echo "configure:11100: checking for gpm.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10873: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:11108: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -10892,12 +11127,12 @@ fi } test -z "$with_gpm" && { echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6 -echo "configure:10896: checking for Gpm_Open in -lgpm" >&5 +echo "configure:11131: checking for Gpm_Open in -lgpm" >&5 ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'` xe_check_libs=" -lgpm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -10958,21 +11193,21 @@ test "$with_x11" = "yes" -o "$with_tty" = "yes" && extra_objs="$extra_objs event test "$with_database_gnudbm $with_database_dbm $with_database_berkdb" \ != "no no no" && echo "checking for database support" 1>&6 -echo "configure:10962: checking for database support" >&5 +echo "configure:11197: checking for database support" >&5 if test "$with_database_gnudbm $with_database_dbm" != "no no"; then ac_safe=`echo "ndbm.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for ndbm.h""... $ac_c" 1>&6 -echo "configure:10967: checking for ndbm.h" >&5 +echo "configure:11202: checking for ndbm.h" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10975: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:11210: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -11001,12 +11236,12 @@ fi if test "$with_database_gnudbm" != "no"; then echo $ac_n "checking for dbm_open in -lgdbm""... $ac_c" 1>&6 -echo "configure:11005: checking for dbm_open in -lgdbm" >&5 +echo "configure:11240: checking for dbm_open in -lgdbm" >&5 ac_lib_var=`echo gdbm'_'dbm_open | sed 'y%./+-%__p_%'` xe_check_libs=" -lgdbm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11256: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11045,10 +11280,10 @@ fi if test "$with_database_dbm" != "no"; then echo $ac_n "checking for dbm_open""... $ac_c" 1>&6 -echo "configure:11049: checking for dbm_open" >&5 +echo "configure:11284: checking for dbm_open" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11310: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_dbm_open=yes" else @@ -11090,12 +11325,12 @@ else echo $ac_n "checking for dbm_open in -ldbm""... $ac_c" 1>&6 -echo "configure:11094: checking for dbm_open in -ldbm" >&5 +echo "configure:11329: checking for dbm_open in -ldbm" >&5 ac_lib_var=`echo dbm'_'dbm_open | sed 'y%./+-%__p_%'` xe_check_libs=" -ldbm " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11345: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11147,10 +11382,10 @@ EOF if test "$with_database_berkdb" != "no"; then echo $ac_n "checking for Berkeley db.h""... $ac_c" 1>&6 -echo "configure:11151: checking for Berkeley db.h" >&5 +echo "configure:11386: checking for Berkeley db.h" >&5 for path in "db/db.h" "db.h"; do cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:11407: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* db_h_path="$path"; break else @@ -11184,9 +11419,9 @@ rm -f conftest* if test "$with_database_berkdb" != "no"; then echo $ac_n "checking for Berkeley DB version""... $ac_c" 1>&6 -echo "configure:11188: checking for Berkeley DB version" >&5 +echo "configure:11423: checking for Berkeley DB version" >&5 cat > conftest.$ac_ext < #if DB_VERSION_MAJOR > 1 @@ -11205,10 +11440,10 @@ fi rm -f conftest* echo $ac_n "checking for $dbfunc""... $ac_c" 1>&6 -echo "configure:11209: checking for $dbfunc" >&5 +echo "configure:11444: checking for $dbfunc" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11470: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$dbfunc=yes" else @@ -11250,12 +11485,12 @@ else echo $ac_n "checking for $dbfunc in -ldb""... $ac_c" 1>&6 -echo "configure:11254: checking for $dbfunc in -ldb" >&5 +echo "configure:11489: checking for $dbfunc in -ldb" >&5 ac_lib_var=`echo db'_'$dbfunc | sed 'y%./+-%__p_%'` xe_check_libs=" -ldb " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11505: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11330,12 +11565,12 @@ fi if test "$with_socks" = "yes"; then echo $ac_n "checking for SOCKSinit in -lsocks""... $ac_c" 1>&6 -echo "configure:11334: checking for SOCKSinit in -lsocks" >&5 +echo "configure:11569: checking for SOCKSinit in -lsocks" >&5 ac_lib_var=`echo socks'_'SOCKSinit | sed 'y%./+-%__p_%'` xe_check_libs=" -lsocks " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11585: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11403,16 +11638,16 @@ for ac_hdr in dlfcn.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:11407: checking for $ac_hdr" >&5 +echo "configure:11642: checking for $ac_hdr" >&5 cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:11415: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out` +{ (eval echo configure:11650: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* eval "ac_cv_header_$ac_safe=yes" @@ -11450,12 +11685,12 @@ done test -z "$with_shlib" && test ! -z "$have_dlfcn" && { echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "configure:11454: checking for dlopen in -ldl" >&5 +echo "configure:11689: checking for dlopen in -ldl" >&5 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` xe_check_libs=" -ldl " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11705: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11495,12 +11730,12 @@ fi } test -z "$with_shlib" && test ! -z "$have_dlfcn" && { echo $ac_n "checking for _dlopen in -lc""... $ac_c" 1>&6 -echo "configure:11499: checking for _dlopen in -lc" >&5 +echo "configure:11734: checking for _dlopen in -lc" >&5 ac_lib_var=`echo c'_'_dlopen | sed 'y%./+-%__p_%'` xe_check_libs=" -lc " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11750: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11540,12 +11775,12 @@ fi } test -z "$with_shlib" && test ! -z "$have_dlfcn" && { echo $ac_n "checking for dlopen in -lc""... $ac_c" 1>&6 -echo "configure:11544: checking for dlopen in -lc" >&5 +echo "configure:11779: checking for dlopen in -lc" >&5 ac_lib_var=`echo c'_'dlopen | sed 'y%./+-%__p_%'` xe_check_libs=" -lc " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11795: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11585,12 +11820,12 @@ fi } test -z "$with_shlib" && { echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -echo "configure:11589: checking for shl_load in -ldld" >&5 +echo "configure:11824: checking for shl_load in -ldld" >&5 ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` xe_check_libs=" -ldld " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11840: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11630,12 +11865,12 @@ fi } test -z "$with_shlib" && { echo $ac_n "checking for dld_init in -ldld""... $ac_c" 1>&6 -echo "configure:11634: checking for dld_init in -ldld" >&5 +echo "configure:11869: checking for dld_init in -ldld" >&5 ac_lib_var=`echo dld'_'dld_init | sed 'y%./+-%__p_%'` xe_check_libs=" -ldld " cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:11885: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -11685,7 +11920,7 @@ xehost=$canonical xealias=$internal_configuration echo "checking how to build dynamic libraries for ${xehost}" 1>&6 -echo "configure:11689: checking how to build dynamic libraries for ${xehost}" >&5 +echo "configure:11924: checking how to build dynamic libraries for ${xehost}" >&5 # Transform *-*-linux* to *-*-linux-gnu*, to support old configure scripts. case "$xehost" in *-*-linux-gnu*) ;; @@ -11713,9 +11948,9 @@ if test "$GCC" = "yes"; then XEGCC=yes else echo $ac_n "checking checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:11717: checking checking whether we are using GNU C" >&5 +echo "configure:11952: checking checking whether we are using GNU C" >&5 cat > conftest.$ac_ext <&6 -echo "configure:11741: checking how to produce PIC code" >&5 +echo "configure:11976: checking how to produce PIC code" >&5 wl= can_build_shared=yes @@ -11830,18 +12065,18 @@ if test -n "$dll_cflags"; then # Check to make sure the dll_cflags actually works. echo $ac_n "checking if PIC flag ${dll_cflags} really works""... $ac_c" 1>&6 -echo "configure:11834: checking if PIC flag ${dll_cflags} really works" >&5 +echo "configure:12069: checking if PIC flag ${dll_cflags} really works" >&5 save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $dll_cflags -DPIC" cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:12080: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* # On HP-UX, the stripped-down bundled CC doesn't accept +Z, but also @@ -11872,7 +12107,7 @@ cc_produces_so=no xldf= xcldf= echo $ac_n "checking if C compiler can produce shared libraries""... $ac_c" 1>&6 -echo "configure:11876: checking if C compiler can produce shared libraries" >&5 +echo "configure:12111: checking if C compiler can produce shared libraries" >&5 if test "$XEGCC" = yes; then xcldf="-shared" xldf="-shared" @@ -11923,14 +12158,14 @@ if test -n "$xcldf"; then xe_libs= ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:12169: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* cc_produces_so=yes else @@ -11955,7 +12190,7 @@ if test -z "$LTLD"; then if test "$XEGCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 -echo "configure:11959: checking for ld used by GCC" >&5 +echo "configure:12194: checking for ld used by GCC" >&5 ac_prog=`($CC -print-prog-name=ld) 2>&5` case "$ac_prog" in # Accept absolute paths. @@ -11980,7 +12215,7 @@ echo "configure:11959: checking for ld used by GCC" >&5 esac else echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 -echo "configure:11984: checking for GNU ld" >&5 +echo "configure:12219: checking for GNU ld" >&5 fi if test -z "$LTLD"; then @@ -12018,7 +12253,7 @@ ld_dynamic_link_flags= # Check to see if it really is or isn't GNU ld. echo $ac_n "checking if the linker is GNU ld""... $ac_c" 1>&6 -echo "configure:12022: checking if the linker is GNU ld" >&5 +echo "configure:12257: checking if the linker is GNU ld" >&5 # I'd rather use --version here, but apparently some GNU ld's only accept -v. if $LTLD -v 2>&1 &5; then xe_gnu_ld=yes @@ -12045,7 +12280,7 @@ else # OK - only NOW do we futz about with ld. # See if the linker supports building shared libraries. echo $ac_n "checking whether the linker supports shared libraries""... $ac_c" 1>&6 -echo "configure:12049: checking whether the linker supports shared libraries" >&5 +echo "configure:12284: checking whether the linker supports shared libraries" >&5 dll_ld=$CC dll_ldflags=$LDFLAGS ld_shlibs=yes @@ -12257,10 +12492,10 @@ EOF for ac_func in dlerror _dlerror do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:12261: checking for $ac_func" >&5 +echo "configure:12496: checking for $ac_func" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:12522: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -12317,11 +12552,11 @@ done fi cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 +if { (eval echo configure:12560: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5 then : else @@ -13002,7 +13237,15 @@ case "$with_scrollbars" in athena3d ) echo " Using Athena-3d scrollbars." ;; esac case "$with_dialogs" in - motif ) echo " Using Motif dialog boxes." ;; + motif ) + echo " Using Motif dialog boxes." + if test "$unexec" = "unexaix.o" -a `uname -v` = 4 -a `uname -r` -ge 3; then + echo " *WARNING* The Motif dialog boxes cause problems on AIX 4.3 and higher." + echo " We recommend using the Athena dialog boxes instead." + echo " Install libXaw and re-run configure with --with-dialogs='athena'." + echo " Read the PROBLEMS file for more information." + fi + ;; athena ) echo " Using Athena dialog boxes." ;; athena3d ) echo " Using Athena-3d dialog boxes." ;; esac @@ -13097,7 +13340,7 @@ do echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.12" + echo "$CONFIG_STATUS generated by autoconf version 2.13" exit 0 ;; -help | --help | --hel | --he | --h) echo "\$ac_cs_usage"; exit 0 ;; @@ -13117,9 +13360,11 @@ sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF $ac_vpsub $extrasub +s%@SHELL@%$SHELL%g s%@CFLAGS@%$CFLAGS%g s%@CPPFLAGS@%$CPPFLAGS%g s%@CXXFLAGS@%$CXXFLAGS%g +s%@FFLAGS@%$FFLAGS%g s%@DEFS@%$DEFS%g s%@LDFLAGS@%$LDFLAGS%g s%@LIBS@%$LIBS%g @@ -13149,6 +13394,7 @@ s%@ld@%$ld%g s%@lib_gcc@%$lib_gcc%g s%@RANLIB@%$RANLIB%g s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g +s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g s%@INSTALL_DATA@%$INSTALL_DATA%g s%@YACC@%$YACC%g s%@SET_MAKE@%$SET_MAKE%g diff --git a/configure.in b/configure.in index 5243fb0..f44e169 100644 --- a/configure.in +++ b/configure.in @@ -876,13 +876,22 @@ for dir in lisp etc man info; do fi done +dnl Do our best to deal with automounter brokenness +dnl CANONICALIZE_PATH(varname) +define([CANONICALIZE_PATH], +[if test -d "/net"; then + if test -d "/tmp_mnt/net"; then tdir="tmp_mnt/net"; else tdir="tmp_mnt"; fi + $1=`echo "[$]$1" | \ + sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` +fi])dnl + dnl Calculate canonical name for blddir (i.e. current directory). dnl PWD may already be the preferable absolute name for ".", dnl but we can't trust it - it is sometimes inaccurate. absolute_pwd="`pwd`"; if test -n "$PWD" -a "`cd $PWD && pwd`" = "$absolute_pwd" then blddir="$PWD" -else blddir="$absolute_pwd" +else blddir="$absolute_pwd"; CANONICALIZE_PATH(blddir) fi AC_SUBST(blddir) @@ -892,7 +901,7 @@ dnl give you automounter prefixes, which can go away. case "$srcdir" in /* ) ;; . ) srcdir="$blddir" ;; - * ) srcdir="`cd $srcdir && pwd`" ;; + * ) srcdir="`cd $srcdir && pwd`"; CANONICALIZE_PATH(srcdir) ;; esac dnl Check if the source directory already has a configured system in it. @@ -1456,6 +1465,7 @@ case "$canonical" in *-xenix* ) opsys=xenix ;; *-sco3.2v4* ) opsys=sco4 NON_GNU_CPP=/lib/cpp ;; *-bsd386* | *-bsdi1* ) opsys=bsd386 ;; + *-bsdi4* ) opsys=bsdos4 ;; *-bsdi3* ) opsys=bsdos3 ;; *-bsdi2.1* ) opsys=bsdos2-1 ;; *-bsdi2* ) opsys=bsdos2 ;; @@ -1941,7 +1951,7 @@ if test "$add_runtime_path" = "yes"; then AC_MSG_CHECKING("for runtime libraries flag") case "$opsys" in sol2 ) dash_r="-R" ;; - decosf* | linux* ) dash_r="-rpath " ;; + decosf* | linux* | irix*) dash_r="-rpath " ;; *) dash_r="" for try_dash_r in "-R" "-R " "-rpath "; do @@ -2535,7 +2545,7 @@ if test "$with_x11" != "yes"; then dnl if test "$with_tty" = "no" ; then dnl AC_MSG_ERROR([No window system support and no TTY support - Unable to proceed.]) dnl fi - for feature in tooltalk cde offix session xim xmu + for feature in tooltalk cde offix session xim xmu do if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then AC_MSG_WARN([--with-$feature ignored: Not valid without X support]) @@ -2985,10 +2995,11 @@ if test "$with_mule" = "yes" ; then dnl test -z "$with_xim" -a "$opsys" != "sol2" && with_xim=no case "$with_xim" in "" | "yes" ) 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_lesstif" = "yes"; then with_xim=xlib - else AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif, with_xim=xlib) - fi + if test "$have_motif $have_lesstif" = "yes no"; then + AC_CHECK_LIB(Xm, XmImMbLookupString, with_xim=motif) + fi ;; esac if test "$with_xim" != "no"; then AC_DEFINE(HAVE_XIM) @@ -3006,7 +3017,7 @@ if test "$with_mule" = "yes" ; then fi fi - dnl "with_xim" = "yes" + dnl "with_xfs" = "yes" if test "$with_xfs" = "yes" ; then AC_CHECKING(for XFontSet) AC_CHECK_LIB(X11, XmbDrawString, [:], with_xfs=no) @@ -3016,7 +3027,7 @@ if test "$with_mule" = "yes" ; then XE_ADD_OBJS(input-method-xfs.o) fi fi - fi dnl with_xim + fi dnl with_xfs dnl Autodetect WNN test "$with_wnn6" = "yes" && with_wnn=yes # wnn6 implies wnn support @@ -4090,7 +4101,15 @@ case "$with_scrollbars" in athena3d ) echo " Using Athena-3d scrollbars." ;; esac case "$with_dialogs" in - motif ) echo " Using Motif dialog boxes." ;; + motif ) + echo " Using Motif dialog boxes." + if test "$unexec" = "unexaix.o" -a `uname -v` = 4 -a `uname -r` -ge 3; then + echo " *WARNING* The Motif dialog boxes cause problems on AIX 4.3 and higher." + echo " We recommend using the Athena dialog boxes instead." + echo " Install libXaw and re-run configure with --with-dialogs='athena'." + echo " Read the PROBLEMS file for more information." + fi + ;; athena ) echo " Using Athena dialog boxes." ;; athena3d ) echo " Using Athena-3d dialog boxes." ;; esac diff --git a/configure.usage b/configure.usage index b5154f6..d612b90 100644 --- a/configure.usage +++ b/configure.usage @@ -204,6 +204,8 @@ Debugging options: int, for the fundamental Lisp_Object type; this provides stricter type-checking. Only works with some systems and compilers. +--with-quantify Add support for performance debugging using Quantify. +--with-purify Add support for memory debugging using Purify. Other options: @@ -214,15 +216,13 @@ Other options: --with-dlmalloc Control usage of Doug Lea malloc on systems that have it in the standard C library (default is to use it if it is available). +--with-system-malloc Force use of the system malloc, rather than GNU malloc. +--with-debug-malloc Use the debugging malloc package. --with-clash-detection Use lock files to detect multiple edits of the same file. The default is to not do clash detection. --lockdir=DIR The directory to put clash detection files in, such as `/var/lock/emacs'. Defaults to `${statedir}/xemacs/lock'. ---with-system-malloc Force use of the system malloc, rather than GNU malloc. ---with-debug-malloc Use the debugging malloc package. ---with-quantify Add support for performance debugging using Quantify. ---with-purify Add support for memory debugging using Purify. You may also specify any of the `path' variables found in Makefile.in, including --bindir, --libdir, --lispdir, --sitelispdir, --datadir, diff --git a/etc/BETA b/etc/BETA index a6658c1..b5babd1 100644 --- a/etc/BETA +++ b/etc/BETA @@ -224,6 +224,10 @@ Patches to XEmacs should be mailed to . Each patch will be reviewed by the patches review board, and will be acked and added to the distribution, or rejected with an explanation. +Patches to XEmacs Lisp packages should be sent to the maintainer of +the package. If the maintainer is listed as `XEmacs Development Team' +patches should be sent to . + Emailed patches should preferably be sent in MIME format and quoted printable encoding (if necessary). diff --git a/etc/PACKAGES b/etc/PACKAGES index 598c097..138ea65 100644 --- a/etc/PACKAGES +++ b/etc/PACKAGES @@ -1,7 +1,7 @@ * Description of available packages by category =============================================== -This data is up-to-date as of 13 January 1998. +This data is up-to-date as of 10 February 1999. ** Library Packages (libs) ========================== @@ -12,8 +12,7 @@ when adding new files there as it is required by almost everything. *** Sun -Support for Sparcworks. Must be installed prior to XEmacs build to be -effective. +Support for Sparcworks. *** apel @@ -38,8 +37,7 @@ Fundamental lisp files for providing email support. *** tooltalk -Support for building with Tooltalk. Must be installed prior to XEmacs -build to be effective. +Support for building with Tooltalk. *** xemacs-base @@ -101,7 +99,7 @@ Emacs MIME support. *** vm -An Emacs mailer. This package must be installed prior to building XEmacs. +An Emacs mailer. *** w3 @@ -280,8 +278,7 @@ Support for editing shell scripts. *** vc -Version Control for Free systems. This package must be installed -prior to building XEmacs. +Version Control for Free systems. *** vc-cc diff --git a/etc/package-index.LATEST.pgp b/etc/package-index.LATEST.pgp index d059441..0ae705e 100644 --- a/etc/package-index.LATEST.pgp +++ b/etc/package-index.LATEST.pgp @@ -1,6 +1,28 @@ ;; Package Index file -- Do not edit manually. ;;;@@@ (package-get-update-base-entry (quote +(ediff + (standards-version 1.0 + version "1.17" + author-version "2.72" + date "1999-02-16" + build-date "1999-03-01" + maintainer "Michael Kifer " + distribution stable + priority medium + category "prog" + dump nil + description "Interface over GNU patch." + filename "ediff-1.17-pkg.tar.gz" + md5sum "b69c621d1943a9b668374f0babd243f3" + size 281481 + provides (ediff) + requires (pcl-cvs elib dired xemacs-base) + type regular +)) +)) +;;;@@@ +(package-get-update-base-entry (quote (hm--html-menus (standards-version 1.0 version "1.12" @@ -157,19 +179,19 @@ (package-get-update-base-entry (quote (mule-base (standards-version 1.0 - version "1.27" - author-version "21.0b62" - date "1998-12-05" - build-date "1999-02-02" + version "1.28" + author-version "21.0b63" + date "1999-02-17" + build-date "1999-03-01" maintainer "SL Baur " distribution mule priority high category "mule" dump t description "Basic Mule support, required for building with Mule." - filename "mule-base-1.27-pkg.tar.gz" - md5sum "7a9732261af6d612e3800c23b3491e41" - size 508690 + filename "mule-base-1.28-pkg.tar.gz" + md5sum "498d725e923476af3df12b83fef6277d" + size 441953 provides (canna-leim canna char-table china-util cyril-util isearch-ext japan-util ccl can-n-egg mule-help) requires (fsf-compat xemacs-base) type regular @@ -223,19 +245,19 @@ (package-get-update-base-entry (quote (text-modes (standards-version 1.0 - version "1.17" - author-version "21.0b62" - date "1998-12-30" - build-date "1999-02-02" + version "1.18" + author-version "21.0b63" + date "1999-02-15" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority high category "oa" dump nil description "Miscellaneous support for editing text files." - filename "text-modes-1.17-pkg.tar.gz" - md5sum "3004046c35c63dd6df85094c2796d020" - size 195328 + filename "text-modes-1.18-pkg.tar.gz" + md5sum "f9d30bd220d0806179397194603b0b0f" + size 207596 provides (autoinsert crontab-edit filladapt fold-isearch folding image-mode iso-acc iso-ascii iso-cvt iso-insert iso-swed swedish tabify whitespace-mode winmgr-mode xpm-mode xrdb-mode) requires (ispell fsf-compat xemacs-base) type regular @@ -399,19 +421,19 @@ (package-get-update-base-entry (quote (calendar (standards-version 1.0 - version "1.09" - author-version "21.0b62" - date "1998-09-01" - build-date "1999-02-02" + version "1.10" + author-version "21.0b63" + date "1999-02-08" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority low category "oa" dump nil description "Calendar and diary support." - filename "calendar-1.09-pkg.tar.gz" - md5sum "92e267eb29597430b85834cc57271e86" - size 248518 + filename "calendar-1.10-pkg.tar.gz" + md5sum "09e93d157d2853a35e735a6a04f54055" + size 248580 provides (appt cal-dst cal-french cal-mayan cal-x cal-xemacs calendar diary-ins diary-lib holidays lunar solar) requires (xemacs-base) type regular @@ -465,19 +487,19 @@ (package-get-update-base-entry (quote (edit-utils (standards-version 1.0 - version "1.36" - author-version "21.0b62" - date "1998-12-30" - build-date "1999-02-02" + version "1.37" + author-version "21.0b63" + date "1999-02-18" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority high category "oa" dump nil description "Miscellaneous editor extensions, you probably need this." - filename "edit-utils-1.36-pkg.tar.gz" - md5sum "c8465a98c57d1c91ccfd2ce1aee3b508" - size 574967 + filename "edit-utils-1.37-pkg.tar.gz" + md5sum "fb7f38fd037c0fa045a199796c69e6d7" + size 577293 provides (abbrevlist atomic-extents avoid backup-dir balloon-help big-menubar blink-cursor blink-paren bookmark compare-w completion dabbrev desktop detached-minibuf edit-toolbar fast-lock file-part floating-toolbar flow-ctrl foldout func-menu hippie-exp icomplete id-select info-look iswitchb lazy-lock lazy-shot live-icon man mic-paren paren popper mode-motion+ outl-mouse page-ext blink-paren paren permanent-buffers recent-files redo reportmail rsz-minibuf saveconfsavehist saveplace scroll-in-place tempo toolbar-utils tree-menu uniquify where-was-i-db) requires (xemacs-base) type single @@ -597,19 +619,19 @@ (package-get-update-base-entry (quote (viper (standards-version 1.0 - version "1.12" - author-version "3.05" - date " to viper-" - build-date "1999-02-02" - maintainer "XEmacs Development Team " + version "1.13" + author-version "3.061" + date "1999-02-17" + build-date "1999-03-01" + maintainer "Michael Kifer " distribution stable priority low category "wp" dump nil description "VI emulation support." - filename "viper-1.12-pkg.tar.gz" - md5sum "ded88cfaad39a6001389918808549efa" - size 317341 + filename "viper-1.13-pkg.tar.gz" + md5sum "b369c53c499c3ab2e1478031ddaf6071" + size 317868 provides (viper) requires (xemacs-base) type regular @@ -795,19 +817,19 @@ (package-get-update-base-entry (quote (vc (standards-version 1.0 - version "1.16" - author-version "21.0b62" - date "1998-10-16" - build-date "1999-02-02" + version "1.17" + author-version "21.0b63" + date "1999-02-25" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority low category "prog" dump nil description "Version Control for Free systems." - filename "vc-1.16-pkg.tar.gz" - md5sum "59229957e35e7109cb92407cf9c9dcaf" - size 84381 + filename "vc-1.17-pkg.tar.gz" + md5sum "4e80458c0e6d4cf2805ed6a46135e1c6" + size 84499 provides (vc) requires (dired xemacs-base) type regular @@ -883,19 +905,19 @@ (package-get-update-base-entry (quote (prog-modes (standards-version 1.0 - version "1.17" - author-version "21.0b62" - date "1998-12-30" - build-date "1999-02-02" + version "1.18" + author-version "21.0b63" + date "1999-02-05" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority medium category "prog" dump nil description "Support for various programming languages." - filename "prog-modes-1.17-pkg.tar.gz" - md5sum "23daac543cf9622f12fab0aff788ba26" - size 594744 + filename "prog-modes-1.18-pkg.tar.gz" + md5sum "b6b86a7a88544c54e5231e11e0a9af79" + size 595658 provides (autoconf-mode cperl-mode eiffel3 f90 fortran ksh-mode m4-mode makefile perl-mode postscript python-mode rexx-mode simula-mode tcl teco verilog-mod) requires (mail-lib xemacs-devel xemacs-base) type regular @@ -949,19 +971,19 @@ (package-get-update-base-entry (quote (c-support (standards-version 1.0 - version "1.10" - author-version "21.0b62" - date "1998-03-25" - build-date "1999-02-02" + version "1.11" + author-version "21.0b63" + date "1999-02-06" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution contrib priority low category "prog" dump nil description "Basic single-file add-ons for editing C code." - filename "c-support-1.10-pkg.tar.gz" - md5sum "40abc17d38e4a4a206cfc6b1eb0f6a8e" - size 69812 + filename "c-support-1.11-pkg.tar.gz" + md5sum "d93566b09c3d9e79ac12a644250e7ca0" + size 69876 provides (c-comment-edit cmacexp ctypes hideif hideshow) requires (cc-mode xemacs-base) type regular @@ -1191,19 +1213,19 @@ (package-get-update-base-entry (quote (tm (standards-version 1.0 - version "1.16" - author-version "21.0b62" - date "1998-08-27" - build-date "1999-02-02" + version "1.17" + author-version "21.0b63" + date "1999-02-06" + build-date "1999-02-06" maintainer "XEmacs Development Team " distribution stable priority low category "comm" dump nil description "Emacs MIME support." - filename "tm-1.16-pkg.tar.gz" - md5sum "e8a3e6856d5fcfc674f95bc5b82a343e" - size 329571 + filename "tm-1.17-pkg.tar.gz" + md5sum "ee33e9f5fb4cd461e19e5ff23b4a3ea2" + size 329581 provides (tm tm-edit tm-view mime-setup) requires (gnus mh-e rmail vm mailcrypt mail-lib apel xemacs-base) type regular @@ -1213,19 +1235,19 @@ (package-get-update-base-entry (quote (gnus (standards-version 1.0 - version "1.37" + version "1.38" author-version "5.6.45" - date "1998-09-25" - build-date "1999-02-02" + date "1999-02-17" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority medium category "comm" dump nil description "The Gnus Newsreader and Mailreader." - filename "gnus-1.37-pkg.tar.gz" - md5sum "8af2b47c6ebbe850d7e8c9906aa1611a" - size 1875259 + filename "gnus-1.38-pkg.tar.gz" + md5sum "22f00c391c4680d0a4fe53a5e6b85f40" + size 1869217 provides (gnus message) requires (gnus tm apel w3 mh-e mailcrypt rmail mail-lib xemacs-base) type regular @@ -1367,19 +1389,19 @@ (package-get-update-base-entry (quote (eudc (standards-version 1.0 - version "1.27" - author-version "1.26" - date "1998-12-14" - build-date "1999-02-02" + version "1.28" + author-version "1.28" + date "1999-02-13" + build-date "1999-03-01" maintainer "Oscar Figueiredo " distribution stable priority low category "comm" dump nil description "Emacs Unified Directory Client (LDAP, PH)." - filename "eudc-1.27-pkg.tar.gz" - md5sum "60dfa739f2949117e7d7a5e382383419" - size 60248 + filename "eudc-1.28-pkg.tar.gz" + md5sum "e88e7ed791d16105824812edcd743bc6" + size 62476 provides (eudc eudc-ldap eudc-ph) requires (fsf-compat xemacs-base bbdb) type regular @@ -1411,19 +1433,19 @@ (package-get-update-base-entry (quote (w3 (standards-version 1.0 - version "1.11" - author-version "4.0pre23" - date "1998-07-18" - build-date "1999-02-02" + version "1.12" + author-version "4.0pre39" + date "1999-01-08" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution experimental priority high category "comm" dump nil description "A Web browser." - filename "w3-1.11-pkg.tar.gz" - md5sum "98237890a9a0ba5b76b2daf1129b2384" - size 612581 + filename "w3-1.12-pkg.tar.gz" + md5sum "e7afce350e99f71dfde7ec752290670c" + size 679826 provides (w3 url) requires (w3 mail-lib xemacs-base) type regular @@ -1433,19 +1455,19 @@ (package-get-update-base-entry (quote (vm (standards-version 1.0 - version "1.15" - author-version "6.62" + version "1.16" + author-version "6.67" date "1998-09-22" - build-date "1999-02-02" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution stable priority medium category "comm" dump nil description "An Emacs mailer." - filename "vm-1.15-pkg.tar.gz" - md5sum "732ed51ac098cf14a7a164db9cd88f2d" - size 548653 + filename "vm-1.16-pkg.tar.gz" + md5sum "e5ad7011473b17f7d1e9521407199b64" + size 603773 provides (vm) requires (mail-lib xemacs-base) type regular @@ -1609,19 +1631,19 @@ (package-get-update-base-entry (quote (apel (standards-version 1.0 - version "1.08" + version "1.09" author-version "3.3" date "1998-07-23" - build-date "1999-02-02" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution mule priority high category "libs" dump nil description "A Portable Emacs Library. Used by XEmacs MIME support." - filename "apel-1.08-pkg.tar.gz" - md5sum "125d8a29874f82ba1b1900848869e3c3" - size 34725 + filename "apel-1.09-pkg.tar.gz" + md5sum "2030f4f38ef76da3104f77f36b797916" + size 35302 provides (atype emu-20 emu-e19 emu-x20 emu-xemacs emu file-detect filename install mule-caesar path-util richtext std11-parse std11 tinyrich) requires (fsf-compat xemacs-base) type regular @@ -1719,19 +1741,19 @@ (package-get-update-base-entry (quote (xemacs-base (standards-version 1.0 - version "1.29" - author-version "21.0b62" - date "1998-12-05" - build-date "1999-02-02" + version "1.30" + author-version "21.0b63" + date "1998-11-30" + build-date "1999-03-01" maintainer "XEmacs Development Team " distribution mule priority high category "libs" dump nil description "Fundamental XEmacs support, you almost certainly need this." - filename "xemacs-base-1.29-pkg.tar.gz" - md5sum "da907ff396bc3d1143a7d2f5142f5dd2" - size 430466 + filename "xemacs-base-1.30-pkg.tar.gz" + md5sum "e0c4ffb2561c10755c8132b2b88e11b2" + size 430503 provides (add-log advice annotations assoc case-table chistory comint-xemacs comint compile debug ebuff-menu echistory edmacro ehelp electric enriched env facemenu ffap helper imenu iso-syntax macros novice outline overlay passwd pp regi ring shell skeleton sort thing time-stamp timezone xbm-button xpm-button) requires () type regular diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index a2d2860..581ff01 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,3 +1,21 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + +1999-02-17 SL Baur + + * update-elc.sh (ignore_dirs): Ignore lisp/mule subdirectory when + running latin-1 XEmacs. Eliminate 20.4 bundled kludges. + * update-custom.sh (ignore_dirs): Ditto. + +1999-02-15 Martin Buchholz + + * update-elc.sh: + * update-autoloads.sh: + * update-custom.sh: + - improved automounter tmp directory support. + - support 4 (!) empirically discovered automounter conventions + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/lib-src/config.values.in b/lib-src/config.values.in index 6e2c24b..a816455 100644 --- a/lib-src/config.values.in +++ b/lib-src/config.values.in @@ -43,6 +43,8 @@ LN_S "@LN_S@" LOCKDIR "@LOCKDIR@" LOCKDIR_USER_DEFINED "@LOCKDIR_USER_DEFINED@" MAKE_SUBDIR "@MAKE_SUBDIR@" +MODULEDIR "@MODULEDIR@" +MODULEDIR_USER_DEFINED "@MODULEDIR_USER_DEFINED@" PACKAGE_PATH "@PACKAGE_PATH@" PACKAGE_PATH_USER_DEFINED "@PACKAGE_PATH_USER_DEFINED@" PREFIX "@PREFIX@" @@ -50,8 +52,13 @@ PROGNAME "@PROGNAME@" RANLIB "@RANLIB@" RECURSIVE_MAKE "@RECURSIVE_MAKE@" SET_MAKE "@SET_MAKE@" +SITELISPDIR "@SITELISPDIR@" +SITELISPDIR_USER_DEFINED "@SITELISPDIR_USER_DEFINED@" +SITEMODULEDIR "@SITEMODULEDIR@" +SITEMODULEDIR_USER_DEFINED "@SITEMODULEDIR_USER_DEFINED@" SRC_SUBDIR_DEPS "@SRC_SUBDIR_DEPS@" SUBDIR_MAKEFILES "@SUBDIR_MAKEFILES@" +XEMACS_CC "@XEMACS_CC@" X_CFLAGS "@X_CFLAGS@" X_EXTRA_LIBS "@X_EXTRA_LIBS@" X_LIBS "@X_LIBS@" @@ -70,8 +77,9 @@ configure_input "@configure_input@" datadir "@datadir@" dll_cflags "@dll_cflags@" dll_ld "@dll_ld@" -dll_lflags "@dll_lflags@" -dll_oflags "@dll_oflags@" +dll_ldflags "@dll_ldflags@" +dll_ldo "@dll_ldo@" +dll_post "@dll_post@" dnd_objs "@dnd_objs@" docdir "@docdir@" dynodump_arch "@dynodump_arch@" @@ -102,6 +110,7 @@ lockdir "@lockdir@" lwlib_objs "@lwlib_objs@" machfile "@machfile@" mandir "@mandir@" +moduledir "@moduledir@" native_sound_lib "@native_sound_lib@" oldincludedir "@oldincludedir@" opsysfile "@opsysfile@" @@ -111,6 +120,8 @@ prefix "@prefix@" program_transform_name "@program_transform_name@" sbindir "@sbindir@" sharedstatedir "@sharedstatedir@" +sitelispdir "@sitelispdir@" +sitemoduledir "@sitemoduledir@" sound_cflags "@sound_cflags@" srcdir "@srcdir@" start_files "@start_files@" diff --git a/lib-src/update-autoloads.sh b/lib-src/update-autoloads.sh index 6af202c..ee56e65 100644 --- a/lib-src/update-autoloads.sh +++ b/lib-src/update-autoloads.sh @@ -43,14 +43,24 @@ echo " (using $EMACS)" export EMACS -REAL=`cd \`dirname $EMACS\` ; pwd | sed 's|^/tmp_mnt||'`/`basename $EMACS` +EMACS_DIR=`cd \`dirname $EMACS\` && pwd`; +CANON_PWD=`pwd` +# Account for various system automounter configurations +if test -d "/net"; then + if test -d "/tmp_mnt/net"; then tdir="/tmp_mnt/net"; else tdir="/tmp_mnt"; fi + EMACS_DIR=`echo "$EMACS_DIR" | \ + sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` + CANON_PWD=`echo "$CANON_PWD" | \ + sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` +fi +REAL="$EMACS_DIR/`basename $EMACS`" -echo "Rebuilding autoloads in `pwd|sed 's|^/tmp_mnt||'`" +echo "Rebuilding autoloads in $CANON_PWD" echo " with $REAL..." if [ "`uname -r | sed 's/\(.\).*/\1/'`" -gt 4 ]; then echon() - { + { /bin/echo $* '\c' } else diff --git a/lib-src/update-custom.sh b/lib-src/update-custom.sh index 7e0a2ea..dd62a86 100755 --- a/lib-src/update-custom.sh +++ b/lib-src/update-custom.sh @@ -45,13 +45,20 @@ echo " (using $EMACS)" export EMACS -REAL=`cd \`dirname $EMACS\` ; pwd | sed 's|^/tmp_mnt||'`/`basename $EMACS` +EMACS_DIR=`cd \`dirname $EMACS\` && pwd`; +# Account for various system automounter configurations +if test -d "/net"; then + if test -d "/tmp_mnt/net"; then tdir="/tmp_mnt/net"; else tdir="/tmp_mnt"; fi + EMACS_DIR=`echo "$EMACS_DIR" | \ + sed -e "s|^${tdir}/|/net/|" -e "s|^/a/|/net/|" -e "s|^/amd/|/net/|"` +fi +REAL="$EMACS_DIR/`basename $EMACS`" echo "Rebuilding custom-loads with $REAL..." if [ "`uname -r | sed 's/\(.\).*/\1/'`" -gt 4 ]; then echon() - { + { /bin/echo $* '\c' } else @@ -62,12 +69,7 @@ else fi # Compute patterns to ignore when searching for files -# These directories don't have customizations, or are partially broken. -# If some of the packages listed here are customized, don't forget to -# remove the directory! -ignore_dirs="cl egg eos its language locale sunpro term \ -tooltalk iso electric \ -hm--html-menus gnats pcl-cvs vm" +ignore_dirs="" # Only use Mule XEmacs to build Mule-specific autoloads & custom-loads. echon "Checking for Mule support..." @@ -75,7 +77,7 @@ lisp_prog='(princ (featurep (quote mule)))' mule_p="`$EMACS -batch -q -no-site-file -eval \"$lisp_prog\"`" if test "$mule_p" = nil ; then echo No - ignore_dirs="$ignore_dirs mule leim skk" + ignore_dirs="$ignore_dirs mule" else echo Yes fi diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 94ae391..1da4016 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,84 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + +1999-02-22 Jan Vroonhof + + * userlock.el (ask-user-about-supersession-threat-dbox): Guard + against window close (Fix Bug #460). + (ask-user-about-lock-dbox): Idem. + +1999-02-25 SL Baur + + * mule/mule-charset.el (charset-leading-byte): New function. + From Kazuyuki IENAGA + +1999-02-12 Andy Piper + + * about.el (xemacs-hackers): change andy's email address. + (about-url-alist): change andy's web page address. + (about-xemacs): add piper. + +1999-02-16 SL Baur + + * dumped-lisp.el (preloaded-file-list): Core mule files moved out + of mule-base into lisp/mule. + +1999-02-16 SL Baur + + * mule/arabic.el: + mule/canna-leim.el: + mule/chinese.el: + mule/cyrillic.el: + mule/english.el: + mule/european.el: + mule/greek.el: + mule/hebrew.el: + mule/japanese.el: + mule/kinsoku.el: + mule/korean.el: + mule/misc-lang.el: + mule/mule-category.el: + mule/mule-ccl.el: + mule/mule-charset.el: + mule/mule-cmds.el: + mule/mule-coding.el: + mule/mule-files.el: + mule/mule-help.el: + mule/mule-init.el: + mule/mule-misc.el: + mule/mule-tty-init.el: + mule/mule-x-init.el: + mule/viet-chars.el: Remerge from mule-base. + + * dumped-lisp.el (preloaded-file-list): Core mule files moved out + of mule-base into lisp/mule. + +1999-02-10 Adrian Aichner + + * process.el (exec-to-string): Use `shell-command-switch' in place + of hard-wired "-c" (for WindowsNT). + +1999-02-08 Charles G Waldman + + * menubar-items.el (default-menubar): Remove obsolete + "Gopher" item + +1999-02-06 Jan Vroonhof + + * package-admin.el (package-admin-get-install-dir): First fall + back to the location of xemacs-base for non-mule packages. + +1999-02-15 Martin Buchholz + + * paths.el: + - improved automounter tmp directory support. + - support 4 (!) empirically discovered automounter conventions + +1999-02-12 SL Baur + + * etags.el (pop-tag-mark): autoload to match key binding. + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/lisp/about.el b/lisp/about.el index 9f5d27b..959887e 100644 --- a/lisp/about.el +++ b/lisp/about.el @@ -283,7 +283,7 @@ developers responsible for this release are:\n\n") :value who) (widget-insert (format " <%s>\n" address))))) ;; Setup persons responsible for this release. - (mapc 'setup-person '(slb hniksic kyle martin)) + (mapc 'setup-person '(slb hniksic kyle martin piper)) (widget-insert "\n\t* ") (widget-create 'link :help-echo "A legion of XEmacs hackers" :action 'about-hackers diff --git a/lisp/auto-autoloads.el b/lisp/auto-autoloads.el index fb49fe1..c77939e 100644 --- a/lisp/auto-autoloads.el +++ b/lisp/auto-autoloads.el @@ -254,7 +254,7 @@ This is equivalent to `(return-from nil RESULT)'." nil 'macro) (autoload 'return-from "cl-macs" "\ (return-from NAME [RESULT]): return from the block named NAME. -This jump out to the innermost enclosing `(block NAME ...)' form, +This jumps out to the innermost enclosing `(block NAME ...)' form, returning RESULT from that form (or nil if RESULT is omitted). This is compatible with Common Lisp, but note that `defun' and `defmacro' do not create implicit blocks as they do in Common Lisp." nil 'macro) @@ -744,7 +744,7 @@ With prefix argument, enable European character display iff arg is positive." t ;;;*** -;;;### (autoloads (tags-apropos list-tags tags-query-replace tags-search tags-loop-continue next-file tag-complete-symbol find-tag-other-window find-tag visit-tags-table) "etags" "lisp/etags.el") +;;;### (autoloads (pop-tag-mark tags-apropos list-tags tags-query-replace tags-search tags-loop-continue next-file tag-complete-symbol find-tag-other-window find-tag visit-tags-table) "etags" "lisp/etags.el") (autoload 'visit-tags-table "etags" "\ Tell tags commands to use tags table file FILE when all else fails. @@ -844,6 +844,11 @@ Display list of tags in FILE." t nil) Display list of all tags in tag table REGEXP matches." t nil) (define-key esc-map "*" 'pop-tag-mark) +(autoload 'pop-tag-mark "etags" "\ +Go to last tag position. +`find-tag' maintains a mark-stack seperate from the \\[set-mark-command] mark-stack. +This function pops (and moves to) the tag at the top of this stack." t nil) + ;;;*** ;;;### (autoloads (finder-by-keyword) "finder" "lisp/finder.el") diff --git a/lisp/custom-load.el b/lisp/custom-load.el index 44c31352..cc40648 100644 --- a/lisp/custom-load.el +++ b/lisp/custom-load.el @@ -35,10 +35,12 @@ (custom-add-loads 'help '("help" "cus-edit" "hyper-apropos" "info")) (custom-add-loads 'keyboard '("cmdloop")) (custom-add-loads 'hyper-apropos-faces '("hyper-apropos")) +(custom-add-loads 'ldap '("ldap")) (custom-add-loads 'widget-browse '("wid-browse")) (custom-add-loads 'data '("auto-save")) (custom-add-loads 'warnings '("simple")) (custom-add-loads 'widget-documentation '("wid-edit")) +(custom-add-loads 'comm '("ldap")) (custom-add-loads 'backup '("files")) (custom-add-loads 'frames '("frame" "window-xemacs" "gui" "gnuserv")) (custom-add-loads 'customize '("cus-edit" "wid-edit")) diff --git a/lisp/dumped-lisp.el b/lisp/dumped-lisp.el index cbbecfb..290991b 100644 --- a/lisp/dumped-lisp.el +++ b/lisp/dumped-lisp.el @@ -126,11 +126,11 @@ (when-feature mule "arabic") (when-feature mule "chinese") - (when-feature mule "mule-base/cyrillic") ; overloaded in leim/quail + (when-feature mule "mule/cyrillic") ; overloaded in leim/quail (when-feature mule "english") ;; (when-feature mule "ethiopic") (when-feature mule "european") - (when-feature mule "mule-base/greek") ; overloaded in leim/quail + (when-feature mule "mule/greek") ; overloaded in leim/quail (when-feature mule "hebrew") (when-feature mule "japanese") (when-feature mule "korean") diff --git a/lisp/etags.el b/lisp/etags.el index f00f8fa..00180d6 100644 --- a/lisp/etags.el +++ b/lisp/etags.el @@ -1189,6 +1189,7 @@ and `\\[pop-tag-mark]'." ;;;###autoload (define-key esc-map "*" 'pop-tag-mark) +;;;###autoload (defun pop-tag-mark (arg) "Go to last tag position. `find-tag' maintains a mark-stack seperate from the \\[set-mark-command] mark-stack. @@ -1203,3 +1204,5 @@ This function pops (and moves to) the tag at the top of this stack." (provide 'etags) (provide 'tags) + +;;; etags.el ends here diff --git a/lisp/menubar-items.el b/lisp/menubar-items.el index 7879ea0..462aea8 100644 --- a/lisp/menubar-items.el +++ b/lisp/menubar-items.el @@ -176,8 +176,6 @@ :active (fboundp 'gnus)] ["Browse the Web" w3 :active (fboundp 'w3)] - ["Gopher" gopher - :active (fboundp 'gopher)] "----" ["Spell-Check Buffer" ispell-buffer :active (fboundp 'ispell-buffer)] diff --git a/lisp/mule/arabic.el b/lisp/mule/arabic.el new file mode 100644 index 0000000..c9c82b0 --- /dev/null +++ b/lisp/mule/arabic.el @@ -0,0 +1,67 @@ +;;; arabic.el --- pre-loaded support for Arabic. + +;; Copyright (C) 1992,93,94,95 Free Software Foundation, Inc. +;; Copyright (C) 1995 Amdahl Corporation. +;; Copyright (C) 1995 Sun Microsystems. + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: + +;; Synched up with: Mule 2.3. + +;;; Code: + +;; Three character sets for Arabic +(make-charset 'arabic-digit "Arabic digits" + '(registry "MuleArabic-0" + dimension 1 + chars 94 + final ?2 + graphic 0 + direction l2r + )) + +(make-charset 'arabic-1-column "Arabic 1-column" + '(registry "MuleArabic-1" + dimension 1 + chars 94 + final ?3 + graphic 0 + direction r2l + )) + +(make-charset 'arabic-2-column "Arabic 2-column" + '(registry "MuleArabic-2" + dimension 1 + chars 94 + final ?4 + graphic 0 + direction r2l + )) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ARABIC +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (define-language-environment 'arabic +;; "Arabic" +;; (lambda () +;; (require 'arabic))) + +;;; arabic.el ends here diff --git a/lisp/mule/canna-leim.el b/lisp/mule/canna-leim.el new file mode 100644 index 0000000..2754c51 --- /dev/null +++ b/lisp/mule/canna-leim.el @@ -0,0 +1,55 @@ +;;; canna-leim.el --- Canna-related code for LEIM +;; Copyright (C) 1997 Stephen Turnbull +;; Copyright (C) 1997 Free Software Foundation, Inc. +;; +;; Shamelessly ripped off from +;; +;; skk-leim.el --- SKK related code for LEIM +;; Copyright (C) 1997 +;; Murata Shuuichirou +;; +;; Author: Stephen Turnbull +;; Version: canna-leim.el,v 1.2 1997/10/27 10:08:49 steve Exp +;; Keywords: japanese, input method, LEIM +;; Last Modified: 1997/10/27 10:08:49 + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either versions 2, or (at your option) +;; any later version. + +;; This program is distributed in the hope that it will be useful +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs, see the file COPYING. If not, write to the Free +;; Software Foundation Inc., 59 Temple Place - Suite 330, Boston, +;; MA 02111-1307, USA. + +;;; TODO +;; +;; Add pointers to Canna documentation in LEIM format + +(defun canna-activate (&optional name) + (if (featurep 'CANNA) + (require 'canna) + (error "Canna is not built into this XEmacs")) + (setq inactivate-current-input-method-function 'canna-inactivate) + (unless (featurep 'leim-canna-initialized) + (canna) + (provide 'leim-canna-initialized)) + (canna-toggle-japanese-mode)) + +(defun canna-inactivate () + (cond (canna:*japanese-mode* (canna-toggle-japanese-mode))) ) + +(register-input-method + 'japanese-canna "Japanese" + 'canna-activate nil + "Canna - a kana to kanji conversion program" ) + +(provide 'canna-leim) + +;;; canna-leim.el ends here diff --git a/lisp/mule/cyrillic.el b/lisp/mule/cyrillic.el new file mode 100644 index 0000000..24322f8 --- /dev/null +++ b/lisp/mule/cyrillic.el @@ -0,0 +1,294 @@ +;;; cyrillic.el --- Support for languages which use Cyrillic characters + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, Cyrillic + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +;; 02111-1307, USA. + +;;; Commentary: + +;; The character set ISO8859-5 is supported. KOI-8 and ALTERNATIVNYJ +;; are converted to ISO8859-5 internally. + +;;; Code: + +;; For syntax of Cyrillic +(modify-syntax-entry 'cyrillic-iso8859-5 "w") +(modify-syntax-entry ?,L-(B ".") +(modify-syntax-entry ?,Lp(B ".") +(modify-syntax-entry ?,L}(B ".") + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; CYRILLIC +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (define-prefix-command 'describe-cyrillic-environment-map) +;; (define-key-after describe-language-environment-map [Cyrillic] +;; '("Cyrillic" . describe-cyrillic-environment-map) +;; t) + +;; (define-prefix-command 'setup-cyrillic-environment-map) +;; (define-key-after setup-language-environment-map [Cyrillic] +;; '("Cyrillic" . setup-cyrillic-environment-map) +;; t) + + +;; ISO-8859-5 staff + +;; (make-coding-system +;; 'cyrillic-iso-8bit 2 ?5 +;; "ISO 2022 based 8-bit encoding for Cyrillic script (MIME:ISO-8859-5)" +;; '((ascii t) (cyrillic-iso8859-5 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil)) + +;; (define-coding-system-alias 'iso-8859-5 'cyrillic-iso-8bit) + +(make-coding-system + 'iso-8859-5 'iso2022 + "MIME ISO-8859-5" + '(charset-g0 ascii + charset-g1 cyrillic-iso8859-5 + charset-g2 t + charset-g3 t + mnemonic "ISO8/Cyr" + )) + +(set-language-info-alist + "Cyrillic-ISO" '((setup-function . (setup-cyrillic-iso-environment + . setup-cyrillic-environment-map)) + (charset . (cyrillic-iso8859-5)) + (tutorial . "TUTORIAL.ru") + (coding-system . (iso-8859-5)) + (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") + (documentation . ("Support for Cyrillic ISO-8859-5." + . describe-cyrillic-environment-map)))) + +;; KOI-8 staff + +(define-ccl-program ccl-decode-koi8 + '(3 + ((read r0) + (loop + (write-read-repeat + r0 + [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 + 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 + 32 32 32 ?,Lq(B 32 32 32 32 32 32 32 32 32 32 32 32 + 32 32 32 ?,L!(B 32 32 32 32 32 32 32 32 32 32 32 32 + ?,Ln(B ?,LP(B ?,LQ(B ?,Lf(B ?,LT(B ?,LU(B ?,Ld(B ?,LS(B ?,Le(B ?,LX(B ?,LY(B ?,LZ(B ?,L[(B ?,L\(B ?,L](B ?,L^(B + ?,L_(B ?,Lo(B ?,L`(B ?,La(B ?,Lb(B ?,Lc(B ?,LV(B ?,LR(B ?,Ll(B ?,Lk(B ?,LW(B ?,Lh(B ?,Lm(B ?,Li(B ?,Lg(B ?,Lj(B + ?,LN(B ?,L0(B ?,L1(B ?,LF(B ?,L4(B ?,L5(B ?,LD(B ?,L3(B ?,LE(B ?,L8(B ?,L9(B ?,L:(B ?,L;(B ?,L<(B ?,L=(B ?,L>(B + ?,L?(B ?,LO(B ?,L@(B ?,LA(B ?,LB(B ?,LC(B ?,L6(B ?,L2(B ?,LL(B ?,LK(B ?,L7(B ?,LH(B ?,LM(B ?,LI(B ?,LG(B ?,LJ(B ])))) + "CCL program to decode KOI8.") + +(define-ccl-program ccl-encode-koi8 + `(1 + ((read r0) + (loop + (if (r0 != ,(charset-id 'cyrillic-iso8859-5)) + (write-read-repeat r0) + ((read r0) + (r0 -= 160) + (write-read-repeat + r0 + [ 32 179 32 32 32 32 32 32 32 32 32 32 32 32 32 32 + 225 226 247 231 228 229 246 250 233 234 235 236 237 238 239 240 + 242 243 244 245 230 232 227 254 251 253 255 249 248 252 224 241 + 193 194 215 199 196 197 214 218 201 202 203 204 205 206 207 208 + 210 211 212 213 198 200 195 222 219 221 223 217 216 220 192 209 + 32 163 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) + ))))) + "CCL program to encode KOI8.") + +;(make-coding-system +; 'cyrillic-koi8 4 +; ;; We used to use ?K. It is true that ?K is more strictly correct, +; ;; but it is also used for Korean. +; ;; So people who use koi8 for languages other than Russian +; ;; will have to forgive us. +; ?R "KOI8 8-bit encoding for Cyrillic (MIME: KOI8-R)" +; (cons ccl-decode-koi8 ccl-encode-koi8)) + +;(define-coding-system-alias 'koi8-r 'cyrillic-koi8) +;(define-coding-system-alias 'koi8 'cyrillic-koi8) + +(make-coding-system + 'koi8-r 'ccl + "Coding-system used for KOI8-R." + `(decode ,ccl-decode-koi8 + encode ,ccl-encode-koi8 + mnemonic "KOI8")) + +;(define-coding-system-alias 'koi8-r 'koi8) + +;; (define-ccl-program ccl-encode-koi8-font +;; '(0 +;; ((r1 -= 160) +;; (r1 = r1 +;; [ 32 179 32 32 32 32 32 32 32 32 32 32 32 32 32 32 +;; 225 226 247 231 228 229 246 250 233 234 235 236 237 238 239 240 +;; 242 243 244 245 230 232 227 254 251 253 255 249 248 252 224 241 +;; 193 194 215 199 196 197 214 218 201 202 203 204 205 206 207 208 +;; 210 211 212 213 198 200 195 222 219 221 223 217 216 220 192 209 +;; 32 163 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) +;; )) +;; "CCL program to encode Cyrillic chars to KOI font.") + +;; (setq font-ccl-encoder-alist +;; (cons (cons "koi8" ccl-encode-koi8-font) font-ccl-encoder-alist)) + +(set-language-info-alist + "Cyrillic-KOI8" '((setup-function . (setup-cyrillic-koi8-environment + . setup-cyrillic-environment-map)) + (charset . (cyrillic-iso8859-5)) + (coding-system . (koi8-r)) + (tutorial . "TUTORIAL.ru") + (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") + (documentation . ("Support for Cyrillic KOI-8." + . describe-cyrillic-environment-map)))) + +;;; ALTERNATIVNYJ staff + +(define-ccl-program ccl-decode-alternativnyj + '(3 + ((read r0) + (loop + (write-read-repeat + r0 + [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 + ?,L0(B ?,L1(B ?,L2(B ?,L3(B ?,L4(B ?,L5(B ?,L6(B ?,L7(B ?,L8(B ?,L9(B ?,L:(B ?,L;(B ?,L<(B ?,L=(B ?,L>(B ?,L?(B + ?,L@(B ?,LA(B ?,LB(B ?,LC(B ?,LD(B ?,LE(B ?,LF(B ?,LG(B ?,LH(B ?,LI(B ?,LJ(B ?,LK(B ?,LL(B ?,LM(B ?,LN(B ?,LO(B + ?,LP(B ?,LQ(B ?,LR(B ?,LS(B ?,LT(B ?,LU(B ?,LV(B ?,LW(B ?,LX(B ?,LY(B ?,LZ(B ?,L[(B ?,L\(B ?,L](B ?,L^(B ?,L_(B + 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 + 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 + 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 + ?,L`(B ?,La(B ?,Lb(B ?,Lc(B ?,Ld(B ?,Le(B ?,Lf(B ?,Lg(B ?,Lh(B ?,Li(B ?,Lj(B ?,Lk(B ?,Ll(B ?,Lm(B ?,Ln(B ?,Lo(B + ?,L!(B ?,Lq(B 32 32 32 32 32 32 32 32 32 32 32 32 32 ?,Lp(B])))) + "CCL program to decode Alternativnyj.") + +(define-ccl-program ccl-encode-alternativnyj + `(1 + ((read r0) + (loop + (if (r0 != ,(charset-id 'cyrillic-iso8859-5)) + (write-read-repeat r0) + ((read r0) + (r0 -= 160) + (write-read-repeat + r0 + [ 32 240 32 32 32 32 32 32 32 32 32 32 32 32 32 32 + 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 + 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 + 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 + 255 241 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) + ))))) + "CCL program to encode Alternativnyj.") + +;; (make-coding-system +;; 'alternativnyj 4 +;; ?A "Coding-system used for Alternativnyj" +;; (cons ccl-decode-alternativnyj ccl-encode-alternativnyj)) + +(make-coding-system + 'alternativnyj 'ccl + "Coding-system used for Alternativnyj" + `(decode ,ccl-decode-alternativnyj + encode ,ccl-encode-alternativnyj + mnemonic "Cy.Alt")) + +;; (define-ccl-program ccl-encode-alternativnyj-font +;; '(0 +;; ((r1 -= 160) +;; (r1 = r1 +;; [ 32 240 32 32 32 32 32 32 32 32 32 32 32 32 32 32 +;; 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 +;; 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 +;; 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 +;; 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 +;; 255 241 32 32 32 32 32 32 32 32 32 32 32 32 32 32]) +;; )) +;; "CCL program to encode Cyrillic chars to Alternativnyj font.") + +;; (setq font-ccl-encoder-alist +;; (cons (cons "alternativnyj" ccl-encode-alternativnyj-font) +;; font-ccl-encoder-alist)) + +(set-language-info-alist + "Cyrillic-ALT" '((setup-function . (setup-cyrillic-alternativnyj-environment + . setup-cyrillic-environment-map)) + (charset . (cyrillic-iso8859-5)) + (coding-system . (alternativnyj)) + (tutorial . "TUTORIAL.ru") + (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") + (documentation . ("Support for Cyrillic ALTERNATIVNYJ." + . describe-cyrillic-environment-map)))) + +;;; GENERAL + +(defun setup-cyrillic-environment () + "Setup multilingual environment for Cyrillic users." + (interactive) + (setq primary-language "Cyrillic") + + (setq coding-category-iso-8-1 'iso-8859-5) + + (set-coding-priority + '(coding-category-iso-7 + coding-category-iso-8-1)) + + (setq-default buffer-file-coding-system 'iso-8859-5) + (set-terminal-coding-system 'iso-8859-5) + (set-keyboard-coding-system 'iso-8859-5) + + (setq default-input-method '("Cyrillic" . "quail-yawerty")) + ) + +(defun describe-cyrillic-support () + "Describe how Emacs support Cyrillic." + (interactive) + (describe-language-support-internal "Cyrillic")) + +(set-language-info-alist + "Cyrillic" '((setup-function . setup-cyrillic-environment) + (describe-function . describe-cyrillic-support) + (charset . (cyrillic-iso8859-5)) + (tutorial . "TUTORIAL.ru") + (coding-system . (iso-8859-5 koi8-r alternativnyj)) + (sample-text . "Russian (,L@caaZXY(B) ,L7T`PRabRcYbU(B!") + (documentation . nil))) + +;;; cyrillic.el ends here diff --git a/lisp/mule/english.el b/lisp/mule/english.el new file mode 100644 index 0000000..60731be --- /dev/null +++ b/lisp/mule/english.el @@ -0,0 +1,125 @@ +;;; english.el --- English support + +;; Copyright (C) 1997 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multibyte character, character set, syntax, category + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +;; 02111-1307, USA. + +;;; Commentary: + +;; We need nothing special to support English on Emacs. Selecting +;; English as a language environment is one of the ways to reset +;; various multilingual environment to the original settting. + +;; modified for XEmacs by MORIOKA Tomohiko + +;;; Code + +(defun setup-english-environment () + "Reset multilingual environment of Emacs to the default status. +The default status is as follows. + + The default value of enable-multibyte-characters is t. + + The default value of buffer-file-coding-system is nil. + The coding system for terminal output is nil. + The coding system for keyboard input is nil. + + The order of priorities of coding categories and the coding system + bound to each category are as follows + coding category coding system + -------------------------------------------------- + coding-category-iso-7 iso-2022-7bit + coding-category-iso-8-1 iso-8859-1 + coding-category-iso-8-2 iso-8859-1 + coding-category-iso-7-else iso-2022-7bit-lock + coding-category-iso-8-else iso-2022-8bit-ss2 + coding-category-emacs-mule no-conversion + coding-category-sjis japanese-shift-jis + coding-category-big5 chinese-big5 + coding-category-binarry no-conversion +" + (interactive) + ;; (setq-default enable-multibyte-characters t) + + ;; (setq coding-category-iso-7 'iso-2022-7bit + ;; coding-category-iso-8-1 'iso-8859-1 + ;; coding-category-iso-8-2 'iso-8859-1 + ;; coding-category-iso-7-else 'iso-2022-7bit-lock + ;; coding-category-iso-8-else 'iso-2022-8bit-ss2 + ;; coding-category-emacs-mule 'no-conversion + ;; coding-category-sjis 'japanese-shift-jis + ;; coding-category-big5 'chinese-big5 + ;; coding-category-binary 'binary) + (set-coding-category-system 'iso-7 'iso-2022-7bit) + (set-coding-category-system 'iso-8-1 'iso-8859-1) + (set-coding-category-system 'iso-8-2 'iso-8859-1) + (set-coding-category-system 'iso-lock-shift 'iso-2022-lock) + (set-coding-category-system 'iso-8-designate 'ctext) + (set-coding-category-system 'no-conversion 'no-conversion) + (set-coding-category-system 'shift-jis 'shift_jis) + (set-coding-category-system 'big5 'big5) + + ;; (set-coding-priority + ;; '(coding-category-iso-7 + ;; coding-category-iso-8-2 + ;; coding-category-iso-8-1 + ;; coding-category-iso-7-else + ;; coding-category-iso-8-else + ;; coding-category-emacs-mule + ;; coding-category-raw-text + ;; coding-category-sjis + ;; coding-category-big5 + ;; coding-category-binary)) + (set-coding-priority-list + '(iso-7 + iso-8-2 + iso-8-1 + iso-8-designate + iso-lock-shift + no-conversion + shift-jis + big5)) + + (set-default-coding-systems nil) + ;; Don't alter the terminal and keyboard coding systems here. + ;; The terminal still supports the same coding system + ;; that it supported a minute ago. +;;; (set-terminal-coding-system-internal nil) +;;; (set-keyboard-coding-system-internal nil) + + ;;(setq nonascii-insert-offset 0) + ) + +(set-language-info-alist + "English" '((setup-function . setup-english-environment) + (tutorial . "TUTORIAL") + (charset . (ascii)) + (sample-text . "Hello!, Hi!, How are you?") + (documentation . "\ +Nothing special is needed to handle English.") + )) + +;; Make "ASCII" an alias of "English" language environment. +(set-language-info-alist + "ASCII" (cdr (assoc "English" language-info-alist))) + +;;; english.el ends here diff --git a/lisp/mule/european.el b/lisp/mule/european.el new file mode 100644 index 0000000..7feb4e4 --- /dev/null +++ b/lisp/mule/european.el @@ -0,0 +1,386 @@ +;;; european.el --- Support for European languages + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, European + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +;; 02111-1307, USA. + +;;; Commentary: + +;; For Europeans, five character sets ISO8859-1,2,3,4,9 are supported. + +;;; Code: + +;; For syntax of Latin-1 characters. +(loop for c from 64 to 127 ; from ',A@(B' to ',A(B' + do (modify-syntax-entry (make-char 'latin-iso8859-1 c) "w")) + +(modify-syntax-entry (make-char 'latin-iso8859-1 32) "w") ; no-break space +(modify-syntax-entry ?,AW(B "_") +(modify-syntax-entry ?,Aw(B "_") + +;; For syntax of Latin-2 +(loop for c in '(?,B!(B ?,B#(B ?,B%(B ?,B&(B ?,B)(B ?,B*(B ?,B+(B ?,B,(B ?,B.(B ?,B/(B ?,B1(B ?,B3(B ?,B5(B ?,B6(B ?,B9(B ?,B:(B ?,B;(B ?,B<(B) + do (modify-syntax-entry c "w")) + +(loop for c from 62 to 126 + do (modify-syntax-entry (make-char 'latin-iso8859-2 c) "w")) + +(modify-syntax-entry (make-char 'latin-iso8859-2 32) "w") ; no-break space +(modify-syntax-entry ?,BW(B ".") +(modify-syntax-entry ?,Bw(B ".") + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; EUROPEANS +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (define-prefix-command 'describe-european-environment-map) +;; (define-key-after describe-language-environment-map [European] +;; '("European" . describe-european-environment-map) +;; t) + +;; (define-prefix-command 'setup-european-environment-map) +;; (define-key-after setup-language-environment-map [European] +;; '("European" . setup-european-environment-map) +;; t) + +;; Setup for LANGAUGE which uses one-byte 8-bit CHARSET, one-byte +;; 8-bit CODING-SYSTEM, and INPUT-METHOD. +(defun setup-8-bit-environment (language charset coding-system input-method) + (setup-english-environment) + (set-default-coding-systems coding-system) + ;; (setq coding-category-iso-8-1 coding-system + ;; coding-category-iso-8-2 coding-system) + (set-coding-category-system 'iso-8-1 coding-system) + (set-coding-category-system 'iso-8-2 coding-system) + + ;; (if charset + ;; (let ((nonascii-offset (- (make-char charset) 128))) + ;; ;; Set up for insertion of characters in this character set + ;; ;; when codes 0200 - 0377 are typed in. + ;; (setq nonascii-insert-offset nonascii-offset))) + + (if input-method + (setq default-input-method input-method)) + + ;; If this is a Latin-N character set, set up syntax for it in + ;; single-byte mode. We can't use require because the file + ;; must be eval'd each time in case we change from one Latin-N to another. + ;; (if (string-match "^Latin-\\([1-9]\\)$" language) + ;; (load (downcase language) nil t)) + ) + +;; Latin-1 (ISO-8859-1) + +;; (make-coding-system +;; 'iso-latin-1 2 ?1 +;; "ISO 2022 based 8-bit encoding (MIME:ISO-8859-1, Compound Text Encoding)" +;; '((ascii t) (latin-iso8859-1 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil nil nil nil nil nil t)) + +;; (define-coding-system-alias 'iso-8859-1 'iso-latin-1) +;; (define-coding-system-alias 'latin-1 'iso-latin-1) +;; (define-coding-system-alias 'ctext 'iso-latin-1) + +(defun setup-latin1-environment () + "Set up multilingual environment (MULE) for European Latin-1 users." + (interactive) + (setup-8-bit-environment "Latin-1" 'latin-iso8859-1 'iso-8859-1 + "latin-1-prefix")) + +(set-language-info-alist + "Latin-1" '((setup-function . (setup-latin1-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-1)) + (coding-system . (iso-8859-1)) + (sample-text + . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!") + (documentation . ("\ +These languages are supported with the Latin-1 (ISO-8859-1) character set: + Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic, + Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish. +" . describe-european-environment-map)) + )) + +(set-language-info-alist + "German" '((setup-function . (setup-latin1-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-1)) + (coding-system . (iso-8859-1)) + (tutorial . "TUTORIAL.de") + (sample-text + . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!") + (documentation . ("\ +These languages are supported with the Latin-1 (ISO-8859-1) character set: + Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic, + Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish. +" . describe-european-environment-map)) + )) + +(set-language-info-alist + "French" '((setup-function . (setup-latin1-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-1)) + (coding-system . (iso-8859-1)) + (tutorial . "TUTORIAL.fr") + (sample-text + . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!") + (documentation . ("\ +These languages are supported with the Latin-1 (ISO-8859-1) character set: + Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic, + Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish. +" . describe-european-environment-map)) + )) + +(set-language-info-alist + "Norwegian" '((setup-function . (setup-latin1-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-1)) + (coding-system . (iso-8859-1)) + (tutorial . "TUTORIAL.no") + (sample-text + . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!") + (documentation . ("\ +These languages are supported with the Latin-1 (ISO-8859-1) character set: + Danish, Dutch, English, Faeroese, Finnish, French, German, Icelandic, + Irish, Italian, Norwegian, Portuguese, Spanish, and Swedish. +" . describe-european-environment-map)) + )) + +;; Latin-2 (ISO-8859-2) + +;; (make-coding-system +;; 'iso-latin-2 2 ?2 +;; "ISO 2022 based 8-bit encoding (MIME:ISO-8859-2)" +;; '((ascii t) (latin-iso8859-2 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil)) + +;; (define-coding-system-alias 'iso-8859-2 'iso-latin-2) +;; (define-coding-system-alias 'latin-2 'iso-latin-2) + +(make-coding-system + 'iso-8859-2 'iso2022 "MIME ISO-8859-2" + '(charset-g0 ascii + charset-g1 latin-iso8859-2 + charset-g2 t + charset-g3 t + mnemonic "MIME/Ltn-2" + )) + +(defun setup-latin2-environment () + "Set up multilingual environment (MULE) for European Latin-2 users." + (interactive) + (setup-8-bit-environment "Latin-2" 'latin-iso8859-2 'iso-8859-2 + "latin-2-prefix")) + +(set-language-info-alist + "Latin-2" '((setup-function . (setup-latin2-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-2)) + (coding-system . (iso-8859-2)) + (documentation . ("\ +These languages are supported with the Latin-2 (ISO-8859-2) character set: + Albanian, Czech, English, German, Hungarian, Polish, Romanian, + Serbian, Croatian, Slovak, Slovene, and Swedish. +" . describe-european-environment-map)) + )) + +(set-language-info-alist + "Croatian" '((setup-function . (setup-latin2-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-2)) + (tutorial . "TUTORIAL.hr") + (coding-system . (iso-8859-2)) + (documentation . ("\ +These languages are supported with the Latin-2 (ISO-8859-2) character set: + Albanian, Czech, English, German, Hungarian, Polish, Romanian, + Serbian, Croatian, Slovak, Slovene, and Swedish. +" . describe-european-environment-map)) + )) + +(set-language-info-alist + "Polish" '((setup-function . (setup-latin2-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-2)) + (tutorial . "TUTORIAL.pl") + (coding-system . (iso-8859-2)) + (documentation . ("\ +These languages are supported with the Latin-2 (ISO-8859-2) character set: + Albanian, Czech, English, German, Hungarian, Polish, Romanian, + Serbian, Croatian, Slovak, Slovene, and Swedish. +" . describe-european-environment-map)) + )) + +(set-language-info-alist + "Romanian" '((setup-function . (setup-latin2-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-2)) + (tutorial . "TUTORIAL.ro") + (coding-system . (iso-8859-2)) + (documentation . ("\ +These languages are supported with the Latin-2 (ISO-8859-2) character set: + Albanian, Czech, English, German, Hungarian, Polish, Romanian, + Serbian, Croatian, Slovak, Slovene, and Swedish. +" . describe-european-environment-map)) + )) + +;; Latin-3 (ISO-8859-3) + +;; (make-coding-system +;; 'iso-latin-3 2 ?3 +;; "ISO 2022 based 8-bit encoding (MIME:ISO-8859-3)" +;; '((ascii t) (latin-iso8859-3 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil)) + +;; (define-coding-system-alias 'iso-8859-3 'iso-latin-3) +;; (define-coding-system-alias 'latin-3 'iso-latin-3) + +(make-coding-system + 'iso-8859-3 'iso2022 "MIME ISO-8859-3" + '(charset-g0 ascii + charset-g1 latin-iso8859-3 + charset-g2 t + charset-g3 t + mnemonic "MIME/Ltn-3" + )) + +(defun setup-latin3-environment () + "Set up multilingual environment (MULE) for European Latin-3 users." + (interactive) + (setup-8-bit-environment "Latin-3" 'latin-iso8859-3 'iso-8859-3 + "latin-3-prefix")) + +(set-language-info-alist + "Latin-3" '((setup-function . (setup-latin3-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-3)) + (coding-system . (iso-8859-3)) + (documentation . ("\ +These languages are supported with the Latin-3 (ISO-8859-3) character set: + Afrikaans, Catalan, Dutch, English, Esperanto, French, Galician, + German, Italian, Maltese, Spanish, and Turkish. +" . describe-european-environment-map)) + )) + +;; Latin-4 (ISO-8859-4) + +;; (make-coding-system +;; 'iso-latin-4 2 ?4 +;; "ISO 2022 based 8-bit encoding (MIME:ISO-8859-4)" +;; '((ascii t) (latin-iso8859-4 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil)) + +;; (define-coding-system-alias 'iso-8859-4 'iso-latin-4) +;; (define-coding-system-alias 'latin-4 'iso-latin-4) + +(make-coding-system + 'iso-8859-4 'iso2022 "MIME ISO-8859-4" + '(charset-g0 ascii + charset-g1 latin-iso8859-4 + charset-g2 t + charset-g3 t + mnemonic "MIME/Ltn-4" + )) + +(defun setup-latin4-environment () + "Set up multilingual environment (MULE) for European Latin-4 users." + (interactive) + (setup-8-bit-environment "Latin-4" 'latin-iso8859-4 'iso-8859-4 + "latin-4-prefix")) + +(set-language-info-alist + "Latin-4" '((setup-function . (setup-latin4-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-4)) + (coding-system . (iso-8859-4)) + (documentation . ("\ +These languages are supported with the Latin-4 (ISO-8859-4) character set: + Danish, English, Estonian, Finnish, German, Greenlandic, Lappish, + Latvian, Lithuanian, and Norwegian. +" . describe-european-environment-map)) + )) + +;; Latin-5 (ISO-8859-9) + +;; (make-coding-system +;; 'iso-latin-5 2 ?9 +;; "ISO 2022 based 8-bit encoding (MIME:ISO-8859-9)" +;; '((ascii t) (latin-iso8859-9 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil)) + +;; (define-coding-system-alias 'iso-8859-9 'iso-latin-5) +;; (define-coding-system-alias 'latin-5 'iso-latin-5) + +(make-coding-system + 'iso-8859-9 'iso2022 "MIME ISO-8859-9" + '(charset-g0 ascii + charset-g1 latin-iso8859-9 + charset-g2 t + charset-g3 t + mnemonic "MIME/Ltn-5" + )) + +(defun setup-latin5-environment () + "Set up multilingual environment (MULE) for European Latin-5 users." + (interactive) + (setup-8-bit-environment "Latin-5" 'latin-iso8859-9 'iso-8859-5 + "latin-5-prefix")) + +(set-language-info-alist + "Latin-5" '((setup-function . (setup-latin5-environment + . setup-european-environment-map)) + (charset . (ascii latin-iso8859-9)) + (coding-system . (iso-8859-5)) + (documentation . ("\ +These languages are supported with the Latin-5 (ISO-8859-9) character set. +" . describe-european-environment-map)) + )) + +;; (defun setup-european-environment () +;; "Setup multilingual environment (MULE) for European languages users. +;; It actually reset MULE to the default status, and +;; set quail-latin-1 as the default input method to be selected. +;; See also the documentation of setup-english-environment." +;; (setup-english-environment) +;; (setq default-input-method '("European" . "quail-latin-1"))) + +;; (defun describe-european-support () +;; "Describe how Emacs support European languages." +;; (interactive) +;; (describe-language-support-internal "European")) + +;; (set-language-info-alist +;; "European" '((setup-function . setup-european-environment) +;; (describe-function . describe-european-support) +;; (charset . (ascii latin-iso8859-1 latin-iso8859-2 +;; latin-iso8859-3 latin-iso8859-4 latin-iso8859-9)) +;; (coding-system . (iso-8859-1 iso-8859-2 iso-8859-3 +;; iso-8859-4 iso-8859-9)) +;; (sample-text +;; . "Hello, Hej, Tere, Hei, Bonjour, Gr,A|_(B Gott, Ciao, ,A!(BHola!") +;; (documentation . "\ +;; Almost all of European languages are supported by the character sets and +;; coding systems listed below. +;; To input them, LEIM (Libraries for Emacs Input Methods) should have been +;; installed.") +;; )) + +;;; european.el ends here diff --git a/lisp/mule/greek.el b/lisp/mule/greek.el new file mode 100644 index 0000000..b878c67 --- /dev/null +++ b/lisp/mule/greek.el @@ -0,0 +1,84 @@ +;;; greek.el --- Support for Greek + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, Greek + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +;; 02111-1307, USA. + +;;; Commentary: + +;; For Greek, the character set ISO8859-7 is supported. + +;;; Code: + +;; For syntax of Greek +(loop for c from 54 to 126 + do (modify-syntax-entry (make-char 'greek-iso8859-7 c) "w")) +(modify-syntax-entry (make-char 'greek-iso8859-7 32) "w") ; no-break space +(modify-syntax-entry ?,F7(B ".") +(modify-syntax-entry ?,F;(B ".") +(modify-syntax-entry ?,F=(B ".") + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; GREEK +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (define-language-environment 'greek +;; "Greek" +;; (lambda () +;; (set-coding-category-system 'iso-8-designate 'iso-8859-7) +;; (set-coding-priority-list '(iso-8-designate iso-8-1)) +;; (set-default-buffer-file-coding-system 'iso-8859-7) +;; (setq terminal-coding-system 'iso-8859-7) +;; (setq keyboard-coding-system 'iso-8859-7) +;; ;; (setq-default quail-current-package +;; ;; (assoc "greek" quail-package-alist)) +;; )) + +;; (make-coding-system +;; 'iso-8859-7 2 ?7 "MIME ISO-8859-7" +;; '((ascii t) (greek-iso8859-7 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil)) + +(make-coding-system + 'iso-8859-7 'iso2022 "MIME ISO-8859-7" + '(charset-g0 ascii + charset-g1 greek-iso8859-7 + charset-g2 t + charset-g3 t + mnemonic "Grk" + )) + +(defun setup-greek-environment () + "Setup multilingual environment (MULE) for Greek." + (interactive) + (setup-8-bit-environment "Greek" 'greek-iso8859-7 'iso-8859-7 "greek") + ) + +(set-language-info-alist + "Greek" '((setup-function . setup-greek-environment) + (charset . (greek-iso8859-7)) + (coding-system . (iso-8859-7)) + (sample-text . "Greek (,FGkk]mija(B) ,FCei\(B ,Fsar(B") + (documentation . t))) + +;;; greek.el ends here diff --git a/lisp/mule/hebrew.el b/lisp/mule/hebrew.el new file mode 100644 index 0000000..767fc0a --- /dev/null +++ b/lisp/mule/hebrew.el @@ -0,0 +1,93 @@ +;;; hebrew.el --- Support for Hebrew + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. + +;; Keywords: multilingual, Hebrew + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: + +;; For Hebrew, the character sets ISO8859-8 is supported. + +;;; Code: + +;; Syntax of Hebrew characters +(loop for c from 96 to 122 + do (modify-syntax-entry (make-char 'hebrew-iso8859-8 c) "w")) +(modify-syntax-entry (make-char 'hebrew-iso8859-8 32) "w") ; no-break space + + +;; (make-coding-system +;; 'hebrew-iso-8bit 2 ?8 +;; "ISO 2022 based 8-bit encoding for Hebrew (MIME:ISO-8859-8)" +;; '((ascii t) (hebrew-iso8859-8 t) nil nil +;; nil ascii-eol ascii-cntl nil nil nil nil nil t)) + +;; (define-coding-system-alias 'iso-8859-8 'hebrew-iso-8bit) + +(make-coding-system + 'iso-8859-8 'iso2022 + "MIME ISO-8859-8" + '(charset-g0 ascii + charset-g1 hebrew-iso8859-8 + charset-g2 t + charset-g3 t + no-iso6429 t + mnemonic "MIME/Hbrw" +)) + +(make-coding-system + 'ctext-hebrew 'iso2022 + "Coding-system of Hebrew." + '(charset-g0 ascii + charset-g1 hebrew-iso8859-8 + charset-g2 t + charset-g3 t + mnemonic "CText/Hbrw" + )) + +(defun setup-hebrew-environment () + "Setup multilingual environment (MULE) for Hebrew. +But, please note that right-to-left writing is not yet supported." + (interactive) + (setup-8-bit-environment "Hebrew" 'hebrew-iso8859-8 'iso-8859-8 + "hebrew") + (set-coding-category-system 'iso-8-designate 'iso-8859-8) + (set-coding-priority-list + '(iso-8-designate + iso-8-1 + iso-7 + iso-8-2 + iso-lock-shift + no-conversion + shift-jis + big5)) + ) + +(set-language-info-alist + "Hebrew" '((setup-function . setup-hebrew-environment) + (describe-function . describe-hebrew-support) + (charset . (hebrew-iso8859-8)) + (coding-system . (iso-8859-8)) + (sample-text . "Hebrew ,Hylem(B") + (documentation . "Right-to-left writing is not yet supported.") + )) + +;;; hebrew.el ends here diff --git a/lisp/mule/kinsoku.el b/lisp/mule/kinsoku.el new file mode 100644 index 0000000..94cf414 --- /dev/null +++ b/lisp/mule/kinsoku.el @@ -0,0 +1,285 @@ +;; kinsoku.el -- Kinsoku (line wrap) processing for XEmacs/Mule + +;; Copyright (C) 1997 Free Software Foundation, Inc. +;; This file is part of Mule (MULtilingual Enhancement of XEmacs). +;; This file contains Japanese and Chinese characters. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;; Written by Jareth Hein (jhod@po.iijnet.or.jp) based off of +;; code by S.Tomura, Electrotechnical Lab. (tomura@etl.go.jp) from +;; Mule-2.3 + +;;; Special characters for JIS code +;;; "$B!!!"!#!$!%!&!'!'!(!)!*!+!,!-!.!/(B" +;;; "$B!0!1!2!3!4!5!6!7!8!9!:!;!!?(B" +;;; "$B!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B" +;;; "$B!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B" +;;; "$B!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B" +;;; "$B!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B" +;;; "$B"!"""#"$"%"&"'"(")"*"+","-".(B " +;;; "$B&!&"&#&$&%&&&'&(&)&*&+&,&-&.&/(B" +;;; "$B&0&1&2&3&4&5&6&7&8(B" +;;; "$B&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O(B" +;;; "$B&P&Q&R&S&T&U&V&W&X(B" +;;; "$B'!'"'#'$'%'&'''(')'*'+','-'.'/(B" +;;; "$B'0'1'2'3'4'5'6'7'8'9':';'<'='>'?(B" +;;; "$B'@'A(B" +;;; "$B'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_!I(B +;;; "$B'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o(B" +;;; "$B'p'q(B" +;;; $B#0#1#2#3#4#5#6#7#8#9#A#B#C#D#E#F(B +;;; "$B$!$#$%$'$)$C$c$e$g$n(B" +;;; "$B%!%#%%%'%)%C%c%e%g%n%u%v(B" + +;;; Special characters for GB +;;; +;;; $A!!!"!#!$!%!&!'!(!)!*!+!,!-!.!/(B +;;;$A!0!1!2!3!4!5!6!7!8!9!:!;!!?(B +;;;$A!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B +;;;$A!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B +;;;$A!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B +;;;$A!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B +;;; $A"1"2"3"4"5"6"7"8"9":";"<"=">"?(B +;;;$A"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O(B +;;;$A"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_(B +;;;$A"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o(B +;;;$A"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~(B +;;; $A#!#"###$#%#&#'#(#)#*#+#,#-#.#/(B +;;;$A#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?(B +;;;$A#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O(B +;;;$A#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_(B +;;;$A#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o(B +;;;$A#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~(B +;;; $A$!$"$#$$$%$&$'$($)$*$+$,$-$.$/(B +;;;$A$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?(B +;;;$A$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B +;;;$A$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_(B +;;;$A$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o(B +;;;$A$p$q$r$s$t$u$v$w$x$y$z${$|$}$~(B +;;; $A%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/(B +;;;$A%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?(B +;;;$A%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O(B +;;;$A%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_(B +;;;$A%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o(B +;;;$A%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~(B +;;; $A&!&"&#&$&%&&&'&(&)&*&+&,&-&.&/(B +;;;$A&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?(B +;;;$A&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O(B +;;;$A&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_(B +;;;$A&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o(B +;;;$A&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~(B +;;; $A'!'"'#'$'%'&'''(')'*'+','-'.'/(B +;;;$A'0'1'2'3'4'5'6'7'8'9':';'<'='>'?(B +;;;$A'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O(B +;;;$A'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_(B +;;;$A'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o(B +;;;$A'p'q'r's't'u'v'w'x'y'z'{'|'}'~(B +;;; $A(!("(#($(%(&('((()(*(+(,(-(.(/(B +;;;$A(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(B +;;;$A(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(B +;;;$A(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(B +;;;$A(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(B + +;;; Special characters for BIG5 +;;; +;;; $(0!!!"!#!$!%!&!'!(!)!*!+!,!-!.!/(B +;;;$(0!0!1!2!3!4!5!6!7!8!9!:!;!!?(B +;;;$(0!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O(B +;;;$(0!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_(B +;;;$(0!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o(B +;;;$(0!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~(B +;;; $(0"!"""#"$"%"&"'"(")"*"+","-"."/(B +;;;$(0"0"1"2"3"4"5"6"7"8"9":";"<"=">"?(B +;;;$(0"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O(B +;;;$(0"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_(B +;;;$(0"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o(B +;;;$(0"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~(B +;;; $(0#!#"###$#%#&#'#(#)#*#+#,#-#.#/(B +;;;$(0#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?(B +;;;$(0#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O(B +;;;$(0#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_(B +;;;$(0#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o(B +;;;$(0#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~(B +;;; $(0$!$"$#$$$%$&$'$($)$*$+$,$-$.$/(B +;;;$(0$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?(B +;;;$(0$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O(B +;;;$(0$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_(B +;;;$(0$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o(B +;;;$(0$p$q$r$s$t$u$v$w$x$y$z${$|$}$~(B +;;; $(0%!%"%#%$%%%&%'%(%)%*%+%,%-%.%/(B +;;;$(0%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?(B + +(defvar kinsoku-ascii nil "Do kinsoku-processing for ASCII.") +(make-variable-buffer-local 'kinsoku-ascii) +(set-default 'kinsoku-ascii nil) +(defvar kinsoku-jis t "Do kinsoku-processing for JISX0208.") +(make-variable-buffer-local 'kinsoku-jis) +(set-default 'kinsoku-jis t) +(defvar kinsoku-gb t "Do kinsoku-processing for GB2312.") +(make-variable-buffer-local 'kinsoku-gb) +(set-default 'kinsoku-gb t) +(defvar kinsoku-big5 t "Do kinsoku-processing for Big5..") +(make-variable-buffer-local 'kinsoku-big5) +(set-default 'kinsoku-big5 t) + +(defvar kinsoku-ascii-bol "!)-_~}]:;',.?" "BOL kinsoku for ASCII.") +(defvar kinsoku-ascii-eol "({[" "EOL kinsoku for ASCII.") +(defvar kinsoku-jis-bol + (concat "$B!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!(B" + "$B!?!@!A!B!C!D!E!G!I!K!M!O!Q!S!U!W!Y![!k!l!m!n(B" + "$B$!$#$%$'$)$C$c$e$g$n%!%#%%%'%)%C%c%e%g%n%u%v(B") + "BOL kinsoku for JISX0208.") +(defvar kinsoku-jis-eol + "$B!F!H!J!L!N!P!R!T!V!X!Z!k!l!m!n!w!x(B" + "EOL kinsoku for JISX0208.") +(defvar kinsoku-gb-bol + (concat "$A!"!##.#,!$!%!&!'!(!)!*!+!,!-!/!1#)!3!5!7!9!;!=(B" + "$A!?#;#:#?#!!@!A!B!C!c!d!e!f#/#\#"#_#~#|(e(B") + "BOL kinsoku for GB2312.") +(defvar kinsoku-gb-eol + (concat "$A!.!0#"#(!2!4!6!8!:!!c!d!e#@!f!l(B" + "$A(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(h(B") + "EOL kinsoku for GB2312.") +(defvar kinsoku-big5-bol + (concat "$(0!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2(B" + "$(0!3!4!5!6!7!8!9!:!;!!@!B!D!F!H!J!L!N!P!R!T!V!X!Z!\!^!`!b(B" + "$(0!d!f!h!j!k!q!p"i"j"k"n"x$u$v$w$x$y$z${(B" + "$(0$|$}$~%!%"%#%$%%%&%'%(%)%*%+%:(B") + "EOL kinsoku for BIG5.") + +(define-category ?s "Kinsoku forbidden start of line characters") +(define-category ?e "Kinsoku forbidden end of line characters") + +;; kinsoku ascii +(loop for char in (string-to-char-list kinsoku-ascii-bol) + do (modify-category-entry char ?s)) +(loop for char in kinsoku-ascii-eol + do (modify-category-entry char ?e)) +;; kinsoku-jis +(loop for char in (string-to-char-list kinsoku-jis-bol) + do (modify-category-entry char ?s)) +(loop for char in (string-to-char-list kinsoku-jis-eol) + do (modify-category-entry char ?e)) +;; kinsoku-gb +(loop for char in kinsoku-gb-bol + do (modify-category-entry char ?s)) +(loop for char in kinsoku-gb-eol + do (modify-category-entry char ?e)) +;; kinsoku-big5 +(loop for char in kinsoku-big5-bol + do (modify-category-entry char ?s)) +(loop for char in kinsoku-big5-eol + do (modify-category-entry char ?e)) + +(defun kinsoku-bol-p () + "Check if point would break forbidden beginning-of-line rules +Uses category \'s\' to check. +point$B$G2~9T$9$k$H9TF,6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B +$B9TF,6XB'J8;z$O(B\'s\'$B$N(Bcategory$B$G;XDj$9$k!#(B" + (let ((ch (char-after))) + (if (and ch + (or + (and kinsoku-ascii (char-in-category-p ch ?a)) + (and kinsoku-jis (char-in-category-p ch ?j)) + (and kinsoku-gb (char-in-category-p ch ?c)) + (and kinsoku-big5 (char-in-category-p ch ?t)))) + (char-in-category-p ch ?s) + nil))) + +(defun kinsoku-eol-p () + "Check if point would break forbidden end-of-line rules +Uses category \'e\' to check. +point$B$G2~9T$9$k$H9TKv6XB'$K?($l$k$+$I$&$+$r$+$($9!#(B +$B9TKv6XB'J8;z$O(B\'s\'$B$N(Bcategory$B$G;XDj$9$k!#(B" + (let ((ch (char-before))) + (if (and ch + (or + (and kinsoku-ascii (char-in-category-p ch ?a)) + (and kinsoku-jis (char-in-category-p ch ?j)) + (and kinsoku-gb (char-in-category-p ch ?c)) + (and kinsoku-big5 (char-in-category-p ch ?t)))) + (char-in-category-p ch ?e) + nil))) + +(defvar kinsoku-extend-limit nil + "Defines how many characters kinsoku will search forward before giving up. +A value of nil equates to infinity. +$B6XB'=hM}$G9T$r?-$P$7$FNI$$H>3QJ8;z?t$r;XDj$9$k!#(B +$BHsIi@0?t0J30$N>l9g$OL58BBg$r0UL#$9$k!#(B") + +(defun kinsoku-process () + "Move to a point that will not break forbidden line break rules. +$B6XB'$K?($l$J$$E@$X0\F0$9$k!#(B +point$B$,9TF,6XB'$K?($l$k>l9g$O9T$r?-$P$7$F!"6XB'$K?($l$J$$E@$rC5$9!#(B +point$B$,9TKv6XB'$K?($l$k>l9g$O9T$r=L$a$F!"6XB'$K?($l$J$$E@$rC5$9!#(B +$B$?$@$7!"9T?-$P$7H>3QJ8;z?t$,(Bkinsoku-extend-limit$B$r1[$($k$H!"(B +$B9T$r=L$a$F6XB'$K?($l$J$$E@$rC5$9!#(B" + (let ((bol-kin nil) (eol-kin nil)) + (if (and (not (bolp)) + (not (eolp)) + (or (setq bol-kin (kinsoku-bol-p)) + (setq eol-kin (kinsoku-eol-p)))) + (cond(bol-kin (kinsoku-process-extend)) + (eol-kin (kinsoku-process-shrink)))))) + +(defun kinsoku-process-extend () + "Move point forward to a permissable for line-breaking. +$B9T$r?-$P$7$F6XB'$K?($l$J$$E@$X0\F0$9$k!#(B" + (let ((max-column (+ fill-column + (if (and (numberp kinsoku-extend-limit) + (>= kinsoku-extend-limit 0)) + kinsoku-extend-limit + 10000))) ;;; 10000 is deliberatly unreasonably large + ch1 ch2) + (while (and (setq ch1 (char-after)) + (<= (+ (current-column) + (char-width ch1 )) + max-column) + (not (bolp)) + (not (eolp)) + (or (kinsoku-eol-p) + (kinsoku-bol-p) + ;;; don't break in the middle of an English word + (and (char-in-category-p ch1 ?a) + (setq ch2 (char-before)) + (char-in-category-p ch2 ?a) + (= ?w (char-syntax ch2)) + (= ?w (char-syntax ch1))))) + (forward-char)) + (if (or (kinsoku-eol-p) (kinsoku-bol-p)) + (kinsoku-process-shrink)))) + +(defun kinsoku-process-shrink () + "Move point backward to a point permissable for line-breaking. +$B9T$r=L$a$F6XB'$K?($l$J$$E@$X0\F0$9$k!#(B" + (let (ch1 ch2) + (while (and (not (bolp)) + (not (eolp)) + (or (kinsoku-bol-p) + (kinsoku-eol-p) + ;;; don't break in the middle of an English word + (and + (char-in-category-p (setq ch1 (following-char)) ?a) + (char-in-category-p (setq ch2 (preceding-char)) ?a) + (= ?w (char-syntax ch2)) + (= ?w (char-syntax ch1))))) + (backward-char)))) diff --git a/lisp/mule/korean.el b/lisp/mule/korean.el new file mode 100644 index 0000000..2763262 --- /dev/null +++ b/lisp/mule/korean.el @@ -0,0 +1,149 @@ +;;; korean.el --- Support for Korean + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, Korean + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +;; 02111-1307, USA. + +;;; Commentary: + +;; For Korean, the character set KSC5601 is supported. + +;;; Code: + +;; Syntax of Korean characters. +(loop for row from 33 to 34 do + (modify-syntax-entry `[korean-ksc5601 ,row] ".")) +(loop for row from 35 to 37 do + (modify-syntax-entry `[korean-ksc5601 ,row] "w")) +(loop for row from 38 to 41 do + (modify-syntax-entry `[korean-ksc5601 ,row] ".")) +(loop for row from 42 to 126 do + (modify-syntax-entry `[korean-ksc5601 ,row] "w")) + +;; Setting for coding-system and quail were moved to +;; language/korean.el. + +(make-coding-system + 'iso-2022-int-1 'iso2022 + "ISO-2022-INT-1" + '(charset-g0 ascii + charset-g1 korean-ksc5601 + short t + seven t + lock-shift t + mnemonic "INT-1")) + +;; EGG specific setup +(define-egg-environment 'korean + "Korean settings for egg" + (lambda () + (when (not (featurep 'egg-kor)) + (load "its-hangul") + (setq its:*standard-modes* + (cons (its:get-mode-map "hangul") its:*standard-modes*)) + (provide 'egg-kor)) + (setq wnn-server-type 'kserver) + (setq egg-default-startup-file "eggrc-wnn") + (setq-default its:*current-map* (its:get-mode-map "hangul")))) + +;; (make-coding-system +;; 'euc-kr 2 ?K +;; "Coding-system of Korean EUC (Extended Unix Code)." +;; '((ascii t) korean-ksc5601 nil nil +;; nil ascii-eol ascii-cntl)) + +(make-coding-system + 'euc-kr 'iso2022 + "Coding-system of Korean EUC (Extended Unix Code)." + '(charset-g0 ascii + charset-g1 korean-ksc5601 + mnemonic "ko/EUC" + eol-type nil)) + +;;(define-coding-system-alias 'euc-kr 'euc-korea) + +(copy-coding-system 'euc-kr 'korean-euc) + +;; (make-coding-system +;; 'iso-2022-kr 2 ?k +;; "MIME ISO-2022-KR" +;; '(ascii (nil korean-ksc5601) nil nil +;; nil ascii-eol ascii-cntl seven locking-shift nil nil nil nil nil +;; designation-bol)) + +(make-coding-system + 'iso-2022-kr 'iso2022 + "Coding-System used for communication with mail in Korea." + '(charset-g0 ascii + charset-g1 korean-ksc5601 + force-g1-on-output t + seven t + lock-shift t + mnemonic "Ko/7bit" + eol-type lf)) + +(defun setup-korean-environment () + "Setup multilingual environment (MULE) for Korean." + (interactive) + (setup-english-environment) + ;; (setq coding-category-iso-8-2 'euc-kr) + (set-coding-category-system 'iso-8-2 'euc-kr) + + ;; (set-coding-priority + ;; '(coding-category-iso-7 + ;; coding-category-iso-8-2 + ;; coding-category-iso-8-1)) + (set-coding-priority-list + '(iso-8-2 + iso-7 + iso-8-1 + iso-8-designate + iso-lock-shift + no-conversion + shift-jis + big5)) + + (set-default-coding-systems 'euc-kr) + + ;; (when (eq 'x (device-type (selected-device))) + ;; (x-use-halfwidth-roman-font 'korean-ksc5601 "ksc5636")) + + ;; EGG specific setup 97.02.05 jhod + (when (featurep 'egg) + (when (not (featurep 'egg-kor)) + (provide 'egg-kor) + (load "its-hangul") + (setq its:*standard-modes* + (cons (its:get-mode-map "hangul") its:*standard-modes*))) + (setq-default its:*current-map* (its:get-mode-map "hangul"))) + + (setq default-input-method "korean-hangul")) + +(set-language-info-alist + "Korean" '((setup-function . setup-korean-environment) + (tutorial . "TUTORIAL.ko") + (charset . (korean-ksc5601)) + (coding-system . (iso-2022-kr euc-kr)) + (sample-text . "Hangul ($(CGQ1[(B) $(C>H3gGO<H3gGO=J4O1n(B") + (documentation . t))) + +;;; korean.el ends here diff --git a/lisp/mule/mule-ccl.el b/lisp/mule/mule-ccl.el new file mode 100644 index 0000000..7f28d19 --- /dev/null +++ b/lisp/mule/mule-ccl.el @@ -0,0 +1,1110 @@ +;;; ccl.el --- CCL (Code Conversion Language) compiler + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. + +;; Keywords: CCL, mule, multilingual, character set, coding-system + +;; This file is part of X Emacs. + +;; GNU Emacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;; Synched up with: FSF 20.2 + +;;; Commentary: + +;; CCL (Code Conversion Language) is a simple programming language to +;; be used for various kind of code conversion. CCL program is +;; compiled to CCL code (vector of integers) and executed by CCL +;; interpreter of Emacs. +;; +;; CCL is used for code conversion at process I/O and file I/O for +;; non-standard coding-system. In addition, it is used for +;; calculating a code point of X's font from a character code. +;; However, since CCL is designed as a powerful programming language, +;; it can be used for more generic calculation. For instance, +;; combination of three or more arithmetic operations can be +;; calculated faster than Emacs Lisp. +;; +;; Here's the syntax of CCL program in BNF notation. +;; +;; CCL_PROGRAM := +;; (BUFFER_MAGNIFICATION +;; CCL_MAIN_BLOCK +;; [ CCL_EOF_BLOCK ]) +;; +;; BUFFER_MAGNIFICATION := integer +;; CCL_MAIN_BLOCK := CCL_BLOCK +;; CCL_EOF_BLOCK := CCL_BLOCK +;; +;; CCL_BLOCK := +;; STATEMENT | (STATEMENT [STATEMENT ...]) +;; STATEMENT := +;; SET | IF | BRANCH | LOOP | REPEAT | BREAK | READ | WRITE | CALL +;; +;; SET := +;; (REG = EXPRESSION) +;; | (REG ASSIGNMENT_OPERATOR EXPRESSION) +;; | integer +;; +;; EXPRESSION := ARG | (EXPRESSION OPERATOR ARG) +;; +;; IF := (if EXPRESSION CCL_BLOCK CCL_BLOCK) +;; BRANCH := (branch EXPRESSION CCL_BLOCK [CCL_BLOCK ...]) +;; LOOP := (loop STATEMENT [STATEMENT ...]) +;; BREAK := (break) +;; REPEAT := +;; (repeat) +;; | (write-repeat [REG | integer | string]) +;; | (write-read-repeat REG [integer | ARRAY]) +;; READ := +;; (read REG ...) +;; | (read-if (REG OPERATOR ARG) CCL_BLOCK CCL_BLOCK) +;; | (read-branch REG CCL_BLOCK [CCL_BLOCK ...]) +;; WRITE := +;; (write REG ...) +;; | (write EXPRESSION) +;; | (write integer) | (write string) | (write REG ARRAY) +;; | string +;; CALL := (call ccl-program-name) +;; END := (end) +;; +;; REG := r0 | r1 | r2 | r3 | r4 | r5 | r6 | r7 +;; ARG := REG | integer +;; OPERATOR := +;; + | - | * | / | % | & | '|' | ^ | << | >> | <8 | >8 | // +;; | < | > | == | <= | >= | != | de-sjis | en-sjis +;; ASSIGNMENT_OPERATOR := +;; += | -= | *= | /= | %= | &= | '|=' | ^= | <<= | >>= +;; ARRAY := '[' interger ... ']' + +;;; Code: + +(defconst ccl-command-table + [if branch loop break repeat write-repeat write-read-repeat + read read-if read-branch write call end] + "*Vector of CCL commands (symbols).") + +;; Put a property to each symbol of CCL commands for the compiler. +(let (op (i 0) (len (length ccl-command-table))) + (while (< i len) + (setq op (aref ccl-command-table i)) + (put op 'ccl-compile-function (intern (format "ccl-compile-%s" op))) + (setq i (1+ i)))) + +(defconst ccl-code-table + [set-register + set-short-const + set-const + set-array + jump + jump-cond + write-register-jump + write-register-read-jump + write-const-jump + write-const-read-jump + write-string-jump + write-array-read-jump + read-jump + branch + read-register + write-expr-const + read-branch + write-register + write-expr-register + call + write-const-string + write-array + end + set-assign-expr-const + set-assign-expr-register + set-expr-const + set-expr-register + jump-cond-expr-const + jump-cond-expr-register + read-jump-cond-expr-const + read-jump-cond-expr-register + ] + "*Vector of CCL compiled codes (symbols).") + +;; Put a property to each symbol of CCL codes for the disassembler. +(let (code (i 0) (len (length ccl-code-table))) + (while (< i len) + (setq code (aref ccl-code-table i)) + (put code 'ccl-code i) + (put code 'ccl-dump-function (intern (format "ccl-dump-%s" code))) + (setq i (1+ i)))) + +(defconst ccl-jump-code-list + '(jump jump-cond write-register-jump write-register-read-jump + write-const-jump write-const-read-jump write-string-jump + write-array-read-jump read-jump)) + +;; Put a property `jump-flag' to each CCL code which execute jump in +;; some way. +(let ((l ccl-jump-code-list)) + (while l + (put (car l) 'jump-flag t) + (setq l (cdr l)))) + +(defconst ccl-register-table + [r0 r1 r2 r3 r4 r5 r6 r7] + "*Vector of CCL registers (symbols).") + +;; Put a property to indicate register number to each symbol of CCL. +;; registers. +(let (reg (i 0) (len (length ccl-register-table))) + (while (< i len) + (setq reg (aref ccl-register-table i)) + (put reg 'ccl-register-number i) + (setq i (1+ i)))) + +(defconst ccl-arith-table + [+ - * / % & | ^ << >> <8 >8 // nil nil nil + < > == <= >= != de-sjis en-sjis] + "*Vector of CCL arithmetic/logical operators (symbols).") + +;; Put a property to each symbol of CCL operators for the compiler. +(let (arith (i 0) (len (length ccl-arith-table))) + (while (< i len) + (setq arith (aref ccl-arith-table i)) + (if arith (put arith 'ccl-arith-code i)) + (setq i (1+ i)))) + +(defconst ccl-assign-arith-table + [+= -= *= /= %= &= |= ^= <<= >>= <8= >8= //=] + "*Vector of CCL assignment operators (symbols).") + +;; Put a property to each symbol of CCL assignment operators for the compiler. +(let (arith (i 0) (len (length ccl-assign-arith-table))) + (while (< i len) + (setq arith (aref ccl-assign-arith-table i)) + (put arith 'ccl-self-arith-code i) + (setq i (1+ i)))) + +(defvar ccl-program-vector nil + "Working vector of CCL codes produced by CCL compiler.") +(defvar ccl-current-ic 0 + "The current index for `ccl-program-vector'.") + +;; Embed integer DATA in `ccl-program-vector' at `ccl-current-ic' and +;; increment it. If IC is specified, embed DATA at IC. +(defun ccl-embed-data (data &optional ic) + (let ((val (if (characterp data) (char-int data) data))) + (if ic + (aset ccl-program-vector ic val) + (aset ccl-program-vector ccl-current-ic val) + (setq ccl-current-ic (1+ ccl-current-ic))))) + +;; Embed string STR of length LEN in `ccl-program-vector' at +;; `ccl-current-ic'. +(defun ccl-embed-string (len str) + (let ((i 0)) + (while (< i len) + (ccl-embed-data (logior (ash (aref str i) 16) + (if (< (1+ i) len) + (ash (aref str (1+ i)) 8) + 0) + (if (< (+ i 2) len) + (aref str (+ i 2)) + 0))) + (setq i (+ i 3))))) + +;; Embed a relative jump address to `ccl-current-ic' in +;; `ccl-program-vector' at IC without altering the other bit field. +(defun ccl-embed-current-address (ic) + (let ((relative (- ccl-current-ic (1+ ic)))) + (aset ccl-program-vector ic + (logior (aref ccl-program-vector ic) (ash relative 8))))) + +;; Embed CCL code for the operation OP and arguments REG and DATA in +;; `ccl-program-vector' at `ccl-current-ic' in the following format. +;; |----------------- integer (28-bit) ------------------| +;; |------------ 20-bit ------------|- 3-bit --|- 5-bit -| +;; |------------- DATA -------------|-- REG ---|-- OP ---| +;; If REG2 is specified, embed a code in the following format. +;; |------- 17-bit ------|- 3-bit --|- 3-bit --|- 5-bit -| +;; |-------- DATA -------|-- REG2 --|-- REG ---|-- OP ---| + +;; If REG is a CCL register symbol (e.g. r0, r1...), the register +;; number is embedded. If OP is one of unconditional jumps, DATA is +;; changed to an relative jump address. + +(defun ccl-embed-code (op reg data &optional reg2) + (if (and (> data 0) (get op 'jump-flag)) + ;; DATA is an absolute jump address. Make it relative to the + ;; next of jump code. + (setq data (- data (1+ ccl-current-ic)))) + (let ((code (logior (get op 'ccl-code) + (ash + (if (symbolp reg) (get reg 'ccl-register-number) reg) 5) + (if reg2 + (logior (ash (get reg2 'ccl-register-number) 8) + (ash data 11)) + (ash data 8))))) + (aset ccl-program-vector ccl-current-ic code) + (setq ccl-current-ic (1+ ccl-current-ic)))) + +;; Just advance `ccl-current-ic' by INC. +(defun ccl-increment-ic (inc) + (setq ccl-current-ic (+ ccl-current-ic inc))) + +;;;###autoload +(defun ccl-program-p (obj) + "T if OBJECT is a valid CCL compiled code." + (and (vectorp obj) + (let ((i 0) (len (length obj)) (flag t)) + (if (> len 1) + (progn + (while (and flag (< i len)) + (setq flag (integerp (aref obj i))) + (setq i (1+ i))) + flag))))) + +;; If non-nil, index of the start of the current loop. +(defvar ccl-loop-head nil) +;; If non-nil, list of absolute addresses of the breaking points of +;; the current loop. +(defvar ccl-breaks nil) + +;;;###autoload +(defun ccl-compile (ccl-program) + "Return a compiled code of CCL-PROGRAM as a vector of integer." + (if (or (null (consp ccl-program)) + (null (integer-or-char-p (car ccl-program))) + (null (listp (car (cdr ccl-program))))) + (error "CCL: Invalid CCL program: %s" ccl-program)) + (if (null (vectorp ccl-program-vector)) + (setq ccl-program-vector (make-vector 8192 0))) + (setq ccl-loop-head nil ccl-breaks nil) + (setq ccl-current-ic 0) + + ;; The first element is the buffer magnification. + (ccl-embed-data (car ccl-program)) + + ;; The second element is the address of the start CCL code for + ;; processing end of input buffer (we call it eof-processor). We + ;; set it later. + (ccl-increment-ic 1) + + ;; Compile the main body of the CCL program. + (ccl-compile-1 (car (cdr ccl-program))) + + ;; Embed the address of eof-processor. + (ccl-embed-data ccl-current-ic 1) + + ;; Then compile eof-processor. + (if (nth 2 ccl-program) + (ccl-compile-1 (nth 2 ccl-program))) + + ;; At last, embed termination code. + (ccl-embed-code 'end 0 0) + + (let ((vec (make-vector ccl-current-ic 0)) + (i 0)) + (while (< i ccl-current-ic) + (aset vec i (aref ccl-program-vector i)) + (setq i (1+ i))) + vec)) + +;; Signal syntax error. +(defun ccl-syntax-error (cmd) + (error "CCL: Syntax error: %s" cmd)) + +;; Check if ARG is a valid CCL register. +(defun ccl-check-register (arg cmd) + (if (get arg 'ccl-register-number) + arg + (error "CCL: Invalid register %s in %s." arg cmd))) + +;; Check if ARG is a valid CCL command. +(defun ccl-check-compile-function (arg cmd) + (or (get arg 'ccl-compile-function) + (error "CCL: Invalid command: %s" cmd))) + +;; In the following code, most ccl-compile-XXXX functions return t if +;; they end with unconditional jump, else return nil. + +;; Compile CCL-BLOCK (see the syntax above). +(defun ccl-compile-1 (ccl-block) + (let (unconditional-jump + cmd) + (if (or (integer-or-char-p ccl-block) + (stringp ccl-block) + (and ccl-block (symbolp (car ccl-block)))) + ;; This block consists of single statement. + (setq ccl-block (list ccl-block))) + + ;; Now CCL-BLOCK is a list of statements. Compile them one by + ;; one. + (while ccl-block + (setq cmd (car ccl-block)) + (setq unconditional-jump + (cond ((integer-or-char-p cmd) + ;; SET statement for the register 0. + (ccl-compile-set (list 'r0 '= cmd))) + + ((stringp cmd) + ;; WRITE statement of string argument. + (ccl-compile-write-string cmd)) + + ((listp cmd) + ;; The other statements. + (cond ((eq (nth 1 cmd) '=) + ;; SET statement of the form `(REG = EXPRESSION)'. + (ccl-compile-set cmd)) + + ((and (symbolp (nth 1 cmd)) + (get (nth 1 cmd) 'ccl-self-arith-code)) + ;; SET statement with an assignment operation. + (ccl-compile-self-set cmd)) + + (t + (funcall (ccl-check-compile-function (car cmd) cmd) + cmd)))) + + (t + (ccl-syntax-error cmd)))) + (setq ccl-block (cdr ccl-block))) + unconditional-jump)) + +(defconst ccl-max-short-const (ash 1 19)) +(defconst ccl-min-short-const (ash -1 19)) + +;; Compile SET statement. +(defun ccl-compile-set (cmd) + (let ((rrr (ccl-check-register (car cmd) cmd)) + (right (nth 2 cmd))) + (cond ((listp right) + ;; CMD has the form `(RRR = (XXX OP YYY))'. + (ccl-compile-expression rrr right)) + + ((integer-or-char-p right) + ;; CMD has the form `(RRR = integer)'. + (if (and (<= right ccl-max-short-const) + (>= right ccl-min-short-const)) + (ccl-embed-code 'set-short-const rrr right) + (ccl-embed-code 'set-const rrr 0) + (ccl-embed-data right))) + + (t + ;; CMD has the form `(RRR = rrr [ array ])'. + (ccl-check-register right cmd) + (let ((ary (nth 3 cmd))) + (if (vectorp ary) + (let ((i 0) (len (length ary))) + (ccl-embed-code 'set-array rrr len right) + (while (< i len) + (ccl-embed-data (aref ary i)) + (setq i (1+ i)))) + (ccl-embed-code 'set-register rrr 0 right)))))) + nil) + +;; Compile SET statement with ASSIGNMENT_OPERATOR. +(defun ccl-compile-self-set (cmd) + (let ((rrr (ccl-check-register (car cmd) cmd)) + (right (nth 2 cmd))) + (if (listp right) + ;; CMD has the form `(RRR ASSIGN_OP (XXX OP YYY))', compile + ;; the right hand part as `(r7 = (XXX OP YYY))' (note: the + ;; register 7 can be used for storing temporary value). + (progn + (ccl-compile-expression 'r7 right) + (setq right 'r7))) + ;; Now CMD has the form `(RRR ASSIGN_OP ARG)'. Compile it as + ;; `(RRR = (RRR OP ARG))'. + (ccl-compile-expression + rrr + (list rrr (intern (substring (symbol-name (nth 1 cmd)) 0 -1)) right))) + nil) + +;; Compile SET statement of the form `(RRR = EXPR)'. +(defun ccl-compile-expression (rrr expr) + (let ((left (car expr)) + (op (get (nth 1 expr) 'ccl-arith-code)) + (right (nth 2 expr))) + (if (listp left) + (progn + ;; EXPR has the form `((EXPR2 OP2 ARG) OP RIGHT)'. Compile + ;; the first term as `(r7 = (EXPR2 OP2 ARG)).' + (ccl-compile-expression 'r7 left) + (setq left 'r7))) + + ;; Now EXPR has the form (LEFT OP RIGHT). + (if (eq rrr left) + ;; Compile this SET statement as `(RRR OP= RIGHT)'. + (if (integer-or-char-p right) + (progn + (ccl-embed-code 'set-assign-expr-const rrr (ash op 3) 'r0) + (ccl-embed-data right)) + (ccl-check-register right expr) + (ccl-embed-code 'set-assign-expr-register rrr (ash op 3) right)) + + ;; Compile this SET statement as `(RRR = (LEFT OP RIGHT))'. + (if (integer-or-char-p right) + (progn + (ccl-embed-code 'set-expr-const rrr (ash op 3) left) + (ccl-embed-data right)) + (ccl-check-register right expr) + (ccl-embed-code 'set-expr-register + rrr + (logior (ash op 3) (get right 'ccl-register-number)) + left))))) + +;; Compile WRITE statement with string argument. +(defun ccl-compile-write-string (str) + (let ((len (length str))) + (ccl-embed-code 'write-const-string 1 len) + (ccl-embed-string len str)) + nil) + +;; Compile IF statement of the form `(if CONDITION TRUE-PART FALSE-PART)'. +;; If READ-FLAG is non-nil, this statement has the form +;; `(read-if (REG OPERATOR ARG) TRUE-PART FALSE-PART)'. +(defun ccl-compile-if (cmd &optional read-flag) + (if (and (/= (length cmd) 3) (/= (length cmd) 4)) + (error "CCL: Invalid number of arguments: %s" cmd)) + (let ((condition (nth 1 cmd)) + (true-cmds (nth 2 cmd)) + (false-cmds (nth 3 cmd)) + jump-cond-address + false-ic) + (if (and (listp condition) + (listp (car condition))) + ;; If CONDITION is a nested expression, the inner expression + ;; should be compiled at first as SET statement, i.e.: + ;; `(if ((X OP2 Y) OP Z) ...)' is compiled into two statements: + ;; `(r7 = (X OP2 Y)) (if (r7 OP Z) ...)'. + (progn + (ccl-compile-expression 'r7 (car condition)) + (setq condition (cons 'r7 (cdr condition))) + (setq cmd (cons (car cmd) + (cons condition (cdr (cdr cmd))))))) + + (setq jump-cond-address ccl-current-ic) + ;; Compile CONDITION. + (if (symbolp condition) + ;; CONDITION is a register. + (progn + (ccl-check-register condition cmd) + (ccl-embed-code 'jump-cond condition 0)) + ;; CONDITION is a simple expression of the form (RRR OP ARG). + (let ((rrr (car condition)) + (op (get (nth 1 condition) 'ccl-arith-code)) + (arg (nth 2 condition))) + (ccl-check-register rrr cmd) + (if (integer-or-char-p arg) + (progn + (ccl-embed-code (if read-flag 'read-jump-cond-expr-const + 'jump-cond-expr-const) + rrr 0) + (ccl-embed-data op) + (ccl-embed-data arg)) + (ccl-check-register arg cmd) + (ccl-embed-code (if read-flag 'read-jump-cond-expr-register + 'jump-cond-expr-register) + rrr 0) + (ccl-embed-data op) + (ccl-embed-data (get arg 'ccl-register-number))))) + + ;; Compile TRUE-PART. + (let ((unconditional-jump (ccl-compile-1 true-cmds))) + (if (null false-cmds) + ;; This is the place to jump to if condition is false. + (ccl-embed-current-address jump-cond-address) + (let (end-true-part-address) + (if (not unconditional-jump) + (progn + ;; If TRUE-PART does not end with unconditional jump, we + ;; have to jump to the end of FALSE-PART from here. + (setq end-true-part-address ccl-current-ic) + (ccl-embed-code 'jump 0 0))) + ;; This is the place to jump to if CONDITION is false. + (ccl-embed-current-address jump-cond-address) + ;; Compile FALSE-PART. + (setq unconditional-jump + (and (ccl-compile-1 false-cmds) unconditional-jump)) + (if end-true-part-address + ;; This is the place to jump to after the end of TRUE-PART. + (ccl-embed-current-address end-true-part-address)))) + unconditional-jump))) + +;; Compile BRANCH statement. +(defun ccl-compile-branch (cmd) + (if (< (length cmd) 3) + (error "CCL: Invalid number of arguments: %s" cmd)) + (ccl-compile-branch-blocks 'branch + (ccl-compile-branch-expression (nth 1 cmd) cmd) + (cdr (cdr cmd)))) + +;; Compile READ statement of the form `(read-branch EXPR BLOCK0 BLOCK1 ...)'. +(defun ccl-compile-read-branch (cmd) + (if (< (length cmd) 3) + (error "CCL: Invalid number of arguments: %s" cmd)) + (ccl-compile-branch-blocks 'read-branch + (ccl-compile-branch-expression (nth 1 cmd) cmd) + (cdr (cdr cmd)))) + +;; Compile EXPRESSION part of BRANCH statement and return register +;; which holds a value of the expression. +(defun ccl-compile-branch-expression (expr cmd) + (if (listp expr) + ;; EXPR has the form `(EXPR2 OP ARG)'. Compile it as SET + ;; statement of the form `(r7 = (EXPR2 OP ARG))'. + (progn + (ccl-compile-expression 'r7 expr) + 'r7) + (ccl-check-register expr cmd))) + +;; Compile BLOCKs of BRANCH statement. CODE is 'branch or 'read-branch. +;; REG is a register which holds a value of EXPRESSION part. BLOCKs +;; is a list of CCL-BLOCKs. +(defun ccl-compile-branch-blocks (code rrr blocks) + (let ((branches (length blocks)) + branch-idx + jump-table-head-address + empty-block-indexes + block-tail-addresses + block-unconditional-jump) + (ccl-embed-code code rrr branches) + (setq jump-table-head-address ccl-current-ic) + ;; The size of jump table is the number of blocks plus 1 (for the + ;; case RRR is out of range). + (ccl-increment-ic (1+ branches)) + (setq empty-block-indexes (list branches)) + ;; Compile each block. + (setq branch-idx 0) + (while blocks + (if (null (car blocks)) + ;; This block is empty. + (setq empty-block-indexes (cons branch-idx empty-block-indexes) + block-unconditional-jump t) + ;; This block is not empty. + (ccl-embed-data (- ccl-current-ic jump-table-head-address) + (+ jump-table-head-address branch-idx)) + (setq block-unconditional-jump (ccl-compile-1 (car blocks))) + (if (not block-unconditional-jump) + (progn + ;; Jump address of the end of branches are embedded later. + ;; For the moment, just remember where to embed them. + (setq block-tail-addresses + (cons ccl-current-ic block-tail-addresses)) + (ccl-embed-code 'jump 0 0)))) + (setq branch-idx (1+ branch-idx)) + (setq blocks (cdr blocks))) + (if (not block-unconditional-jump) + ;; We don't need jump code at the end of the last block. + (setq block-tail-addresses (cdr block-tail-addresses) + ccl-current-ic (1- ccl-current-ic))) + ;; Embed jump address at the tailing jump commands of blocks. + (while block-tail-addresses + (ccl-embed-current-address (car block-tail-addresses)) + (setq block-tail-addresses (cdr block-tail-addresses))) + ;; For empty blocks, make entries in the jump table point directly here. + (while empty-block-indexes + (ccl-embed-data (- ccl-current-ic jump-table-head-address) + (+ jump-table-head-address (car empty-block-indexes))) + (setq empty-block-indexes (cdr empty-block-indexes)))) + ;; Branch command ends by unconditional jump if RRR is out of range. + nil) + +;; Compile LOOP statement. +(defun ccl-compile-loop (cmd) + (if (< (length cmd) 2) + (error "CCL: Invalid number of arguments: %s" cmd)) + (let* ((ccl-loop-head ccl-current-ic) + (ccl-breaks nil) + unconditional-jump) + (setq cmd (cdr cmd)) + (if cmd + (progn + (setq unconditional-jump t) + (while cmd + (setq unconditional-jump + (and (ccl-compile-1 (car cmd)) unconditional-jump)) + (setq cmd (cdr cmd))) + (if (not ccl-breaks) + unconditional-jump + ;; Embed jump address for break statements encountered in + ;; this loop. + (while ccl-breaks + (ccl-embed-current-address (car ccl-breaks)) + (setq ccl-breaks (cdr ccl-breaks)))) + nil)))) + +;; Compile BREAK statement. +(defun ccl-compile-break (cmd) + (if (/= (length cmd) 1) + (error "CCL: Invalid number of arguments: %s" cmd)) + (if (null ccl-loop-head) + (error "CCL: No outer loop: %s" cmd)) + (setq ccl-breaks (cons ccl-current-ic ccl-breaks)) + (ccl-embed-code 'jump 0 0) + t) + +;; Compile REPEAT statement. +(defun ccl-compile-repeat (cmd) + (if (/= (length cmd) 1) + (error "CCL: Invalid number of arguments: %s" cmd)) + (if (null ccl-loop-head) + (error "CCL: No outer loop: %s" cmd)) + (ccl-embed-code 'jump 0 ccl-loop-head) + t) + +;; Compile WRITE-REPEAT statement. +(defun ccl-compile-write-repeat (cmd) + (if (/= (length cmd) 2) + (error "CCL: Invalid number of arguments: %s" cmd)) + (if (null ccl-loop-head) + (error "CCL: No outer loop: %s" cmd)) + (let ((arg (nth 1 cmd))) + (cond ((integer-or-char-p arg) + (ccl-embed-code 'write-const-jump 0 ccl-loop-head) + (ccl-embed-data arg)) + ((stringp arg) + (let ((len (length arg)) + (i 0)) + (ccl-embed-code 'write-string-jump 0 ccl-loop-head) + (ccl-embed-data len) + (ccl-embed-string len arg))) + (t + (ccl-check-register arg cmd) + (ccl-embed-code 'write-register-jump arg ccl-loop-head)))) + t) + +;; Compile WRITE-READ-REPEAT statement. +(defun ccl-compile-write-read-repeat (cmd) + (if (or (< (length cmd) 2) (> (length cmd) 3)) + (error "CCL: Invalid number of arguments: %s" cmd)) + (if (null ccl-loop-head) + (error "CCL: No outer loop: %s" cmd)) + (let ((rrr (ccl-check-register (nth 1 cmd) cmd)) + (arg (nth 2 cmd))) + (cond ((null arg) + (ccl-embed-code 'write-register-read-jump rrr ccl-loop-head)) + ((integer-or-char-p arg) + (ccl-embed-code 'write-const-read-jump rrr arg ccl-loop-head)) + ((vectorp arg) + (let ((len (length arg)) + (i 0)) + (ccl-embed-code 'write-array-read-jump rrr ccl-loop-head) + (ccl-embed-data len) + (while (< i len) + (ccl-embed-data (aref arg i)) + (setq i (1+ i))))) + (t + (error "CCL: Invalid argument %s: %s" arg cmd))) + (ccl-embed-code 'read-jump rrr ccl-loop-head)) + t) + +;; Compile READ statement. +(defun ccl-compile-read (cmd) + (if (< (length cmd) 2) + (error "CCL: Invalid number of arguments: %s" cmd)) + (let* ((args (cdr cmd)) + (i (1- (length args)))) + (while args + (let ((rrr (ccl-check-register (car args) cmd))) + (ccl-embed-code 'read-register rrr i) + (setq args (cdr args) i (1- i))))) + nil) + +;; Compile READ-IF statement. +(defun ccl-compile-read-if (cmd) + (ccl-compile-if cmd 'read)) + +;; Compile WRITE statement. +(defun ccl-compile-write (cmd) + (if (< (length cmd) 2) + (error "CCL: Invalid number of arguments: %s" cmd)) + (let ((rrr (nth 1 cmd))) + (cond ((integer-or-char-p rrr) + (ccl-embed-code 'write-const-string 0 rrr)) + ((stringp rrr) + (ccl-compile-write-string rrr)) + ((and (symbolp rrr) (vectorp (nth 2 cmd))) + (ccl-check-register rrr cmd) + ;; CMD has the form `(write REG ARRAY)'. + (let* ((arg (nth 2 cmd)) + (len (length arg)) + (i 0)) + (ccl-embed-code 'write-array rrr len) + (while (< i len) + (if (not (integer-or-char-p (aref arg i))) + (error "CCL: Invalid argument %s: %s" arg cmd)) + (ccl-embed-data (aref arg i)) + (setq i (1+ i))))) + + ((symbolp rrr) + ;; CMD has the form `(write REG ...)'. + (let* ((args (cdr cmd)) + (i (1- (length args)))) + (while args + (setq rrr (ccl-check-register (car args) cmd)) + (ccl-embed-code 'write-register rrr i) + (setq args (cdr args) i (1- i))))) + + ((listp rrr) + ;; CMD has the form `(write (LEFT OP RIGHT))'. + (let ((left (car rrr)) + (op (get (nth 1 rrr) 'ccl-arith-code)) + (right (nth 2 rrr))) + (if (listp left) + (progn + ;; RRR has the form `((EXPR OP2 ARG) OP RIGHT)'. + ;; Compile the first term as `(r7 = (EXPR OP2 ARG))'. + (ccl-compile-expression 'r7 left) + (setq left 'r7))) + ;; Now RRR has the form `(ARG OP RIGHT)'. + (if (integer-or-char-p right) + (progn + (ccl-embed-code 'write-expr-const 0 (ash op 3) left) + (ccl-embed-data right)) + (ccl-check-register right rrr) + (ccl-embed-code 'write-expr-register 0 + (logior (ash op 3) + (get right 'ccl-register-number)))))) + + (t + (error "CCL: Invalid argument: %s" cmd)))) + nil) + +;; Compile CALL statement. +(defun ccl-compile-call (cmd) + (if (/= (length cmd) 2) + (error "CCL: Invalid number of arguments: %s" cmd)) + (if (not (symbolp (nth 1 cmd))) + (error "CCL: Subroutine should be a symbol: %s" cmd)) + (let* ((name (nth 1 cmd)) + (idx (get name 'ccl-program-idx))) + (if (not idx) + (error "CCL: Unknown subroutine name: %s" name)) + (ccl-embed-code 'call 0 idx)) + nil) + +;; Compile END statement. +(defun ccl-compile-end (cmd) + (if (/= (length cmd) 1) + (error "CCL: Invalid number of arguments: %s" cmd)) + (ccl-embed-code 'end 0 0) + t) + +;;; CCL dump staffs + +;; To avoid byte-compiler warning. +(defvar ccl-code) + +;;;###autoload +(defun ccl-dump (ccl-code) + "Disassemble compiled CCL-CODE." + (let ((len (length ccl-code)) + (buffer-mag (aref ccl-code 0))) + (cond ((= buffer-mag 0) + (insert "Don't output anything.\n")) + ((= buffer-mag 1) + (insert "Out-buffer must be as large as in-buffer.\n")) + (t + (insert + (format "Out-buffer must be %d times bigger than in-buffer.\n" + buffer-mag)))) + (insert "Main-body:\n") + (setq ccl-current-ic 2) + (if (> (aref ccl-code 1) 0) + (progn + (while (< ccl-current-ic (aref ccl-code 1)) + (ccl-dump-1)) + (insert "At EOF:\n"))) + (while (< ccl-current-ic len) + (ccl-dump-1)) + )) + +;; Return a CCL code in `ccl-code' at `ccl-current-ic'. +(defun ccl-get-next-code () + (prog1 + (aref ccl-code ccl-current-ic) + (setq ccl-current-ic (1+ ccl-current-ic)))) + +(defun ccl-dump-1 () + (let* ((code (ccl-get-next-code)) + (cmd (aref ccl-code-table (logand code 31))) + (rrr (ash (logand code 255) -5)) + (cc (ash code -8))) + (insert (format "%5d:[%s] " (1- ccl-current-ic) cmd)) + (funcall (get cmd 'ccl-dump-function) rrr cc))) + +(defun ccl-dump-set-register (rrr cc) + (insert (format "r%d = r%d\n" rrr cc))) + +(defun ccl-dump-set-short-const (rrr cc) + (insert (format "r%d = %d\n" rrr cc))) + +(defun ccl-dump-set-const (rrr ignore) + (insert (format "r%d = %d\n" rrr (ccl-get-next-code)))) + +(defun ccl-dump-set-array (rrr cc) + (let ((rrr2 (logand cc 7)) + (len (ash cc -3)) + (i 0)) + (insert (format "r%d = array[r%d] of length %d\n\t" + rrr rrr2 len)) + (while (< i len) + (insert (format "%d " (ccl-get-next-code))) + (setq i (1+ i))) + (insert "\n"))) + +(defun ccl-dump-jump (ignore cc &optional address) + (insert (format "jump to %d(" (+ (or address ccl-current-ic) cc))) + (if (>= cc 0) + (insert "+")) + (insert (format "%d)\n" (1+ cc)))) + +(defun ccl-dump-jump-cond (rrr cc) + (insert (format "if (r%d == 0), " rrr)) + (ccl-dump-jump nil cc)) + +(defun ccl-dump-write-register-jump (rrr cc) + (insert (format "write r%d, " rrr)) + (ccl-dump-jump nil cc)) + +(defun ccl-dump-write-register-read-jump (rrr cc) + (insert (format "write r%d, read r%d, " rrr rrr)) + (ccl-dump-jump nil cc) + (ccl-get-next-code) ; Skip dummy READ-JUMP + ) + +(defun ccl-extract-arith-op (cc) + (aref ccl-arith-table (ash cc -6))) + +(defun ccl-dump-write-expr-const (ignore cc) + (insert (format "write (r%d %s %d)\n" + (logand cc 7) + (ccl-extract-arith-op cc) + (ccl-get-next-code)))) + +(defun ccl-dump-write-expr-register (ignore cc) + (insert (format "write (r%d %s r%d)\n" + (logand cc 7) + (ccl-extract-arith-op cc) + (logand (ash cc -3) 7)))) + +(defun ccl-dump-insert-char (cc) + (cond ((= cc ?\t) (insert " \"^I\"")) + ((= cc ?\n) (insert " \"^J\"")) + (t (insert (format " \"%c\"" cc))))) + +(defun ccl-dump-write-const-jump (ignore cc) + (let ((address ccl-current-ic)) + (insert "write char") + (ccl-dump-insert-char (ccl-get-next-code)) + (insert ", ") + (ccl-dump-jump nil cc address))) + +(defun ccl-dump-write-const-read-jump (rrr cc) + (let ((address ccl-current-ic)) + (insert "write char") + (ccl-dump-insert-char (ccl-get-next-code)) + (insert (format ", read r%d, " rrr)) + (ccl-dump-jump cc address) + (ccl-get-next-code) ; Skip dummy READ-JUMP + )) + +(defun ccl-dump-write-string-jump (ignore cc) + (let ((address ccl-current-ic) + (len (ccl-get-next-code)) + (i 0)) + (insert "write \"") + (while (< i len) + (let ((code (ccl-get-next-code))) + (insert (ash code -16)) + (if (< (1+ i) len) (insert (logand (ash code -8) 255))) + (if (< (+ i 2) len) (insert (logand code 255)))) + (setq i (+ i 3))) + (insert "\", ") + (ccl-dump-jump nil cc address))) + +(defun ccl-dump-write-array-read-jump (rrr cc) + (let ((address ccl-current-ic) + (len (ccl-get-next-code)) + (i 0)) + (insert (format "write array[r%d] of length %d,\n\t" rrr len)) + (while (< i len) + (ccl-dump-insert-char (ccl-get-next-code)) + (setq i (1+ i))) + (insert (format "\n\tthen read r%d, " rrr)) + (ccl-dump-jump nil cc address) + (ccl-get-next-code) ; Skip dummy READ-JUMP. + )) + +(defun ccl-dump-read-jump (rrr cc) + (insert (format "read r%d, " rrr)) + (ccl-dump-jump nil cc)) + +(defun ccl-dump-branch (rrr len) + (let ((jump-table-head ccl-current-ic) + (i 0)) + (insert (format "jump to array[r%d] of length %d\n\t" rrr len)) + (while (<= i len) + (insert (format "%d " (+ jump-table-head (ccl-get-next-code)))) + (setq i (1+ i))) + (insert "\n"))) + +(defun ccl-dump-read-register (rrr cc) + (insert (format "read r%d (%d remaining)\n" rrr cc))) + +(defun ccl-dump-read-branch (rrr len) + (insert (format "read r%d, " rrr)) + (ccl-dump-branch rrr len)) + +(defun ccl-dump-write-register (rrr cc) + (insert (format "write r%d (%d remaining)\n" rrr cc))) + +(defun ccl-dump-call (ignore cc) + (insert (format "call subroutine #%d\n" cc))) + +(defun ccl-dump-write-const-string (rrr cc) + (if (= rrr 0) + (progn + (insert "write char") + (ccl-dump-insert-char cc) + (newline)) + (let ((len cc) + (i 0)) + (insert "write \"") + (while (< i len) + (let ((code (ccl-get-next-code))) + (insert (format "%c" (lsh code -16))) + (if (< (1+ i) len) + (insert (format "%c" (logand (lsh code -8) 255)))) + (if (< (+ i 2) len) + (insert (format "%c" (logand code 255)))) + (setq i (+ i 3)))) + (insert "\"\n")))) + +(defun ccl-dump-write-array (rrr cc) + (let ((i 0)) + (insert (format "write array[r%d] of length %d\n\t" rrr cc)) + (while (< i cc) + (ccl-dump-insert-char (ccl-get-next-code)) + (setq i (1+ i))) + (insert "\n"))) + +(defun ccl-dump-end (&rest ignore) + (insert "end\n")) + +(defun ccl-dump-set-assign-expr-const (rrr cc) + (insert (format "r%d %s= %d\n" + rrr + (ccl-extract-arith-op cc) + (ccl-get-next-code)))) + +(defun ccl-dump-set-assign-expr-register (rrr cc) + (insert (format "r%d %s= r%d\n" + rrr + (ccl-extract-arith-op cc) + (logand cc 7)))) + +(defun ccl-dump-set-expr-const (rrr cc) + (insert (format "r%d = r%d %s %d\n" + rrr + (logand cc 7) + (ccl-extract-arith-op cc) + (ccl-get-next-code)))) + +(defun ccl-dump-set-expr-register (rrr cc) + (insert (format "r%d = r%d %s r%d\n" + rrr + (logand cc 7) + (ccl-extract-arith-op cc) + (logand (ash cc -3) 7)))) + +(defun ccl-dump-jump-cond-expr-const (rrr cc) + (let ((address ccl-current-ic)) + (insert (format "if !(r%d %s %d), " + rrr + (aref ccl-arith-table (ccl-get-next-code)) + (ccl-get-next-code))) + (ccl-dump-jump nil cc address))) + +(defun ccl-dump-jump-cond-expr-register (rrr cc) + (let ((address ccl-current-ic)) + (insert (format "if !(r%d %s r%d), " + rrr + (aref ccl-arith-table (ccl-get-next-code)) + (ccl-get-next-code))) + (ccl-dump-jump nil cc address))) + +(defun ccl-dump-read-jump-cond-expr-const (rrr cc) + (insert (format "read r%d, " rrr)) + (ccl-dump-jump-cond-expr-const rrr cc)) + +(defun ccl-dump-read-jump-cond-expr-register (rrr cc) + (insert (format "read r%d, " rrr)) + (ccl-dump-jump-cond-expr-register rrr cc)) + +(defun ccl-dump-binary (ccl-code) + (let ((len (length ccl-code)) + (i 2)) + (while (< i len) + (let ((code (aref ccl-code i)) + (j 27)) + (while (>= j 0) + (insert (if (= (logand code (ash 1 j)) 0) ?0 ?1)) + (setq j (1- j))) + (setq code (logand code 31)) + (if (< code (length ccl-code-table)) + (insert (format ":%s" (aref ccl-code-table code)))) + (insert "\n")) + (setq i (1+ i))))) + +;; CCL emulation staffs + +;; Not yet implemented. + +;;;###autoload +(defmacro declare-ccl-program (name) + "Declare NAME as a name of CCL program. + +To compile a CCL program which calls another CCL program not yet +defined, it must be declared as a CCL program in advance." + `(put ',name 'ccl-program-idx (register-ccl-program ',name nil))) + +;;;###autoload +(defmacro define-ccl-program (name ccl-program &optional doc) + "Set NAME the compiled code of CCL-PROGRAM. +CCL-PROGRAM is `eval'ed before being handed to the CCL compiler `ccl-compile'. +The compiled code is a vector of integers." + `(let ((prog ,(ccl-compile (eval ccl-program)))) + (defconst ,name prog ,doc) + (put ',name 'ccl-program-idx (register-ccl-program ',name prog)) + nil)) + +;;;###autoload +(defun ccl-execute-with-args (ccl-prog &rest args) + "Execute CCL-PROGRAM with registers initialized by the remaining args. +The return value is a vector of resulting CCL registeres." + (let ((reg (make-vector 8 0)) + (i 0)) + (while (and args (< i 8)) + (if (not (integerp (car args))) + (error "Arguments should be integer")) + (aset reg i (car args)) + (setq args (cdr args) i (1+ i))) + (ccl-execute ccl-prog reg) + reg)) + +(provide 'ccl) + +;; ccl.el ends here diff --git a/lisp/mule/mule-help.el b/lisp/mule/mule-help.el new file mode 100644 index 0000000..0a330cd --- /dev/null +++ b/lisp/mule/mule-help.el @@ -0,0 +1,86 @@ +;;; mule-help.el --- Mule-ized Help functions + +;; Copyright (C) 1997 by Free Software Foundation, Inc. + +;; Author: SL Baur +;; Keywords: help, internal + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +;; 02111-1307, USA. + +;;; Synched up with: Emacs 20.1 + +;;; Commentary: + +;; + +;;; Code: + +;; TUTORIAL arg is XEmacs addition +(defun help-with-tutorial (&optional arg tutorial) + "Select the XEmacs learn-by-doing tutorial. +If there is a tutorial version written in the language +of the selected language environment, that version is used. +If there's no tutorial in that language, `TUTORIAL' is selected. +With arg, you are asked to select which language." + (interactive "P") + (let (lang filename file) + (if arg + (or (setq lang (read-language-name 'tutorial "Language: ")) + (error "No tutorial file of the specified language")) + (setq lang current-language-environment)) + ;; The menubar buttons call this function like this: + ;; (help-with-tutorial nil "tutorial.lang") + (setq filename (if (and (not arg) tutorial) + tutorial + (or (get-language-info lang 'tutorial) + (or tutorial "TUTORIAL")))) + (setq file (expand-file-name (concat "~/" filename))) + (delete-other-windows) + (if (get-file-buffer file) + (switch-to-buffer (get-file-buffer file)) + (switch-to-buffer (create-file-buffer file)) + (setq buffer-file-name file) + (setq default-directory (expand-file-name "~/")) + (setq buffer-auto-save-file-name nil) + (insert-file-contents (locate-data-file filename)) + (goto-char (point-min)) + ;; The 'didactic' blank lines: Possibly insert blank lines + ;; around <>, and change << >> to [ ]. + (if (re-search-forward "^<<.+>>" nil t) + (let ((n (- (window-height (selected-window)) + (count-lines (point-min) (point-at-bol)) + 6))) + (if (< n 12) + (progn (beginning-of-line) (kill-line)) + ;; Some people get confused by the large gap + (delete-backward-char 2) + (insert "]") + (beginning-of-line) + (save-excursion + (delete-char 2) + (insert "[")) + (newline (/ n 2)) + (next-line 1) + (newline (- n (/ n 2)))))) + (goto-char (point-min)) + (set-buffer-modified-p nil)))) + + +(provide 'mule-help) + +;;; mule-help.el ends here \ No newline at end of file diff --git a/lisp/mule/mule-init.el b/lisp/mule/mule-init.el new file mode 100644 index 0000000..baf9c57 --- /dev/null +++ b/lisp/mule/mule-init.el @@ -0,0 +1,132 @@ +;; Mule default configuration file + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; 87.6.9 created by K.handa +;;; (Note: following comment obsolete -- mrb) + +;;; IMPORTANT NOTICE -- DON'T EDIT THIS FILE!!! +;;; Keep this file unmodified for further patches being applied successfully. +;;; All language specific basic environments are defined here. +;;; By default, Japanese is set as the primary environment. +;;; You can change primary environment in `./lisp/site-init.el by +;;; `set-primary-environment'. For instance, +;;; (set-primary-environment 'chinese) +;;; makes Chinese the primary environment. +;;; If you are still not satisfied with the settings, you can +;;; override them after the above line. For instance, +;;; (set-default-buffer-file-coding-system 'big5) +;;; makes big5 be used for file I/O by default. +;;; If you are not satisfied with other default settings in this file, +;;; override any of them also in `./lisp/site-init.el'. For instance, +;;; (define-program-coding-system nil ".*mail.*" 'iso-8859-1) +;;; makes the coding-system 'iso-8859-1 be used in mail. + + +;;;; GLOBAL ENVIRONMENT SETUP +(require 'cl) + + +;; (setq language-environment-list +;; (sort (language-environment-list) 'string-lessp)) + +;; MULE keymap codes were moved to mule-cmds.el. + +;; Alternative key definitions +;; Original mapping will be altered by set-keyboard-coding-system. +(define-key global-map [(meta \#)] 'ispell-word) ;originally "$" +;; (define-key global-map [(meta {)] 'insert-parentheses) ;originally "(" + +;; Following line isn't mule-specific --mrb +;;(setq-default modeline-buffer-identification '("XEmacs: %17b")) + +;; MULE keymap codes were moved to mule-cmds.el. + +;; (define-key help-map "T" 'help-with-tutorial-for-mule) + +;; (defvar help-with-tutorial-language-alist +;; '(("Japanese" . ".jp") +;; ("Korean" . ".kr") +;; ("Thai" . ".th"))) + +;(defun help-with-tutorial-for-mule (language) +; "Select the Mule learn-by-doing tutorial." +; (interactive (list (let ((completion-ignore-case t) +; lang) +; (completing-read +; "Language: " +; help-with-tutorial-language-alist)))) +; (setq language (cdr (assoc language help-with-tutorial-language-alist))) +; (help-with-tutorial (concat "mule/TUTORIAL" (or language "")))) + +(defvar auto-language-alist + '(("^ja" . "Japanese") + ("^zh" . "Chinese") + ("^ko" . "Korean")) + "Alist of LANG patterns vs. corresponding language environment. +Each element looks like (REGEXP . LANGUAGE-ENVIRONMENT). +It the value of the environment variable LANG matches the regexp REGEXP, +then `set-language-environment' is called with LANGUAGE-ENVIRONMENT.") + +(defun init-mule () + "Initialize MULE environment at startup. Don't call this." + (let ((lang (or (getenv "LC_ALL") (getenv "LC_MESSAGES") (getenv "LANG")))) + (unless (or (null lang) (string-equal "C" lang)) + (let ((case-fold-search t)) + (loop for elt in auto-language-alist + if (string-match (car elt) lang) + return (progn + (setq lang (substring lang 0 (match-end 0))) + (set-language-environment (cdr elt)) + ))) + ;; Load a (localizable) locale-specific init file, if it exists. + (load (format "%s%s/locale-start" + (locate-data-directory "start-files") + lang) t t))) + + (when current-language-environment + ;; Translate remaining args on command line using file-name-coding-system + (loop for arg in-ref command-line-args-left do + (setf arg (decode-coding-string arg file-name-coding-system))) + + ;; rman seems to be incompatible with encoded text + (setq Manual-use-rosetta-man nil) + + ;; Make sure ls -l output is readable by dired and encoded using + ;; file-name-coding-system + (add-hook + 'dired-mode-hook + (lambda () + (make-local-variable 'process-environment) + (setenv "LC_MESSAGES" "C") + (setenv "LC_TIME" "C")))) + + ;; Register avairable input methods by loading LEIM list file. + (load "leim-list.el" 'noerror 'nomessage 'nosuffix) + ) + +(add-hook 'before-init-hook 'init-mule) + +;;;;; Enable the tm package by default +;;(defun init-mule-tm () +;; "Load MIME (TM) support for GNUS, VM, MH-E, and RMAIL." +;; (load "mime-setup")) + +;;(add-hook 'after-init-hook 'init-mule-tm) + +;;; mule-init.el ends here diff --git a/lisp/mule/mule-misc.el b/lisp/mule/mule-misc.el new file mode 100644 index 0000000..3488781 --- /dev/null +++ b/lisp/mule/mule-misc.el @@ -0,0 +1,295 @@ +;; mule-misc.el --- Miscellaneous Mule functions. + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1992,93,94,95 Free Software Foundation, Inc. +;; Copyright (C) 1995 Amdahl Corporation. +;; Copyright (C) 1995 Sun Microsystems. + +;; This file is part of XEmacs. + +;; XEmacs is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; XEmacs is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; +;;; protect specified local variables from kill-all-local-variables +;;; + +(defvar self-insert-after-hook nil + "Hook to run when extended self insertion command exits. Should take +two arguments START and END corresponding to character position.") + +(make-variable-buffer-local 'self-insert-after-hook) + +(defun toggle-display-direction () + (interactive) + (setq display-direction (not display-direction)) + (if (interactive-p) (redraw-display))) + +;;; +;;; Utility functions for Mule +;;; + +;(defun string-to-char-list (str) +; (let ((len (length str)) +; (idx 0) +; c l) +; (while (< idx len) +; (setq c (sref str idx)) +; (setq idx (+ idx (charset-dimension (char-charset c)))) +; (setq l (cons c l))) +; (nreverse l))) + +(defun string-to-char-list (str) + (mapcar 'identity str)) + +(defun string-width (string) + "Return number of columns STRING occupies when displayed. +Uses the charset-columns attribute of the characters in STRING, +which may not accurately represent the actual display width when +using a window system." + (let ((col 0) + (len (length string)) + (i 0)) + (while (< i len) + (setq col (+ col (charset-columns (char-charset (aref string i))))) + (setq i (1+ i))) + col)) + +(defalias 'string-columns 'string-width) +(make-obsolete 'string-columns 'string-width) + +(defun delete-text-in-column (from to) + "Delete the text between column FROM and TO (exclusive) of the current line. +Nil of FORM or TO means the current column. + +If there's a character across the borders, the character is replaced +with the same width of spaces before deleting." + (save-excursion + (let (p1 p2) + (if from + (progn + (setq p1 (move-to-column from)) + (if (> p1 from) + (progn + (delete-char -1) + (insert-char ? (- p1 (current-column))) + (forward-char (- from p1)))))) + (setq p1 (point)) + (if to + (progn + (setq p2 (move-to-column to)) + (if (> p2 to) + (progn + (delete-char -1) + (insert-char ? (- p2 (current-column))) + (forward-char (- to p2)))))) + (setq p2 (point)) + (delete-region p1 p2)))) + +;; #### Someone translate this!! + +(defun mc-normal-form-string (str) + "$BJ8;zNs(B STR $B$N4A;zI8=`7AJ8;zNs$rJV$9!%(B" + (let ((i 0)) + (while (setq i (string-match "\n" str i)) + (if (and (<= 1 i) (< i (1- (length str))) + (< (aref str (1- i)) 128) + (< (aref str (1+ i)) 128)) + (aset str i ? )) + (setq i (1+ i))) + (if (string-match "\n" str 0) + (let ((c 0) (i 0) new) + (while (setq i (string-match "\n" str i)) + (setq i (1+ i)) + (setq c (1+ c))) + (setq new (make-string (- (length str) c) 0)) + (setq i 0 c 0) + (while (< i (length str)) + (cond((not (= (aref str i) ?\n )) + (aset new c (aref str i)) + (setq c (1+ c)))) + + (setq i (1+ i)) + ) + new) + str))) + + +(defun string-memq (str list) + "Returns non-nil if STR is an element of LIST. Comparison done with string=. +The value is actually the tail of LIST whose car is STR. +If each element of LIST is not a string, it is converted to string + before comparison." + (let (find elm) + (while (and (not find) list) + (setq elm (car list)) + (if (numberp elm) (setq elm (char-to-string elm))) + (if (string= str elm) + (setq find list) + (setq list (cdr list)))) + find)) + +(defun cancel-undo-boundary () + "Cancel undo boundary." + (if (and (consp buffer-undo-list) + ;; if car is nil. + (null (car buffer-undo-list)) ) + (setq buffer-undo-list (cdr buffer-undo-list)) )) + + +;;; Common API emulation functions for GNU Emacs-merged Mule. +;;; As suggested by MORIOKA Tomohiko + +;; Following definition were imported from Emacs/mule-delta. + +;; Function `truncate-string-to-width' was moved to mule-util.el. + +;; end of imported definition + + +(defalias 'sref 'aref) +(defalias 'map-char-concat 'mapcar) +(defun char-bytes (character) + "Return number of length a CHARACTER occupies in a string or buffer. +It returns only 1 in XEmacs. It is for compatibility with MULE 2.3." + 1) +(defalias 'char-length 'char-bytes) + +(defun char-width (character) + "Return number of columns a CHARACTER occupies when displayed." + (charset-columns (char-charset character))) + +(defalias 'char-columns 'char-width) +(make-obsolete 'char-columns 'char-width) + +(defalias 'charset-description 'charset-doc-string) + +(defalias 'find-charset-string 'charsets-in-string) +(defalias 'find-charset-region 'charsets-in-region) + +(defun find-non-ascii-charset-string (string) + "Return a list of charsets in the STRING except ascii. +It might be available for compatibility with Mule 2.3, +because its `find-charset-string' ignores ASCII charset." + (delq 'ascii (charsets-in-string string))) + +(defun find-non-ascii-charset-region (start end) + "Return a list of charsets except ascii in the region between START and END. +It might be available for compatibility with Mule 2.3, +because its `find-charset-string' ignores ASCII charset." + (delq 'ascii (charsets-in-region start end))) + +(defun split-char (char) + "Return list of charset and one or two position-codes of CHAR." + (let ((charset (char-charset char))) + (if (eq charset 'ascii) + (list charset (char-int char)) + (let ((i 0) + (len (charset-dimension charset)) + (code (if (integerp char) + char + (char-int char))) + dest) + (while (< i len) + (setq dest (cons (logand code 127) dest) + code (lsh code -7) + i (1+ i))) + (cons charset dest) + )))) + + +;;; Commands + +(defun set-buffer-process-coding-system (decoding encoding) + "Set coding systems for the process associated with the current buffer. +DECODING is the coding system to be used to decode input from the process, +ENCODING is the coding system to be used to encode output to the process. + +For a list of possible values of CODING-SYSTEM, use \\[list-coding-systems]." + (interactive + "zCoding-system for process input: \nzCoding-system for process output: ") + (let ((proc (get-buffer-process (current-buffer)))) + (if (null proc) + (error "no process") + (check-coding-system decoding) + (check-coding-system encoding) + (set-process-coding-system proc decoding encoding))) + (force-mode-line-update)) + + +;;; Language environments + +;; (defvar current-language-environment nil) + +;; (defvar language-environment-list nil) + +;; (defun current-language-environment () +;; "Return the current language environment as a symbol. +;; Returns nil if `set-language-environment' has not been called." +;; current-language-environment) + +;; (defun language-environment-list () +;; "Return a list of all currently defined language environments." +;; language-environment-list) + +;; (defun language-environment-p (sym) +;; "True if SYM names a defined language environment." +;; (memq sym (language-environment-list))) + +;; (defun set-language-environment (env) +;; "Set the current language environment to ENV." +;; (interactive +;; (list (intern (completing-read "Language environment: " +;; obarray 'language-environment-p +;; 'require-match)))) +;; (when (not (string= (charset-registry 'ascii) "iso8859-1")) +;; (set-charset-registry 'ascii "iso8859-1")) +;; (let ((func (get env 'set-lang-environ))) +;; (if (not (null func)) +;; (funcall func))) +;; (setq current-language-environment env) +;; (if (featurep 'egg) +;; (egg-lang-switch-callback)) +;; ;; (if (featurep 'quail) +;; ;; (quail-lang-switch-callback)) +;; ) + +;; (defun define-language-environment (env-sym doc-string enable-function) +;; "Define a new language environment, named by ENV-SYM. +;; DOC-STRING should be a string describing the environment. +;; ENABLE-FUNCTION should be a function of no arguments that will be called +;; when the language environment is made current." +;; (put env-sym 'lang-environ-doc-string doc-string) +;; (put env-sym 'set-lang-environ enable-function) +;; (setq language-environment-list (cons env-sym language-environment-list))) + +(defun define-egg-environment (env-sym doc-string enable-function) + "Define a new language environment for egg, named by ENV-SYM. +DOC-STRING should be a string describing the environment. +ENABLE-FUNCTION should be a function of no arguments that will be called +when the language environment is made current." + (put env-sym 'egg-environ-doc-string doc-string) + (put env-sym 'set-egg-environ enable-function)) + +;; (defun define-quail-environment (env-sym doc-string enable-function) +;; "Define a new language environment for quail, named by ENV-SYM. +;; DOC-STRING should be a string describing the environment. +;; ENABLE-FUNCTION should be a function of no arguments that will be called +;; when the language environment is made current." +;; (put env-sym 'quail-environ-doc-string doc-string) +;; (put env-sym 'set-quail-environ enable-function)) + +;;; mule-misc.el ends here diff --git a/lisp/mule/mule-tty-init.el b/lisp/mule/mule-tty-init.el new file mode 100644 index 0000000..40054d5 --- /dev/null +++ b/lisp/mule/mule-tty-init.el @@ -0,0 +1,47 @@ +;;; mule-tty-init.el --- Initialization code for console tty under MULE + +;; Copyright (C) 1998 Free Software Foundation, Inc. +;; Copyright (C) 1998 Kazuyuki IENAGA + +;; Author: Kazuyuki IENAGA +;; Keywords: mule, tty, console, dumped + +;; This file is part of XEmacs. +;; +;; XEmacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. +;; +;; XEmacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: + +;; This file is dumped with XEmacs when Mule and TTY support are enabled. + +;;; Code: + +(defvar mule-tty-win-initted nil) + +(defun init-mule-tty-win () + "Initialize TTY for MULE at startup. Don't call this." + (unless mule-tty-win-initted + (add-hook + 'before-init-hook + (lambda () + (when (eq (device-type) 'tty) + (when (string-match "^kterm" (getenv "TERM")) + (set-terminal-coding-system 'euc-jp) + (set-keyboard-coding-system 'euc-jp)) + (set-console-tty-coding-system)))) + (setq mule-tty-win-initted t))) + +;;; mule-tty-init.el ends here diff --git a/lisp/mule/mule-x-init.el b/lisp/mule/mule-x-init.el new file mode 100644 index 0000000..8bb351c --- /dev/null +++ b/lisp/mule/mule-x-init.el @@ -0,0 +1,126 @@ +;;; mule-x-init.el --- initialization code for X Windows under MULE +;; Copyright (C) 1994 Free Software Foundation, Inc. +;; Copyright (C) 1996 Ben Wing + +;; Author: various +;; Keywords: mule X11 + +;; This file is part of XEmacs. +;; +;; XEmacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. +;; +;; XEmacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with XEmacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: + +;;; Code: + +;;; Work around what is arguably a Sun CDE bug. + +(defun x-use-halfwidth-roman-font (fullwidth-charset roman-registry) + "Maybe set charset registry of the 'ascii charset to ROMAN-REGISTRY. + +Do this only if: + - the current display is an X device + - the displayed width of FULLWIDTH-CHARSET is twice the displayed + width of the 'ascii charset, but only when using ROMAN-REGISTRY. + +Traditionally, Asian characters have been displayed so that they +occupy exactly twice the screen space of ASCII (`halfwidth') +characters. On many systems, e.g. Sun CDE systems, this can only be +achieved by using a national variant roman font to display ASCII." + (let ((charset-font-width + (lambda (charset) + (font-instance-width + (face-font-instance 'default (selected-device) charset)))) + + (twice-as-wide + (lambda (cs1 cs2) + (let ((width1 (funcall charset-font-width cs1)) + (width2 (funcall charset-font-width cs2))) + (and width1 width2 (eq (+ width1 width1) width2)))))) + + (when (eq 'x (device-type)) + (condition-case nil + (unless (funcall twice-as-wide 'ascii fullwidth-charset) + (set-charset-registry 'ascii roman-registry) + (unless (funcall twice-as-wide 'ascii fullwidth-charset) + ;; Restore if roman-registry didn't help + (set-charset-registry 'ascii "iso8859-1"))) + (error (set-charset-registry 'ascii "iso8859-1")))))) + +;;;; + +(defvar mule-x-win-initted nil) + +(defun init-mule-x-win () + "Initialize X Windows for MULE at startup. Don't call this." + (when (not mule-x-win-initted) + (define-specifier-tag 'mule-fonts + (lambda (device) (eq 'x (device-type device)))) + + (set-face-font + 'default + '("-*-fixed-medium-r-*--16-*-iso8859-1" + "-*-fixed-medium-r-*--*-iso8859-1" + "-*-fixed-medium-r-*--*-iso8859-2" + "-*-fixed-medium-r-*--*-iso8859-3" + "-*-fixed-medium-r-*--*-iso8859-4" + "-*-fixed-medium-r-*--*-iso8859-7" + "-*-fixed-medium-r-*--*-iso8859-8" + "-*-fixed-medium-r-*--*-iso8859-5" + "-*-fixed-medium-r-*--*-iso8859-9" + + ;; Following 3 fonts proposed by Teruhiko.Kurosaka@Japan.eng.sun + "-sun-gothic-medium-r-normal--14-120-75-75-c-60-jisx0201.1976-0" + "-sun-gothic-medium-r-normal--14-120-75-75-c-120-jisx0208.1983-0" + "-wadalab-gothic-medium-r-normal--14-120-75-75-c-120-jisx0212.1990-0" + ;; Other Japanese fonts + "-*-fixed-medium-r-*--*-jisx0201.1976-*" + "-*-fixed-medium-r-*--*-jisx0208.1983-*" + "-*-fixed-medium-r-*--*-jisx0212*-*" + + ;; Chinese fonts + "-*-*-medium-r-*--*-gb2312.1980-*" + + ;; Use One font specification for CNS chinese + ;; Too many variations in font naming + "-*-fixed-medium-r-*--*-cns11643*-*" + ;; "-*-fixed-medium-r-*--*-cns11643*2" + ;; "-*-fixed-medium-r-*--*-cns11643*3" + ;; "-*-fixed-medium-r-*--*-cns11643*4" + ;; "-*-fixed-medium-r-*--*-cns11643.5-0" + ;; "-*-fixed-medium-r-*--*-cns11643.6-0" + ;; "-*-fixed-medium-r-*--*-cns11643.7-0" + + "-*-fixed-medium-r-*--*-big5*-*" + "-*-fixed-medium-r-*--*-sisheng_cwnn-0" + + ;; Other fonts + + ;; "-*-fixed-medium-r-*--*-viscii1.1-1" + + ;; "-*-fixed-medium-r-*--*-mulearabic-0" + ;; "-*-fixed-medium-r-*--*-mulearabic-1" + ;; "-*-fixed-medium-r-*--*-mulearabic-2" + + ;; "-*-fixed-medium-r-*--*-muleipa-1" + ;; "-*-fixed-medium-r-*--*-ethio-*" + + "-*-mincho-medium-r-*--*-ksc5601.1987-*" ; Korean + "-*-fixed-medium-r-*--*-tis620.2529-1" ; Thai + ) + 'global '(mule-fonts) 'append) + + (setq mule-x-win-initted t))) diff --git a/lisp/package-admin.el b/lisp/package-admin.el index 2c99440..d5603ec 100644 --- a/lisp/package-admin.el +++ b/lisp/package-admin.el @@ -177,7 +177,9 @@ or return a location appropriate for the package otherwise." ;; Ok we need to guess (if mule-related (package-admin-get-install-dir 'mule-base nil nil) - (car (last late-packages))))))) + (if (eq package 'xemacs-base) + (car (last late-packages)) + (package-admin-get-install-dir 'xemacs-base nil nil))))))) diff --git a/lisp/paths.el b/lisp/paths.el index 5deff64..094087b 100644 --- a/lisp/paths.el +++ b/lisp/paths.el @@ -129,28 +129,7 @@ the terminal-initialization file to be loaded.") (defconst abbrev-file-name (purecopy "~/.abbrev_defs") "*Default name of file to read abbrevs from.") -(defconst directory-abbrev-alist - (list - ;; - ;; This matches the default Sun automounter temporary mount points. These - ;; temporary mount points may go away, so it's important that we only try - ;; to read files under the "advertised" mount point, rather than the - ;; temporary one, or it will look like files have been deleted on us. - ;; Whoever came up with this design is clearly a moron of the first order, - ;; but now we're stuck with it, no doubt until the end of time. - ;; - ;; For best results, automounter junk should go near the front of this - ;; list, and other user translations should come after it. - ;; - ;; You may need to change this if you're not running the Sun automounter, - ;; if you're not running in the default configuration. Because the - ;; designers (and I use that term loosely) of the automounters failed to - ;; provide any uniform way of disambiguating a pathname, emacs needs to - ;; have knowledge about exactly how the automounter mangles pathnames - ;; (and this knowledge is basically impossible to derive at run-time.) - ;; - (cons (purecopy "\\`/tmp_mnt/") (purecopy "/")) - )) +(defconst directory-abbrev-alist nil) ;; Formerly, the values of these variables were computed once ;; (at dump time). However, with the advent of pre-compiled binaries @@ -203,7 +182,7 @@ Will not override settings in site-init.el or site-run.el." l 'rmail-spool-directory (cond ((string-match "^[^-]+-[^-]+-sco3.2v4" system-configuration) "/usr/spool/mail/") - ;; On The Bull DPX/2 /usr/spool/mail is used although + ;; On The Bull DPX/2 /usr/spool/mail is used although ;; it is usg-unix-v. ((string-match "^m68k-bull-sysv3" system-configuration) "/usr/spool/mail/") @@ -256,8 +235,42 @@ Will not override settings in site-init.el or site-run.el." ;; Solaris 2 has both of these files; prefer /usr/ucb/man ;; because the other has nonstandard argument conventions. (if (file-exists-p "/usr/ucb/man") - "/usr/ucb/man" "/usr/bin/man"))) -) + "/usr/ucb/man" "/usr/bin/man")) + + (funcall + l 'directory-abbrev-alist + ;; Try to match various conventions for automounter temporary + ;; mount points. These temporary mount points may go away, so + ;; it's important that we only try to read files under the + ;; "advertised" mount point, rather than the temporary one, or it + ;; will look like files have been deleted on us. Whoever came up + ;; with this design is clearly a moron of the first order, but + ;; now we're stuck with it, no doubt until the end of time. + ;; + ;; For best results, automounter junk should go near the front of this + ;; list, and other user translations should come after it. + ;; + ;; Our code handles the following empirically observed conventions: + ;; /net is an actual directory! (some systems are not broken!) + ;; /net/HOST -> /tmp_mnt/net/HOST (`standard' old Sun automounter) + ;; /net/HOST -> /tmp_mnt/HOST (BSDI 4.0) + ;; /net/HOST -> /a/HOST (Freebsd 2.2.x) + ;; /net/HOST -> /amd/HOST (seen in amd sample config files) + ;; + ;; If your system has a different convention, you may have to change this. + ;; Don't forget to send in a patch! + (when (file-directory-p "/net") + (append + (when (file-directory-p "/tmp_mnt") + (if (file-directory-p "/tmp_mnt/net") + '(("\\`/tmp_mnt/net/" . "/net/")) + '(("\\`/tmp_mnt/" . "/net/")))) + (when (file-directory-p "/a") + '(("\\`/a/" . "/net/"))) + (when (file-directory-p "/amd") + '(("\\`/amd/" . "/net/"))) + ))) +)) (if (running-temacs-p) (initialize-xemacs-paths)) diff --git a/lisp/process.el b/lisp/process.el index 0f3f64c..749f99d 100644 --- a/lisp/process.el +++ b/lisp/process.el @@ -337,7 +337,7 @@ Fourth arg SERVICE is name of the service desired, or an integer process as a string" ;; by "William G. Dubuque" (with-output-to-string - (call-process shell-file-name nil t nil "-c" command))) + (call-process shell-file-name nil t nil shell-command-switch command))) (defalias 'shell-command-to-string 'exec-to-string) diff --git a/lisp/userlock.el b/lisp/userlock.el index 55a5830..446c326 100644 --- a/lisp/userlock.el +++ b/lisp/userlock.el @@ -154,6 +154,9 @@ to get the latest version of the file, then make the change again.") (throw 'aual-done t)) ((and (misc-user-event-p event) (eq (event-object event) 'yield)) (signal 'file-locked (list "File is locked" fn opponent))) + ((and (misc-user-event-p event) + (eq (event-object event) 'menu-no-selection-hook)) + (signal 'quit nil)) ((button-release-event-p event) ;; don't beep twice nil) (t @@ -189,6 +192,9 @@ Do you really want to edit the buffer? " fn) (revert-buffer nil t) (signal 'file-supersession (list fn "(reverted)"))) + ((and (misc-user-event-p event) + (eq (event-object event) 'menu-no-selection-hook)) + (signal 'quit nil)) ((button-release-event-p event) ;; don't beep twice nil) (t diff --git a/lwlib/lwlib.h b/lwlib/lwlib.h index 92c5cda..b770831 100644 --- a/lwlib/lwlib.h +++ b/lwlib/lwlib.h @@ -1,8 +1,17 @@ #ifndef LWLIB_H #define LWLIB_H +#undef CONST + #include +/* To eliminate use of `const' in the lwlib sources, define CONST_IS_LOSING. */ +#ifdef CONST_IS_LOSING +# define CONST +#else +# define CONST const +#endif + #if defined (LWLIB_MENUBARS_LUCID) || defined (LWLIB_MENUBARS_MOTIF) || defined (LWLIB_MENUBARS_ATHENA) #define NEED_MENUBARS #endif diff --git a/man/ChangeLog b/man/ChangeLog index 1bedbed..06b9a90 100644 --- a/man/ChangeLog +++ b/man/ChangeLog @@ -1,3 +1,7 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/nt/ChangeLog b/nt/ChangeLog index 2c4a4ac..25bc2e2 100644 --- a/nt/ChangeLog +++ b/nt/ChangeLog @@ -1,3 +1,7 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/src/ChangeLog b/src/ChangeLog index 081fbc5..44798e3 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,35 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + +1999-02-25 SL Baur + + * mule-charset.c (Qleading_byte): New variable to implement + charset-leading-byte function. + (Fcharset_property): Use it. + (syms_of_mule_charset): Initialize it. + From Kazuyuki IENAGA + +1999-02-17 Kazuo Oishi + + * glyphs-x.c (cononvert_EImage_to_XImage): correct + bytes per pixel counting. + +1999-02-15 Andy Piper + + * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes + major lockups. + +1999-02-16 Martin Buchholz + + * gdbinit: Fix up commands to run temacs. Add lisp-shadows command. + * alloc.c (xcalloc): undef xcalloc, just like xmalloc + +1999-02-10 Martin Buchholz + + * s/bsdos4.h: New file. Port to BSDI BSD/OS 4.0. + * xintrinsic.h: Redo CONST support for X11 R4 compatibility. + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/src/alloc.c b/src/alloc.c index 86a75e0..b53f506 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -382,6 +382,10 @@ xmalloc (size_t size) return val; } +#ifdef xcalloc +#undef xcalloc +#endif + static void * xcalloc (size_t nelem, size_t elsize) { diff --git a/src/console-tty.h b/src/console-tty.h index 3b88295..bc5aacd 100644 --- a/src/console-tty.h +++ b/src/console-tty.h @@ -293,5 +293,6 @@ Lisp_Object tty_semi_canonicalize_device_connection (Lisp_Object connection, Error_behavior errb); Lisp_Object tty_canonicalize_device_connection (Lisp_Object connection, Error_behavior errb); +struct console * tty_find_console_from_fd (int fd); #endif /* _XEMACS_CONSOLE_TTY_H_ */ diff --git a/src/event-msw.c b/src/event-msw.c index cd67be2..4042366 100644 --- a/src/event-msw.c +++ b/src/event-msw.c @@ -65,6 +65,7 @@ Boston, MA 02111-1307, USA. */ #include "events-mod.h" #ifdef HAVE_MSG_SELECT #include "sysfile.h" +#include "console-tty.h" #elif defined(__CYGWIN32__) typedef unsigned int SOCKET; #endif @@ -121,10 +122,10 @@ static Lisp_Object mswindows_s_dispatch_event_queue, mswindows_s_dispatch_event_ /* The number of things we can wait on */ #define MAX_WAITABLE (MAXIMUM_WAIT_OBJECTS - 1) +#ifndef HAVE_MSG_SELECT /* List of mswindows waitable handles. */ static HANDLE mswindows_waitable_handles[MAX_WAITABLE]; -#ifndef HAVE_MSG_SELECT /* Number of wait handles */ static int mswindows_waitable_count=0; #endif /* HAVE_MSG_SELECT */ @@ -1322,28 +1323,6 @@ mswindows_need_event (int badly_p) pointer_to_this = &select_time_to_block; } - /* select() is slow and buggy so if we don't have any processes - just wait as normal */ - if (memcmp (&process_only_mask, &zero_mask, sizeof(SELECT_TYPE))==0) - { - /* Now try getting a message or process event */ - active = MsgWaitForMultipleObjects (0, mswindows_waitable_handles, - FALSE, badly_p ? INFINITE : 0, - QS_ALLINPUT); - - if (active == WAIT_TIMEOUT) - { - /* No luck trying - just return what we've already got */ - return; - } - else if (active == WAIT_OBJECT_0) - { - /* Got your message, thanks */ - mswindows_drain_windows_queue (); - continue; - } - } - active = select (MAXDESC, &temp_mask, 0, 0, pointer_to_this); if (active == 0) @@ -1356,7 +1335,28 @@ mswindows_need_event (int badly_p) { mswindows_drain_windows_queue (); } - +#ifdef HAVE_TTY + /* Look for a TTY event */ + for (i = 0; i < MAXDESC-1; i++) + { + /* To avoid race conditions (among other things, an infinite + loop when called from Fdiscard_input()), we must return + user events ahead of process events. */ + if (FD_ISSET (i, &temp_mask) && FD_ISSET (i, &tty_only_mask)) + { + struct console *c = tty_find_console_from_fd (i); + Lisp_Object emacs_event = Fmake_event (Qnil, Qnil); + struct Lisp_Event* event = XEVENT (emacs_event); + + assert (c); + if (read_event_from_tty_or_stream_desc (event, c, i)) + { + mswindows_enqueue_dispatch_event (emacs_event); + return; + } + } + } +#endif /* Look for a process event */ for (i = 0; i < MAXDESC-1; i++) { @@ -1369,11 +1369,6 @@ mswindows_need_event (int badly_p) mswindows_enqueue_process_event (p); } - else if (FD_ISSET (i, &tty_only_mask)) - { - /* do we care about tty events? Do we - ever get tty events? */ - } else { /* We might get here when a fake event came @@ -2674,11 +2669,23 @@ emacs_mswindows_unselect_process (struct Lisp_Process *process) static void emacs_mswindows_select_console (struct console *con) { +#ifdef HAVE_MSG_SELECT + if (CONSOLE_MSWINDOWS_P (con)) + return; /* mswindows consoles are automatically selected */ + + event_stream_unixoid_select_console (con); +#endif } static void emacs_mswindows_unselect_console (struct console *con) { +#ifdef HAVE_MSG_SELECT + if (CONSOLE_MSWINDOWS_P (con)) + return; /* mswindows consoles are automatically selected */ + + event_stream_unixoid_unselect_console (con); +#endif } static void diff --git a/src/event-stream.c b/src/event-stream.c index 1829140..52e8006 100644 --- a/src/event-stream.c +++ b/src/event-stream.c @@ -5374,8 +5374,7 @@ init_event_stream (void) if (initialized) { #ifdef HAVE_UNIXOID_EVENT_LOOP - /* if (strcmp (display_use, "mswindows") != 0)*/ - init_event_unixoid (); + init_event_unixoid (); #endif #ifdef HAVE_X_WINDOWS if (!strcmp (display_use, "x")) @@ -5390,12 +5389,13 @@ init_event_stream (void) { /* For TTY's, use the Xt event loop if we can; it allows us to later open an X connection. */ -#if defined (HAVE_X_WINDOWS) && !defined (DEBUG_TTY_EVENT_STREAM) +#if defined (HAVE_MS_WINDOWS) && defined (HAVE_MSG_SELECT) \ + && !defined (DEBUG_TTY_EVENT_STREAM) + init_event_mswindows_late (); +#elif defined (HAVE_X_WINDOWS) && !defined (DEBUG_TTY_EVENT_STREAM) init_event_Xt_late (); #elif defined (HAVE_TTY) init_event_tty_late (); -#elif defined (HAVE_MS_WINDOWS) - init_event_mswindows_late (); #endif } init_interrupts_late (); diff --git a/src/event-tty.c b/src/event-tty.c index 00dd49c..0e44cf4 100644 --- a/src/event-tty.c +++ b/src/event-tty.c @@ -94,8 +94,8 @@ emacs_tty_event_pending_p (int user_p) non_fake_input_wait_mask); } -static struct console * -find_console_from_fd (int fd) +struct console * +tty_find_console_from_fd (int fd) { Lisp_Object concons; @@ -142,7 +142,7 @@ emacs_tty_next_event (struct Lisp_Event *emacs_event) user events ahead of process events. */ if (FD_ISSET (i, &temp_mask) && FD_ISSET (i, &tty_only_mask)) { - struct console *c = find_console_from_fd (i); + struct console *c = tty_find_console_from_fd (i); assert (c); if (read_event_from_tty_or_stream_desc (emacs_event, c, i)) diff --git a/src/glyphs-x.c b/src/glyphs-x.c index aed51bf..6d5f750 100644 --- a/src/glyphs-x.c +++ b/src/glyphs-x.c @@ -124,7 +124,7 @@ convert_EImage_to_XImage (Lisp_Object device, int width, int height, Colormap cmap; Visual *vis; XImage *outimg; - int depth, bitmap_pad, byte_cnt, i, j; + int depth, bitmap_pad, bits_per_pixel, byte_cnt, i, j; int rd,gr,bl,q; unsigned char *data, *ip, *dp; quant_table *qtable = 0; @@ -149,13 +149,15 @@ convert_EImage_to_XImage (Lisp_Object device, int width, int height, bitmap_pad = ((depth > 16) ? 32 : (depth > 8) ? 16 : 8); - byte_cnt = bitmap_pad >> 3; outimg = XCreateImage (dpy, vis, depth, ZPixmap, 0, 0, width, height, bitmap_pad, 0); if (!outimg) return NULL; + bits_per_pixel = outimg->bits_per_pixel; + byte_cnt = bits_per_pixel >> 3; + data = (unsigned char *) xmalloc (outimg->bytes_per_line * height); if (!data) { diff --git a/src/mule-charset.c b/src/mule-charset.c index 6e4c96d..9c5499b 100644 --- a/src/mule-charset.c +++ b/src/mule-charset.c @@ -108,6 +108,7 @@ Lisp_Object Qregistry, Qfinal, Qgraphic; Lisp_Object Qdirection; Lisp_Object Qreverse_direction_charset; Lisp_Object Qccl_program; +Lisp_Object Qleading_byte; Lisp_Object Qascii, Qcontrol_1, @@ -922,6 +923,7 @@ Recognized properties are those listed in `make-charset', as well as if (EQ (prop, Qchars)) return make_int (CHARSET_CHARS (cs)); if (EQ (prop, Qregistry)) return CHARSET_REGISTRY (cs); if (EQ (prop, Qccl_program)) return CHARSET_CCL_PROGRAM (cs); + if (EQ (prop, Qleading_byte)) return make_char (CHARSET_LEADING_BYTE (cs)); if (EQ (prop, Qdirection)) return CHARSET_DIRECTION (cs) == CHARSET_LEFT_TO_RIGHT ? Ql2r : Qr2l; if (EQ (prop, Qreverse_direction_charset)) @@ -1173,6 +1175,7 @@ syms_of_mule_charset (void) defsymbol (&Qdirection, "direction"); defsymbol (&Qreverse_direction_charset, "reverse-direction-charset"); defsymbol (&Qccl_program, "ccl-program"); + defsymbol (&Qleading_byte, "leading-byte"); defsymbol (&Ql2r, "l2r"); defsymbol (&Qr2l, "r2l"); diff --git a/src/s/bsdos4.h b/src/s/bsdos4.h new file mode 100644 index 0000000..a9dfe19 --- /dev/null +++ b/src/s/bsdos4.h @@ -0,0 +1,10 @@ +#include "bsdos3.h" + +/* BSD/OS seems to have switched to ELF format for executables. */ +#ifdef __ELF__ + +#undef ORDINARY_LINK +#define ORDINARY_LINK 1 +#define UNEXEC unexelf.o + +#endif /* ELF */ diff --git a/src/s/cygwin32.h b/src/s/cygwin32.h index b3a423b..2e2148c 100644 --- a/src/s/cygwin32.h +++ b/src/s/cygwin32.h @@ -127,7 +127,12 @@ extern long random(); #define UNEXEC "unexcw.o" #ifdef CYGWIN_VERSION_DLL_MAJOR +#if 0 +/* ### FIXME: although defining BROKEN_SIGIO is correct for proper ^G + behavior, bugs in cygwin mean that xemacs locks up frequently if + this is defined. */ #define BROKEN_SIGIO +#endif #else #define PROCESS_IO_BLOCKING #endif diff --git a/src/xintrinsic.h b/src/xintrinsic.h index 0baf968..8262613 100644 --- a/src/xintrinsic.h +++ b/src/xintrinsic.h @@ -23,4 +23,8 @@ Boston, MA 02111-1307, USA. */ #include -#define CONST const +#ifdef CONST_IS_LOSING +# define CONST +#else +# define CONST const +#endif diff --git a/tests/ChangeLog b/tests/ChangeLog index d5825af..b440f1d 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,7 @@ +1999-03-01 XEmacs Build Bot + + * XEmacs 21.2.11 is released + 1999-02-05 XEmacs Build Bot * XEmacs 21.2.10 is released diff --git a/tests/automated/database-tests.el b/tests/automated/database-tests.el index 01d195a..62296e0 100644 --- a/tests/automated/database-tests.el +++ b/tests/automated/database-tests.el @@ -36,8 +36,11 @@ (push (file-name-directory load-file-name) load-path) (require 'test-harness)))) -(flet ((test-database - (db) +(flet ((delete-database-files (filename) + (dolist (fn (list filename (concat filename ".db"))) + (ignore-file-errors (delete-file fn)))) + + (test-database (db) (Assert (databasep db)) (put-database "key1" "val1" db) (Assert (equal "val1" (get-database "key1" db))) @@ -45,18 +48,13 @@ (Assert (equal nil (get-database "key1" db))) (close-database db) (Assert (not (database-live-p db))) - (Assert (databasep db)) - (let ((filename (database-file-name db))) - (dolist (fn (list filename (concat filename ".db"))) - (condition-case nil (delete-file fn) (file-error nil)))))) + (Assert (databasep db)))) (let ((filename (expand-file-name "test-harness" (temp-directory)))) - (dolist (fn (list filename (concat filename ".db"))) - (ignore-file-errors (delete-file fn))) - (dolist (db-type `(dbm berkeley-db)) (when (featurep db-type) (princ "\n") - (test-database (open-database filename db-type)))) - )) + (delete-database-files filename) + (test-database (open-database filename db-type)) + (delete-database-files filename))))) diff --git a/version.sh b/version.sh index d381b53..535a620 100644 --- a/version.sh +++ b/version.sh @@ -1,8 +1,8 @@ #!/bin/sh emacs_major_version=21 emacs_minor_version=2 -emacs_beta_version=10 -xemacs_codename="Boreas" +emacs_beta_version=11 +xemacs_codename="Calliope" infodock_major_version=4 infodock_minor_version=0 infodock_build_version=1