Mercurial > hg > xemacs-beta
changeset 392:1f50e6fe4f3f r21-2-11
Import from CVS: tag r21-2-11
line wrap: on
line diff
--- a/CHANGES-beta Mon Aug 13 11:10:04 2007 +0200 +++ b/CHANGES-beta Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- a/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,56 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + +1999-02-16 Andy Piper <andy@xemacs.org> + + * PROBLEMS: add entries for building under Cygwin. + +1999-02-14 Jan Vroonhof <vroonhof@math.ethz.ch> + + * README.packages: Clear up that mule-sumo packages is used _in + addition_ to the normal sumo. + +1999-02-16 Martin Buchholz <martin@xemacs.org> + + * configure.usage: Move quantify/purify into debug flags section + +1999-02-10 Martin Buchholz <martin@xemacs.org> + + * 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 <martin@xemacs.org> + + * lwlib/lwlib.h: + - redo CONST hacking to deal with X11 R4, which was + broken in a previous patch. + +1999-02-10 Martin Buchholz <martin@xemacs.org> + + * configure.in: + - irix uses -rpath + +1999-02-10 Martin Buchholz <martin@xemacs.org> + + * configure.in: + - Check for XOpenIM before using xim=xlib + - only use XmIm if $have_motif = yes + +1999-02-10 Martin Buchholz <martin@xemacs.org> + + * configure.in. Port to BSDI BSD/OS 4.0. + +1999-01-07 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de> + + * configure.in: Warn if using Motif dialog boxes on AIX 4.3. + 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/INSTALL Mon Aug 13 11:10:04 2007 +0200 +++ b/INSTALL Mon Aug 13 11:10:50 2007 +0200 @@ -396,16 +396,12 @@ 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
--- a/PROBLEMS Mon Aug 13 11:10:04 2007 +0200 +++ b/PROBLEMS Mon Aug 13 11:10:50 2007 +0200 @@ -119,6 +119,10 @@ ** 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 @@ 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
--- a/README.packages Mon Aug 13 11:10:04 2007 +0200 +++ b/README.packages Mon Aug 13 11:10:50 2007 +0200 @@ -74,16 +74,16 @@ 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-<date>.tar.gz if you have a latin-1 XEmacs. +xemacs-sumo-<date>.tar.gz -or +For an XEmacs compiled with Mule you also need -xemacs-mule-sumo-<date>.tar.gz if you have a MULE XEmacs. +xemacs-mule-sumo-<date>.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 @@ 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:
--- a/configure Mon Aug 13 11:10:04 2007 +0200 +++ b/configure Mon Aug 13 11:10:50 2007 +0200 @@ -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_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 @@ 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 @@ 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 @@ 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 @@ *-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 @@ # 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 @@ # 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 @@ 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_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no -cat > conftest.$ac_ext <<EOF -#line 1573 "configure" -#include "confdefs.h" +cat > 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 @@ 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 <<EOF #ifdef __GNUC__ yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1609: \"$ac_try\") 1>&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 @@ 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 @@ 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="-g" + fi +else + if test "$GCC" = yes; then CFLAGS="-O2" - fi -else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" + else + CFLAGS= + fi fi if test "$with_gcc" = "no" -a "$GCC" = "yes"; then @@ -1648,13 +1711,14 @@ # 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 @@ # 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 @@ 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_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no -cat > conftest.$ac_ext <<EOF -#line 1735 "configure" -#include "confdefs.h" +cat > 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 @@ 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 <<EOF #ifdef __GNUC__ yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1771: \"$ac_try\") 1>&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 @@ 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 @@ 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="-g" + fi +else + if test "$GCC" = yes; then CFLAGS="-O2" - fi -else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" + else + CFLAGS= + fi fi elif test "$with_gcc" = "yes" -a "$GCC" != "yes" ; then @@ -1810,13 +1924,14 @@ # 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 @@ # 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 @@ 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_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cross_compiling=no -cat > conftest.$ac_ext <<EOF -#line 1897 "configure" -#include "confdefs.h" +cat > 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 @@ 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 <<EOF #ifdef __GNUC__ yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1933: \"$ac_try\") 1>&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 @@ 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 @@ 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="-g" + fi +else + if test "$GCC" = yes; then CFLAGS="-O2" - fi -else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" + else + CFLAGS= + fi fi fi @@ -1976,7 +2141,7 @@ 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 @@ # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext <<EOF -#line 1993 "configure" +#line 2158 "configure" #include "confdefs.h" #include <assert.h> 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 @@ rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext <<EOF -#line 2010 "configure" +#line 2175 "configure" #include "confdefs.h" #include <assert.h> 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: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 <<EOF +#line 2192 "configure" +#include "confdefs.h" +#include <assert.h> +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>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 @@ 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_n "checking for AIX""... $ac_c" 1>&6 -echo "configure:2039: checking for AIX" >&5 -cat > conftest.$ac_ext <<EOF -#line 2041 "configure" +echo "configure:2223: checking for AIX" >&5 +cat > conftest.$ac_ext <<EOF +#line 2225 "configure" #include "confdefs.h" #ifdef _AIX yes @@ -2064,9 +2248,9 @@ echo $ac_n "checking for GNU libc""... $ac_c" 1>&6 -echo "configure:2068: checking for GNU libc" >&5 -cat > conftest.$ac_ext <<EOF -#line 2070 "configure" +echo "configure:2252: checking for GNU libc" >&5 +cat > conftest.$ac_ext <<EOF +#line 2254 "configure" #include "confdefs.h" #include <features.h> int main() { @@ -2078,7 +2262,7 @@ ; 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 @@ cat > conftest.$ac_ext <<EOF -#line 2104 "configure" +#line 2288 "configure" #include "confdefs.h" int main () { #if defined __SUNPRO_C @@ -2112,7 +2296,7 @@ #endif } EOF -if { (eval echo configure:2116: \"$ac_link\") 1>&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 @@ 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 @@ 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 <<EOF -#line 2427 "configure" +#line 2611 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -2434,7 +2618,7 @@ terminateAndUnload() ; return 0; } EOF -if { (eval echo configure:2438: \"$ac_link\") 1>&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 @@ 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 @@ done fi cat > conftest.$ac_ext <<EOF -#line 2564 "configure" -#include "confdefs.h" - -int main() { - -; return 0; } -EOF -if { (eval echo configure:2571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +#line 2748 "configure" +#include "confdefs.h" + +int main() { + +; return 0; } +EOF +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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 2676 "configure" +echo "configure:2857: checking for malloc_get_state" >&5 + +cat > conftest.$ac_ext <<EOF +#line 2860 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char malloc_get_state(); below. */ @@ -2695,7 +2879,7 @@ ; return 0; } EOF -if { (eval echo configure:2699: \"$ac_link\") 1>&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 @@ fi echo $ac_n "checking for malloc_set_state""... $ac_c" 1>&6 -echo "configure:2719: checking for malloc_set_state" >&5 - -cat > conftest.$ac_ext <<EOF -#line 2722 "configure" +echo "configure:2903: checking for malloc_set_state" >&5 + +cat > conftest.$ac_ext <<EOF +#line 2906 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char malloc_set_state(); below. */ @@ -2741,7 +2925,7 @@ ; return 0; } EOF -if { (eval echo configure:2745: \"$ac_link\") 1>&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 @@ fi echo $ac_n "checking whether __after_morecore_hook exists""... $ac_c" 1>&6 -echo "configure:2765: checking whether __after_morecore_hook exists" >&5 -cat > conftest.$ac_ext <<EOF -#line 2767 "configure" +echo "configure:2949: checking whether __after_morecore_hook exists" >&5 +cat > conftest.$ac_ext <<EOF +#line 2951 "configure" #include "confdefs.h" extern void (* __after_morecore_hook)(); int main() { __after_morecore_hook = 0 ; return 0; } EOF -if { (eval echo configure:2774: \"$ac_link\") 1>&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 @@ # 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 @@ # 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 @@ # 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 @@ # 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 2971 "configure" +echo "configure:3158: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3161 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3012 "configure" +echo "configure:3199: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3202 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3053 "configure" +echo "configure:3240: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3243 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3091 "configure" +echo "configure:3278: checking for sys/wait.h that is POSIX.1 compatible" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3281 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/wait.h> @@ -3103,7 +3293,7 @@ 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 @@ fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:3131: checking for ANSI C header files" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3134 "configure" +echo "configure:3321: checking for ANSI C header files" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3324 "configure" #include "confdefs.h" #include <stdlib.h> #include <stdarg.h> @@ -3138,8 +3328,8 @@ #include <float.h> 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 @@ 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 -#line 3159 "configure" +#line 3349 "configure" #include "confdefs.h" #include <string.h> EOF @@ -3173,7 +3363,7 @@ 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 -#line 3177 "configure" +#line 3367 "configure" #include "confdefs.h" #include <stdlib.h> EOF @@ -3191,7 +3381,7 @@ 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 <<EOF -#line 3195 "configure" +#line 3385 "configure" #include "confdefs.h" #include <ctype.h> #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -3202,7 +3392,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3235 "configure" +echo "configure:3422: checking whether time.h and sys/time.h may both be included" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3425 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/time.h> @@ -3240,7 +3430,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3271 "configure" +echo "configure:3458: checking for sys_siglist declaration in signal.h or unistd.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3461 "configure" #include "confdefs.h" #include <sys/types.h> #include <signal.h> @@ -3279,7 +3469,7 @@ 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 @@ echo $ac_n "checking for struct utimbuf""... $ac_c" 1>&6 -echo "configure:3308: checking for struct utimbuf" >&5 -cat > conftest.$ac_ext <<EOF -#line 3310 "configure" +echo "configure:3498: checking for struct utimbuf" >&5 +cat > conftest.$ac_ext <<EOF +#line 3500 "configure" #include "confdefs.h" #ifdef TIME_WITH_SYS_TIME #include <sys/time.h> @@ -3325,7 +3515,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3352 "configure" +echo "configure:3539: checking return type of signal handlers" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3542 "configure" #include "confdefs.h" #include <sys/types.h> #include <signal.h> @@ -3365,7 +3555,7 @@ 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 @@ echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:3391: checking for size_t" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3394 "configure" +echo "configure:3581: checking for size_t" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3584 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -3399,7 +3589,7 @@ #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&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 @@ fi echo $ac_n "checking for pid_t""... $ac_c" 1>&6 -echo "configure:3425: checking for pid_t" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3428 "configure" +echo "configure:3615: checking for pid_t" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3618 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -3433,7 +3623,7 @@ #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3462 "configure" +echo "configure:3649: checking for uid_t in sys/types.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3652 "configure" #include "confdefs.h" #include <sys/types.h> EOF @@ -3494,10 +3684,10 @@ fi echo $ac_n "checking for mode_t""... $ac_c" 1>&6 -echo "configure:3498: checking for mode_t" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3501 "configure" +echo "configure:3688: checking for mode_t" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3691 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -3506,7 +3696,7 @@ #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&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 @@ fi echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:3532: checking for off_t" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3535 "configure" +echo "configure:3722: checking for off_t" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3725 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -3540,7 +3730,7 @@ #endif EOF if (eval "$ac_cpp conftest.$ac_ext") 2>&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 @@ echo $ac_n "checking for struct timeval""... $ac_c" 1>&6 -echo "configure:3567: checking for struct timeval" >&5 -cat > conftest.$ac_ext <<EOF -#line 3569 "configure" +echo "configure:3757: checking for struct timeval" >&5 +cat > conftest.$ac_ext <<EOF +#line 3759 "configure" #include "confdefs.h" #ifdef TIME_WITH_SYS_TIME #include <sys/time.h> @@ -3581,7 +3771,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3610 "configure" +echo "configure:3797: checking whether struct tm is in sys/time.h or time.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3800 "configure" #include "confdefs.h" #include <sys/types.h> #include <time.h> @@ -3614,7 +3804,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 3645 "configure" +echo "configure:3832: checking for tm_zone in struct tm" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3835 "configure" #include "confdefs.h" #include <sys/types.h> #include <$ac_cv_struct_tm> @@ -3649,7 +3839,7 @@ 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 @@ else echo $ac_n "checking for tzname""... $ac_c" 1>&6 -echo "configure:3676: checking for tzname" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3679 "configure" +echo "configure:3866: checking for tzname" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3869 "configure" #include "confdefs.h" #include <time.h> #ifndef tzname /* For SGI. */ @@ -3685,7 +3875,7 @@ 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 @@ echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:3715: checking for working const" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3718 "configure" +echo "configure:3905: checking for working const" >&5 + +cat > conftest.$ac_ext <<EOF +#line 3908 "configure" #include "confdefs.h" int main() { @@ -3763,7 +3953,7 @@ ; return 0; } EOF -if { (eval echo configure:3767: \"$ac_compile\") 1>&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 @@ 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 @@ 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 <<EOF -#line 3822 "configure" +#line 4012 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/param.h> @@ -3829,11 +4019,11 @@ #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 <<EOF -#line 3837 "configure" +#line 4027 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/param.h> @@ -3844,7 +4034,7 @@ #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 @@ rm -f conftest* if test $ac_cv_c_bigendian = unknown; then cat > conftest.$ac_ext <<EOF -#line 3865 "configure" +#line 4055 "configure" #include "confdefs.h" main () { /* Are we little or big endian? From Harbison&Steele. */ @@ -3874,7 +4064,7 @@ exit (u.c[sizeof (long) - 1] == 1); } EOF -if { (eval echo configure:3878: \"$ac_link\") 1>&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 @@ echo $ac_n "checking size of short""... $ac_c" 1>&6 -echo "configure:3905: checking size of short" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3908 "configure" +echo "configure:4095: checking size of short" >&5 + +cat > conftest.$ac_ext <<EOF +#line 4098 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3915,7 +4105,7 @@ 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 @@ exit 1 fi echo $ac_n "checking size of int""... $ac_c" 1>&6 -echo "configure:3947: checking size of int" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3950 "configure" +echo "configure:4137: checking size of int" >&5 + +cat > conftest.$ac_ext <<EOF +#line 4140 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3957,7 +4147,7 @@ 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 @@ echo $ac_n "checking size of long""... $ac_c" 1>&6 -echo "configure:3983: checking size of long" >&5 - -cat > conftest.$ac_ext <<EOF -#line 3986 "configure" +echo "configure:4173: checking size of long" >&5 + +cat > conftest.$ac_ext <<EOF +#line 4176 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -3993,7 +4183,7 @@ 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 @@ echo $ac_n "checking size of long long""... $ac_c" 1>&6 -echo "configure:4019: checking size of long long" >&5 - -cat > conftest.$ac_ext <<EOF -#line 4022 "configure" +echo "configure:4209: checking size of long long" >&5 + +cat > conftest.$ac_ext <<EOF +#line 4212 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -4029,7 +4219,7 @@ 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 @@ echo $ac_n "checking size of void *""... $ac_c" 1>&6 -echo "configure:4055: checking size of void *" >&5 - -cat > conftest.$ac_ext <<EOF -#line 4058 "configure" +echo "configure:4245: checking size of void *" >&5 + +cat > conftest.$ac_ext <<EOF +#line 4248 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -4065,7 +4255,7 @@ 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 @@ 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 @@ 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 <<EOF -#line 4144 "configure" +#line 4334 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4151,7 +4341,7 @@ sin() ; return 0; } EOF -if { (eval echo configure:4155: \"$ac_link\") 1>&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 @@ cat > conftest.$ac_ext <<EOF -#line 4197 "configure" +#line 4387 "configure" #include "confdefs.h" #include <math.h> 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 @@ 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 @@ 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 <<EOF -#line 4250 "configure" +#line 4440 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4257,7 +4447,7 @@ kstat_open() ; return 0; } EOF -if { (eval echo configure:4261: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 4300 "configure" +#line 4490 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4307,7 +4497,7 @@ kvm_read() ; return 0; } EOF -if { (eval echo configure:4311: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 4351 "configure" +#line 4541 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4358,7 +4548,7 @@ cma_open() ; return 0; } EOF -if { (eval echo configure:4362: \"$ac_link\") 1>&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 @@ 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 @@ 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 @@ 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 @@ # 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 @@ # First, try using that file with no special directory specified. cat > conftest.$ac_ext <<EOF -#line 4512 "configure" +#line 4702 "configure" #include "confdefs.h" #include <$x_direct_test_include> 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 @@ ac_save_LIBS="$LIBS" LIBS="-l$x_direct_test_library $LIBS" cat > conftest.$ac_ext <<EOF -#line 4586 "configure" +#line 4776 "configure" #include "confdefs.h" int main() { ${x_direct_test_function}() ; return 0; } EOF -if { (eval echo configure:4593: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 4705 "configure" -#include "confdefs.h" - -int main() { - -; return 0; } -EOF -if { (eval echo configure:4712: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +#line 4895 "configure" +#include "confdefs.h" + +int main() { + +; return 0; } +EOF +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 @@ else LIBS="$ac_xsave_LIBS -R $x_libraries" cat > conftest.$ac_ext <<EOF -#line 4728 "configure" -#include "confdefs.h" - -int main() { - -; return 0; } -EOF -if { (eval echo configure:4735: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +#line 4918 "configure" +#include "confdefs.h" + +int main() { + +; return 0; } +EOF +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 @@ 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 <<EOF -#line 4776 "configure" +#line 4966 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4783,7 +4973,7 @@ dnet_ntoa() ; return 0; } EOF -if { (eval echo configure:4787: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 4816 "configure" +#line 5006 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4823,7 +5013,7 @@ dnet_ntoa() ; return 0; } EOF -if { (eval echo configure:4827: \"$ac_link\") 1>&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 @@ # 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 - -cat > conftest.$ac_ext <<EOF -#line 4859 "configure" +echo "configure:5046: checking for gethostbyname" >&5 + +cat > conftest.$ac_ext <<EOF +#line 5049 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char gethostbyname(); below. */ @@ -4878,7 +5068,7 @@ ; return 0; } EOF -if { (eval echo configure:4882: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 4908 "configure" +#line 5098 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4915,7 +5105,7 @@ gethostbyname() ; return 0; } EOF -if { (eval echo configure:4919: \"$ac_link\") 1>&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 @@ # -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 - -cat > conftest.$ac_ext <<EOF -#line 4952 "configure" +echo "configure:5139: checking for connect" >&5 + +cat > conftest.$ac_ext <<EOF +#line 5142 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char connect(); below. */ @@ -4971,7 +5161,7 @@ ; return 0; } EOF -if { (eval echo configure:4975: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5003 "configure" +#line 5193 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5010,7 +5200,7 @@ connect() ; return 0; } EOF -if { (eval echo configure:5014: \"$ac_link\") 1>&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 @@ # 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 - -cat > conftest.$ac_ext <<EOF -#line 5041 "configure" +echo "configure:5228: checking for remove" >&5 + +cat > conftest.$ac_ext <<EOF +#line 5231 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char remove(); below. */ @@ -5060,7 +5250,7 @@ ; return 0; } EOF -if { (eval echo configure:5064: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5090 "configure" +#line 5280 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5097,7 +5287,7 @@ remove() ; return 0; } EOF -if { (eval echo configure:5101: \"$ac_link\") 1>&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 @@ # 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 - -cat > conftest.$ac_ext <<EOF -#line 5128 "configure" +echo "configure:5315: checking for shmat" >&5 + +cat > conftest.$ac_ext <<EOF +#line 5318 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char shmat(); below. */ @@ -5147,7 +5337,7 @@ ; return 0; } EOF -if { (eval echo configure:5151: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5177 "configure" +#line 5367 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5184,7 +5374,7 @@ shmat() ; return 0; } EOF -if { (eval echo configure:5188: \"$ac_link\") 1>&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 @@ # 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 " -cat > conftest.$ac_ext <<EOF -#line 5227 "configure" +xe_check_libs=" -lICE $X_EXTRA_LIBS" +cat > conftest.$ac_ext <<EOF +#line 5419 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5234,7 +5426,7 @@ IceConnectionNumber() ; return 0; } EOF -if { (eval echo configure:5238: \"$ac_link\") 1>&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 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 5442 "configure" +echo "configure:5631: checking for X11/Intrinsic.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 5634 "configure" #include "confdefs.h" #include <X11/Intrinsic.h> 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 @@ 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 <<EOF -#line 5476 "configure" +#line 5668 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5483,7 +5675,7 @@ XOpenDisplay() ; return 0; } EOF -if { (eval echo configure:5487: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5517 "configure" +#line 5709 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5524,7 +5716,7 @@ XGetFontProperty() ; return 0; } EOF -if { (eval echo configure:5528: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5560 "configure" +#line 5752 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5567,7 +5759,7 @@ XShapeSelectInput() ; return 0; } EOF -if { (eval echo configure:5571: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5599 "configure" +#line 5791 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5606,7 +5798,7 @@ XtOpenDisplay() ; return 0; } EOF -if { (eval echo configure:5610: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5635 "configure" +#line 5827 "configure" #include "confdefs.h" #include <X11/Intrinsic.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 5668 "configure" +echo "configure:5857: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 5860 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 @@ 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 <<EOF -#line 5729 "configure" +#line 5921 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -5736,7 +5928,7 @@ XmuReadBitmapDataFromFile() ; return 0; } EOF -if { (eval echo configure:5740: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 5784 "configure" +#line 5976 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5791: \"$ac_link\") 1>&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 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 <<EOF -#line 5836 "configure" +#line 6028 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:5843: \"$ac_link\") 1>&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 @@ fi fi cat > conftest.$ac_ext <<EOF -#line 5908 "configure" +#line 6100 "configure" #include "confdefs.h" #include <fcntl.h> 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 @@ 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 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 6009 "configure" +echo "configure:6198: checking for X11/Xauth.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 6201 "configure" #include "confdefs.h" #include <X11/Xauth.h> 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 @@ } 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 <<EOF -#line 6042 "configure" +#line 6234 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6049,7 +6241,7 @@ XauGetAuthByAddr() ; return 0; } EOF -if { (eval echo configure:6053: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 6101 "configure" +echo "configure:6290: checking for ${dir}tt_c.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 6293 "configure" #include "confdefs.h" #include <${dir}tt_c.h> 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 @@ 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 <<EOF -#line 6147 "configure" +#line 6339 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6154,7 +6346,7 @@ tt_message_create() ; return 0; } EOF -if { (eval echo configure:6158: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 6218 "configure" +echo "configure:6407: checking for Dt/Dt.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 6410 "configure" #include "confdefs.h" #include <Dt/Dt.h> 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 @@ } 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 <<EOF -#line 6251 "configure" +#line 6443 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6258,7 +6450,7 @@ DtDndDragStart() ; return 0; } EOF -if { (eval echo configure:6262: \"$ac_link\") 1>&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 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 6358 "configure" +echo "configure:6547: checking for ldap.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 6550 "configure" #include "confdefs.h" #include <ldap.h> 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 @@ } 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 - -cat > conftest.$ac_ext <<EOF -#line 6389 "configure" +echo "configure:6578: checking for lber.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 6581 "configure" #include "confdefs.h" #include <lber.h> 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 @@ 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 <<EOF -#line 6425 "configure" +#line 6617 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6432,7 +6624,7 @@ ldap_open() ; return 0; } EOF -if { (eval echo configure:6436: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 6464 "configure" +#line 6656 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6471,7 +6663,7 @@ ldap_set_option() ; return 0; } EOF -if { (eval echo configure:6475: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 6547 "configure" +#line 6739 "configure" #include "confdefs.h" #include <X11/xpm.h> int main(int c, char **v) { @@ -6551,7 +6743,7 @@ 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 @@ 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 <<EOF -#line 6600 "configure" +#line 6792 "configure" #include "confdefs.h" int main() { XpmCreatePixmapFromData() ; return 0; } EOF -if { (eval echo configure:6607: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 6636 "configure" +echo "configure:6825: checking for compface.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 6828 "configure" #include "confdefs.h" #include <compface.h> 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 @@ } 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 <<EOF -#line 6669 "configure" +#line 6861 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6676,7 +6868,7 @@ UnGenFace() ; return 0; } EOF -if { (eval echo configure:6680: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 6737 "configure" +#line 6929 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6744,7 +6936,7 @@ inflate() ; return 0; } EOF -if { (eval echo configure:6748: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 6772 "configure" +#line 6964 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6779,7 +6971,7 @@ inflate() ; return 0; } EOF -if { (eval echo configure:6783: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 6807 "configure" +#line 6999 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6814,7 +7006,7 @@ inflate() ; return 0; } EOF -if { (eval echo configure:6818: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 6851 "configure" +echo "configure:7040: checking for jpeglib.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 7043 "configure" #include "confdefs.h" #include <jpeglib.h> 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 @@ } 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 <<EOF -#line 6884 "configure" +#line 7076 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6891,7 +7083,7 @@ jpeg_destroy_decompress() ; return 0; } EOF -if { (eval echo configure:6895: \"$ac_link\") 1>&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 @@ png_problem="" test -z "$with_png" && { echo $ac_n "checking for pow""... $ac_c" 1>&6 -echo "configure:6931: checking for pow" >&5 - -cat > conftest.$ac_ext <<EOF -#line 6934 "configure" +echo "configure:7123: checking for pow" >&5 + +cat > conftest.$ac_ext <<EOF +#line 7126 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char pow(); below. */ @@ -6953,7 +7145,7 @@ ; return 0; } EOF -if { (eval echo configure:6957: \"$ac_link\") 1>&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 @@ } 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 - -cat > conftest.$ac_ext <<EOF -#line 6981 "configure" +echo "configure:7170: checking for png.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 7173 "configure" #include "confdefs.h" #include <png.h> 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 @@ } 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 <<EOF -#line 7014 "configure" +#line 7206 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7021,7 +7213,7 @@ png_read_image() ; return 0; } EOF -if { (eval echo configure:7025: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 7051 "configure" +#line 7243 "configure" #include "confdefs.h" #include <png.h> int main(int c, char **v) { @@ -7055,7 +7247,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 7105 "configure" +echo "configure:7294: checking for tiffio.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 7297 "configure" #include "confdefs.h" #include <tiffio.h> 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 @@ } 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 <<EOF -#line 7138 "configure" +#line 7330 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7145,7 +7337,7 @@ TIFFClientOpen() ; return 0; } EOF -if { (eval echo configure:7149: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 7197 "configure" +#line 7389 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7204,7 +7396,7 @@ XawScrollbarSetThumb() ; return 0; } EOF -if { (eval echo configure:7208: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 7235 "configure" +echo "configure:7424: checking for Xm/Xm.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 7427 "configure" #include "confdefs.h" #include <Xm/Xm.h> 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 @@ 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 <<EOF -#line 7262 "configure" +#line 7454 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7269,7 +7461,7 @@ XmStringFree() ; return 0; } EOF -if { (eval echo configure:7273: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 7304 "configure" +#line 7496 "configure" #include "confdefs.h" #include <Xm/Xm.h> #ifdef LESSTIF_VERSION @@ -7581,7 +7773,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 7613 "configure" +echo "configure:7802: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 7805 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 <<EOF -#line 7654 "configure" +#line 7846 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7661,7 +7853,7 @@ strerror() ; return 0; } EOF -if { (eval echo configure:7665: \"$ac_link\") 1>&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 @@ 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 <<EOF +#line 7901 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char XOpenIM(); + +int main() { +XOpenIM() +; return 0; } +EOF +if { (eval echo configure:7912: \"$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 + 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 <<EOF -#line 7710 "configure" +#line 7941 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7717,7 +7948,7 @@ XmImMbLookupString() ; return 0; } EOF -if { (eval echo configure:7721: \"$ac_link\") 1>&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 @@ with_xim=motif else echo "$ac_t""no" 1>&6 -with_xim=xlib -fi - - - fi +fi + + + fi ;; esac if test "$with_xim" != "no"; then { test "$extra_verbose" = "yes" && cat << \EOF @@ -7783,15 +8013,15 @@ 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 <<EOF -#line 7795 "configure" +#line 8025 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7802,7 +8032,7 @@ XmbDrawString() ; return 0; } EOF -if { (eval echo configure:7806: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 7849 "configure" +echo "configure:8076: checking for wnn/jllib.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8079 "configure" #include "confdefs.h" #include <wnn/jllib.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 7882 "configure" +echo "configure:8109: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8112 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7901,7 +8131,7 @@ ; return 0; } EOF -if { (eval echo configure:7905: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 7939 "configure" +#line 8169 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7946,7 +8176,7 @@ crypt() ; return 0; } EOF -if { (eval echo configure:7950: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 7990 "configure" +#line 8220 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7997,7 +8227,7 @@ jl_dic_list_e() ; return 0; } EOF -if { (eval echo configure:8001: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 8024 "configure" +#line 8254 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8031,7 +8261,7 @@ jl_dic_list_e() ; return 0; } EOF -if { (eval echo configure:8035: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 8058 "configure" +#line 8288 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8065,7 +8295,7 @@ jl_dic_list_e() ; return 0; } EOF -if { (eval echo configure:8069: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 8092 "configure" +#line 8322 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8099,7 +8329,7 @@ dic_list_e() ; return 0; } EOF -if { (eval echo configure:8103: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 8156 "configure" +#line 8386 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8163,7 +8393,7 @@ jl_fi_dic_list() ; return 0; } EOF -if { (eval echo configure:8167: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 8205 "configure" +echo "configure:8432: checking for canna/jrkanji.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8435 "configure" #include "confdefs.h" #include <canna/jrkanji.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 8240 "configure" +echo "configure:8467: checking for canna/jrkanji.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8470 "configure" #include "confdefs.h" #include <canna/jrkanji.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 8276 "configure" +echo "configure:8503: checking for canna/RK.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8506 "configure" #include "confdefs.h" #include <canna/RK.h> 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 @@ } 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 <<EOF -#line 8309 "configure" +#line 8539 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8316,7 +8546,7 @@ RkBgnBun() ; return 0; } EOF -if { (eval echo configure:8320: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 8348 "configure" +#line 8578 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8355,7 +8585,7 @@ jrKanjiControl() ; return 0; } EOF -if { (eval echo configure:8359: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 8413 "configure" +#line 8643 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -8420,7 +8650,7 @@ layout_object_getvalue() ; return 0; } EOF -if { (eval echo configure:8424: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 8513 "configure" +echo "configure:8740: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8743 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -8532,7 +8762,7 @@ ; return 0; } EOF -if { (eval echo configure:8536: \"$ac_link\") 1>&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 @@ * ) 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 - -cat > conftest.$ac_ext <<EOF -#line 8580 "configure" +echo "configure:8807: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 8810 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -8599,7 +8829,7 @@ ; return 0; } EOF -if { (eval echo configure:8603: \"$ac_link\") 1>&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 @@ esac echo $ac_n "checking whether netdb declares h_errno""... $ac_c" 1>&6 -echo "configure:8637: checking whether netdb declares h_errno" >&5 -cat > conftest.$ac_ext <<EOF -#line 8639 "configure" +echo "configure:8867: checking whether netdb declares h_errno" >&5 +cat > conftest.$ac_ext <<EOF +#line 8869 "configure" #include "confdefs.h" #include <netdb.h> 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 @@ rm -f conftest* echo $ac_n "checking for sigsetjmp""... $ac_c" 1>&6 -echo "configure:8666: checking for sigsetjmp" >&5 -cat > conftest.$ac_ext <<EOF -#line 8668 "configure" +echo "configure:8896: checking for sigsetjmp" >&5 +cat > conftest.$ac_ext <<EOF +#line 8898 "configure" #include "confdefs.h" #include <setjmp.h> 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 @@ 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 <<EOF -#line 8699 "configure" +#line 8929 "configure" #include "confdefs.h" #include <time.h> #if STDC_HEADERS @@ -8730,7 +8960,7 @@ 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 @@ 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 -cat > conftest.$ac_ext <<EOF -#line 8766 "configure" +echo "configure:8994: checking whether gettimeofday accepts one or two arguments" >&5 +cat > conftest.$ac_ext <<EOF +#line 8996 "configure" #include "confdefs.h" #ifdef TIME_WITH_SYS_TIME @@ -8784,7 +9014,7 @@ ; return 0; } EOF -if { (eval echo configure:8788: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 8815 "configure" +#line 9045 "configure" #include "confdefs.h" int main() { } $ac_kw foo() { ; return 0; } EOF -if { (eval echo configure:8822: \"$ac_compile\") 1>&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 @@ # 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 - -cat > conftest.$ac_ext <<EOF -#line 8875 "configure" +echo "configure:9102: checking for working alloca.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9105 "configure" #include "confdefs.h" #include <alloca.h> 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 @@ fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:8906: checking for alloca" >&5 - -cat > conftest.$ac_ext <<EOF -#line 8909 "configure" +echo "configure:9136: checking for alloca" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9139 "configure" #include "confdefs.h" #ifdef __GNUC__ # define alloca __builtin_alloca #else -# if HAVE_ALLOCA_H -# include <alloca.h> +# ifdef _MSC_VER +# include <malloc.h> +# define alloca _alloca # else -# ifdef _AIX - #pragma alloca +# if HAVE_ALLOCA_H +# include <alloca.h> # 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 @@ 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 @@ # 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 @@ echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:8971: checking whether alloca needs Cray hooks" >&5 - -cat > conftest.$ac_ext <<EOF -#line 8974 "configure" +echo "configure:9206: checking whether alloca needs Cray hooks" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9209 "configure" #include "confdefs.h" #if defined(CRAY) && ! defined(CRAY2) webecray @@ -8994,10 +9229,10 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9001 "configure" +echo "configure:9233: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9236 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -9020,7 +9255,7 @@ ; return 0; } EOF -if { (eval echo configure:9024: \"$ac_link\") 1>&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 @@ fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:9054: checking stack direction for C alloca" >&5 - -cat > conftest.$ac_ext <<EOF -#line 9057 "configure" +echo "configure:9289: checking stack direction for C alloca" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9292 "configure" #include "confdefs.h" find_stack_direction () { @@ -9072,7 +9307,7 @@ exit (find_stack_direction() < 0); } EOF -if { (eval echo configure:9076: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9108 "configure" +echo "configure:9340: checking for vfork.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9343 "configure" #include "confdefs.h" #include <vfork.h> 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 @@ fi echo $ac_n "checking for working vfork""... $ac_c" 1>&6 -echo "configure:9141: checking for working vfork" >&5 - -cat > conftest.$ac_ext <<EOF -#line 9144 "configure" +echo "configure:9376: checking for working vfork" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9379 "configure" #include "confdefs.h" /* Thanks to Paul Eggert for this test. */ #include <stdio.h> @@ -9235,7 +9470,7 @@ } } 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 @@ echo $ac_n "checking for working strcoll""... $ac_c" 1>&6 -echo "configure:9265: checking for working strcoll" >&5 - -cat > conftest.$ac_ext <<EOF -#line 9268 "configure" +echo "configure:9500: checking for working strcoll" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9503 "configure" #include "confdefs.h" #include <string.h> main () @@ -9274,7 +9509,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9309 "configure" +echo "configure:9541: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9544 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -9328,7 +9563,7 @@ ; return 0; } EOF -if { (eval echo configure:9332: \"$ac_link\") 1>&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 @@ done echo $ac_n "checking whether getpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:9360: checking whether getpgrp takes no argument" >&5 - -cat > conftest.$ac_ext <<EOF -#line 9363 "configure" +echo "configure:9595: checking whether getpgrp takes no argument" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9598 "configure" #include "confdefs.h" /* @@ -9414,7 +9649,7 @@ } EOF -if { (eval echo configure:9418: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 9448 "configure" +#line 9683 "configure" #include "confdefs.h" #include <stdio.h> #include <unistd.h> @@ -9477,7 +9712,7 @@ 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9509 "configure" +echo "configure:9741: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9744 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9549 "configure" +echo "configure:9781: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9784 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -9568,7 +9803,7 @@ ; return 0; } EOF -if { (eval echo configure:9572: \"$ac_link\") 1>&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 @@ done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:9600: checking for working mmap" >&5 - -cat > conftest.$ac_ext <<EOF -#line 9603 "configure" +echo "configure:9835: checking for working mmap" >&5 + +cat > conftest.$ac_ext <<EOF +#line 9838 "configure" #include "confdefs.h" /* Thanks to Mike Haertel and Jim Avera for this test. @@ -9739,7 +9974,7 @@ } EOF -if { (eval echo configure:9743: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9784 "configure" +echo "configure:10016: checking for termios.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10019 "configure" #include "confdefs.h" #include <termios.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9835 "configure" +echo "configure:10067: checking for termio.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10070 "configure" #include "confdefs.h" #include <termio.h> 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 @@ echo $ac_n "checking for socket""... $ac_c" 1>&6 -echo "configure:9872: checking for socket" >&5 - -cat > conftest.$ac_ext <<EOF -#line 9875 "configure" +echo "configure:10107: checking for socket" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10110 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char socket(); below. */ @@ -9894,7 +10129,7 @@ ; return 0; } EOF -if { (eval echo configure:9898: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9916 "configure" +echo "configure:10148: checking for netinet/in.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10151 "configure" #include "confdefs.h" #include <netinet/in.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 9941 "configure" +echo "configure:10173: checking for arpa/inet.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10176 "configure" #include "confdefs.h" #include <arpa/inet.h> 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 @@ } 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 <<EOF -#line 9973 "configure" +#line 10208 "configure" #include "confdefs.h" #include <sys/types.h> @@ -9980,7 +10215,7 @@ 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 @@ 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 <<EOF -#line 10004 "configure" +#line 10239 "configure" #include "confdefs.h" #include <sys/types.h> @@ -10010,7 +10245,7 @@ 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 @@ echo $ac_n "checking for msgget""... $ac_c" 1>&6 -echo "configure:10045: checking for msgget" >&5 - -cat > conftest.$ac_ext <<EOF -#line 10048 "configure" +echo "configure:10280: checking for msgget" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10283 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char msgget(); below. */ @@ -10067,7 +10302,7 @@ ; return 0; } EOF -if { (eval echo configure:10071: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10089 "configure" +echo "configure:10321: checking for sys/ipc.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10324 "configure" #include "confdefs.h" #include <sys/ipc.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10114 "configure" +echo "configure:10346: checking for sys/msg.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10349 "configure" #include "confdefs.h" #include <sys/msg.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10160 "configure" +echo "configure:10392: checking for dirent.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10395 "configure" #include "confdefs.h" #include <dirent.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10195 "configure" +echo "configure:10427: checking for sys/dir.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10430 "configure" #include "confdefs.h" #include <sys/dir.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10236 "configure" +echo "configure:10468: checking for nlist.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10471 "configure" #include "confdefs.h" #include <nlist.h> 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 @@ 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 -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 - -cat > conftest.$ac_ext <<EOF -#line 10285 "configure" +echo "configure:10517: checking for multimedia/audio_device.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10520 "configure" #include "confdefs.h" #include <multimedia/audio_device.h> 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 @@ 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 <<EOF -#line 10343 "configure" +#line 10578 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10350,7 +10585,7 @@ ALopenport() ; return 0; } EOF -if { (eval echo configure:10354: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 10390 "configure" +#line 10625 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10397,7 +10632,7 @@ AOpenAudio() ; return 0; } EOF -if { (eval echo configure:10401: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10442 "configure" +echo "configure:10674: checking for ${dir}/soundcard.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10677 "configure" #include "confdefs.h" #include <${dir}/soundcard.h> 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 @@ fi libs_x="-laudio $libs_x" && if test "$extra_verbose" = "yes"; then echo " Prepending \"-laudio\" to \$libs_x"; fi cat > conftest.$ac_ext <<EOF -#line 10517 "configure" +#line 10752 "configure" #include "confdefs.h" #include <audio/Xtutil.h> EOF @@ -10540,7 +10775,7 @@ 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 @@ 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 <<EOF -#line 10565 "configure" +#line 10800 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10572,7 +10807,7 @@ tgetent() ; return 0; } EOF -if { (eval echo configure:10576: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10612 "configure" +echo "configure:10844: checking for ncurses/curses.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10847 "configure" #include "confdefs.h" #include <ncurses/curses.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10642 "configure" +echo "configure:10874: checking for ncurses/term.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10877 "configure" #include "confdefs.h" #include <ncurses/term.h> 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10680 "configure" +echo "configure:10912: checking for ncurses/curses.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 10915 "configure" #include "confdefs.h" #include <ncurses/curses.h> 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 @@ 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 <<EOF -#line 10725 "configure" +#line 10960 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10732,7 +10967,7 @@ tgetent() ; return 0; } EOF -if { (eval echo configure:10736: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 10772 "configure" +#line 11007 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10779,7 +11014,7 @@ tgetent() ; return 0; } EOF -if { (eval echo configure:10783: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 10806 "configure" +#line 11041 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10813,7 +11048,7 @@ tgetent() ; return 0; } EOF -if { (eval echo configure:10817: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 10868 "configure" +echo "configure:11100: checking for gpm.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 11103 "configure" #include "confdefs.h" #include <gpm.h> 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 @@ } 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 <<EOF -#line 10901 "configure" +#line 11136 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -10908,7 +11143,7 @@ Gpm_Open() ; return 0; } EOF -if { (eval echo configure:10912: \"$ac_link\") 1>&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_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 - -cat > conftest.$ac_ext <<EOF -#line 10970 "configure" +echo "configure:11202: checking for ndbm.h" >&5 + +cat > conftest.$ac_ext <<EOF +#line 11205 "configure" #include "confdefs.h" #include <ndbm.h> 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 @@ 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 <<EOF -#line 11010 "configure" +#line 11245 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11017,7 +11252,7 @@ dbm_open() ; return 0; } EOF -if { (eval echo configure:11021: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 11052 "configure" +echo "configure:11284: checking for dbm_open" >&5 + +cat > conftest.$ac_ext <<EOF +#line 11287 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char dbm_open(); below. */ @@ -11071,7 +11306,7 @@ ; return 0; } EOF -if { (eval echo configure:11075: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 11099 "configure" +#line 11334 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11106,7 +11341,7 @@ dbm_open() ; return 0; } EOF -if { (eval echo configure:11110: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 11154 "configure" +#line 11389 "configure" #include "confdefs.h" #ifdef HAVE_INTTYPES_H #define __BIT_TYPES_DEFINED__ @@ -11168,7 +11403,7 @@ ; return 0; } EOF -if { (eval echo configure:11172: \"$ac_compile\") 1>&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 @@ 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 <<EOF -#line 11190 "configure" +#line 11425 "configure" #include "confdefs.h" #include <$db_h_path> #if DB_VERSION_MAJOR > 1 @@ -11205,10 +11440,10 @@ rm -f conftest* echo $ac_n "checking for $dbfunc""... $ac_c" 1>&6 -echo "configure:11209: checking for $dbfunc" >&5 - -cat > conftest.$ac_ext <<EOF -#line 11212 "configure" +echo "configure:11444: checking for $dbfunc" >&5 + +cat > conftest.$ac_ext <<EOF +#line 11447 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $dbfunc(); below. */ @@ -11231,7 +11466,7 @@ ; return 0; } EOF -if { (eval echo configure:11235: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 11259 "configure" +#line 11494 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11266,7 +11501,7 @@ $dbfunc() ; return 0; } EOF -if { (eval echo configure:11270: \"$ac_link\") 1>&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 @@ 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 <<EOF -#line 11339 "configure" +#line 11574 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11346,7 +11581,7 @@ SOCKSinit() ; return 0; } EOF -if { (eval echo configure:11350: \"$ac_link\") 1>&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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 11410 "configure" +echo "configure:11642: checking for $ac_hdr" >&5 + +cat > conftest.$ac_ext <<EOF +#line 11645 "configure" #include "confdefs.h" #include <$ac_hdr> 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 @@ 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 <<EOF -#line 11459 "configure" +#line 11694 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11466,7 +11701,7 @@ dlopen() ; return 0; } EOF -if { (eval echo configure:11470: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 11504 "configure" +#line 11739 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11511,7 +11746,7 @@ _dlopen() ; return 0; } EOF -if { (eval echo configure:11515: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 11549 "configure" +#line 11784 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11556,7 +11791,7 @@ dlopen() ; return 0; } EOF -if { (eval echo configure:11560: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 11594 "configure" +#line 11829 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11601,7 +11836,7 @@ shl_load() ; return 0; } EOF -if { (eval echo configure:11605: \"$ac_link\") 1>&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 @@ } 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 <<EOF -#line 11639 "configure" +#line 11874 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -11646,7 +11881,7 @@ dld_init() ; return 0; } EOF -if { (eval echo configure:11650: \"$ac_link\") 1>&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 @@ 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 @@ 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 <<EOF -#line 11719 "configure" +#line 11954 "configure" #include "confdefs.h" #ifdef __GNUC__ @@ -11737,7 +11972,7 @@ fi echo $ac_n "checking how to produce PIC code""... $ac_c" 1>&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 @@ # 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 <<EOF -#line 11838 "configure" +#line 12073 "configure" #include "confdefs.h" int main() { int x=0; ; return 0; } EOF -if { (eval echo configure:11845: \"$ac_compile\") 1>&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 @@ 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 @@ xe_libs= ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5' cat > conftest.$ac_ext <<EOF -#line 11927 "configure" +#line 12162 "configure" #include "confdefs.h" int main() { int x=0; ; return 0; } EOF -if { (eval echo configure:11934: \"$ac_link\") 1>&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 "$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 @@ 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 @@ # 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 </dev/null | egrep '(GNU|with BFD)' 1>&5; then xe_gnu_ld=yes @@ -12045,7 +12280,7 @@ # 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 @@ 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 - -cat > conftest.$ac_ext <<EOF -#line 12264 "configure" +echo "configure:12496: checking for $ac_func" >&5 + +cat > conftest.$ac_ext <<EOF +#line 12499 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -12283,7 +12518,7 @@ ; return 0; } EOF -if { (eval echo configure:12287: \"$ac_link\") 1>&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 @@ fi cat > conftest.$ac_ext <<EOF -#line 12321 "configure" +#line 12556 "configure" #include "confdefs.h" int main(int c,char *v[]){return 0;} EOF -if { (eval echo configure:12325: \"$ac_link\") 1>&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 @@ 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 @@ 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 @@ 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%@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
--- a/configure.in Mon Aug 13 11:10:04 2007 +0200 +++ b/configure.in Mon Aug 13 11:10:50 2007 +0200 @@ -876,13 +876,22 @@ 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 @@ 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 @@ *-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 @@ 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 @@ 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 @@ 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 @@ 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 @@ 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 @@ 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
--- a/configure.usage Mon Aug 13 11:10:04 2007 +0200 +++ b/configure.usage Mon Aug 13 11:10:50 2007 +0200 @@ -204,6 +204,8 @@ 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 @@ --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,
--- a/etc/BETA Mon Aug 13 11:10:04 2007 +0200 +++ b/etc/BETA Mon Aug 13 11:10:50 2007 +0200 @@ -224,6 +224,10 @@ 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 <xemacs-patches@xemacs.org>. + Emailed patches should preferably be sent in MIME format and quoted printable encoding (if necessary).
--- a/etc/PACKAGES Mon Aug 13 11:10:04 2007 +0200 +++ b/etc/PACKAGES Mon Aug 13 11:10:50 2007 +0200 @@ -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 @@ *** Sun -Support for Sparcworks. Must be installed prior to XEmacs build to be -effective. +Support for Sparcworks. *** apel @@ -38,8 +37,7 @@ *** 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 @@ *** vm -An Emacs mailer. This package must be installed prior to building XEmacs. +An Emacs mailer. *** w3 @@ -280,8 +278,7 @@ *** vc -Version Control for Free systems. This package must be installed -prior to building XEmacs. +Version Control for Free systems. *** vc-cc
--- a/etc/package-index.LATEST.pgp Mon Aug 13 11:10:04 2007 +0200 +++ b/etc/package-index.LATEST.pgp Mon Aug 13 11:10:50 2007 +0200 @@ -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 <kifer@cs.sunysb.edu>" + 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 <steve@altair.xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" + version "1.13" + author-version "3.061" + date "1999-02-17" + build-date "1999-03-01" + maintainer "Michael Kifer <kifer@cs.sunysb.edu>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <Oscar.Figueiredo@epfl.ch>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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 <xemacs-beta@xemacs.org>" 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
--- a/lib-src/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/lib-src/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,21 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + +1999-02-17 SL Baur <steve@xemacs.org> + + * 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 <martin@xemacs.org> + + * 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 <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/lib-src/config.values.in Mon Aug 13 11:10:04 2007 +0200 +++ b/lib-src/config.values.in Mon Aug 13 11:10:50 2007 +0200 @@ -43,6 +43,8 @@ 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 @@ 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 @@ 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 @@ lwlib_objs "@lwlib_objs@" machfile "@machfile@" mandir "@mandir@" +moduledir "@moduledir@" native_sound_lib "@native_sound_lib@" oldincludedir "@oldincludedir@" opsysfile "@opsysfile@" @@ -111,6 +120,8 @@ program_transform_name "@program_transform_name@" sbindir "@sbindir@" sharedstatedir "@sharedstatedir@" +sitelispdir "@sitelispdir@" +sitemoduledir "@sitemoduledir@" sound_cflags "@sound_cflags@" srcdir "@srcdir@" start_files "@start_files@"
--- a/lib-src/update-autoloads.sh Mon Aug 13 11:10:04 2007 +0200 +++ b/lib-src/update-autoloads.sh Mon Aug 13 11:10:50 2007 +0200 @@ -43,14 +43,24 @@ 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
--- a/lib-src/update-custom.sh Mon Aug 13 11:10:04 2007 +0200 +++ b/lib-src/update-custom.sh Mon Aug 13 11:10:50 2007 +0200 @@ -45,13 +45,20 @@ 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 @@ 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 @@ 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
--- a/lib-src/update-elc.sh Mon Aug 13 11:10:04 2007 +0200 +++ b/lib-src/update-elc.sh Mon Aug 13 11:10:50 2007 +0200 @@ -60,12 +60,24 @@ } fi -REAL=`cd \`dirname $EMACS\` ; pwd | sed 's|^/tmp_mnt||'`/`basename $EMACS` -BYTECOMP="$REAL -batch -vanilla " -echo "Recompiling in `pwd|sed 's|^/tmp_mnt||'`" +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 "Recompiling in $CANON_PWD" echo " with $REAL..." -$EMACS -batch -vanilla -l `pwd`/lisp/cleantree -f batch-remove-old-elc lisp +BYTECOMP="$REAL -batch -vanilla " + +$EMACS -batch -vanilla -l $CANON_PWD/lisp/cleantree -f batch-remove-old-elc lisp prune_vc="( -name '.*' -o -name SCCS -o -name RCS -o -name CVS ) -prune -o" @@ -94,11 +106,7 @@ mule_p="`$EMACS -batch -vanilla -eval \"$lisp_prog\"`" if test "$mule_p" = nil ; then echo No - ignore_dirs="$ignore_dirs its egg mule language leim skk" - ignore_pattern='\!/tl/char-table.el$!d -\!/tl/chartblxmas.el$!d -\!/mu/latex-math-symbol.el$!d -' + ignore_dirs="$ignore=dirs mule" else echo Yes fi
--- a/lisp/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,84 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + +1999-02-22 Jan Vroonhof <vroonhof@math.ethz.ch> + + * 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 <steve@xemacs.org> + + * mule/mule-charset.el (charset-leading-byte): New function. + From Kazuyuki IENAGA <ienaga@jsys.co.jp> + +1999-02-12 Andy Piper <andy@xemacs.org> + + * 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 <steve@xemacs.org> + + * dumped-lisp.el (preloaded-file-list): Core mule files moved out + of mule-base into lisp/mule. + +1999-02-16 SL Baur <steve@xemacs.org> + + * 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 <aichner@ecf.teradyne.com> + + * process.el (exec-to-string): Use `shell-command-switch' in place + of hard-wired "-c" (for WindowsNT). + +1999-02-08 Charles G Waldman <cgw@pgt.com> + + * menubar-items.el (default-menubar): Remove obsolete + "Gopher" item + +1999-02-06 Jan Vroonhof <vroonhof@math.ethz.ch> + + * 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 <martin@xemacs.org> + + * paths.el: + - improved automounter tmp directory support. + - support 4 (!) empirically discovered automounter conventions + +1999-02-12 SL Baur <steve@xemacs.org> + + * etags.el (pop-tag-mark): autoload to match key binding. + 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/lisp/about.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/about.el Mon Aug 13 11:10:50 2007 +0200 @@ -283,7 +283,7 @@ :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
--- a/lisp/auto-autoloads.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/auto-autoloads.el Mon Aug 13 11:10:50 2007 +0200 @@ -254,7 +254,7 @@ (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 @@ ;;;*** -;;;### (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 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")
--- a/lisp/custom-load.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/custom-load.el Mon Aug 13 11:10:50 2007 +0200 @@ -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"))
--- a/lisp/dumped-lisp.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/dumped-lisp.el Mon Aug 13 11:10:50 2007 +0200 @@ -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")
--- a/lisp/etags.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/etags.el Mon Aug 13 11:10:50 2007 +0200 @@ -1189,6 +1189,7 @@ ;;;###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 @@ (provide 'etags) (provide 'tags) + +;;; etags.el ends here
--- a/lisp/menubar-items.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/menubar-items.el Mon Aug 13 11:10:50 2007 +0200 @@ -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)]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/arabic.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/canna-leim.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,55 @@ +;;; canna-leim.el --- Canna-related code for LEIM +;; Copyright (C) 1997 Stephen Turnbull <turnbull@sk.tsukuba.ac.jp> +;; Copyright (C) 1997 Free Software Foundation, Inc. +;; +;; Shamelessly ripped off from +;; +;; skk-leim.el --- SKK related code for LEIM +;; Copyright (C) 1997 +;; Murata Shuuichirou <mrt@mickey.ai.kyutech.ac.jp> +;; +;; Author: Stephen Turnbull <turnbull@sk.tsukuba.ac.jp> +;; 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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/chinese.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,268 @@ +;;; chinese.el --- Support for Chinese + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, Chinese + +;; 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 Chinese, three character sets GB2312, BIG5, and CNS11643 are +;; supported. + +;;; Code: + +;; Syntax of Chinese characters. +(modify-syntax-entry 'chinese-gb2312 "w") +(loop for row in '(33 34 41) + do (modify-syntax-entry `[chinese-gb2312 ,row] ".")) +;;(loop for row from 35 to 40 +;; do (modify-syntax-entry `[chinese-gb2312 ,row] "w")) +;;(loop for row from 42 to 126 +;; do (modify-syntax-entry `[chinese-gb2312 ,row] "w")) + +(modify-syntax-entry 'chinese-cns11643-1 "w") +(modify-syntax-entry 'chinese-cns11643-2 "w") +(modify-syntax-entry 'chinese-big5-1 "w") +(modify-syntax-entry 'chinese-big5-2 "w") + +;; CNS11643 Plane3 thru Plane7 +;; These represent more and more obscure Chinese characters. +;; By the time you get to Plane 7, we're talking about characters +;; that appear once in some ancient manuscript and whose meaning +;; is unknown. + +(flet + ((make-chinese-cns11643-charset + (name plane final) + (make-charset + name (concat "CNS 11643 Plane " plane " (Chinese traditional)") + `(registry + ,(concat "CNS11643[.-]\\(.*[.-]\\)?" plane "$") + dimension 2 + chars 94 + final ,final + graphic 0)) + (modify-syntax-entry name "w") + (modify-category-entry name ?t) + )) + (make-chinese-cns11643-charset 'chinese-cns11643-3 "3" ?I) + (make-chinese-cns11643-charset 'chinese-cns11643-4 "4" ?J) + (make-chinese-cns11643-charset 'chinese-cns11643-5 "5" ?K) + (make-chinese-cns11643-charset 'chinese-cns11643-6 "6" ?L) + (make-chinese-cns11643-charset 'chinese-cns11643-7 "7" ?M) + ) + +;; ISO-IR-165 (CCITT Extended GB) +;; It is based on CCITT Recommendation T.101, includes GB 2312-80 + +;; GB 8565-88 table A4 + 293 characters. +(make-charset + 'chinese-isoir165 + "ISO-IR-165 (CCITT Extended GB; Chinese simplified)" + `(registry "isoir165" + dimension 2 + chars 94 + final ?E + graphic 0)) + +;; PinYin-ZhuYin +(make-charset 'sisheng "PinYin-ZhuYin" + '(registry "sisheng_cwnn\\|OMRON_UDC_ZH" + dimension 1 + chars 94 + final ?0 + graphic 0 + )) + +;; If you prefer QUAIL to EGG, please modify below as you wish. +;;(when (and (featurep 'egg) (featurep 'wnn)) +;; (setq wnn-server-type 'cserver) +;; (load "pinyin") +;; (setq its:*standard-modes* +;; (cons (its:get-mode-map "PinYin") its:*standard-modes*))) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Chinese (general) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (make-coding-system +;; 'chinese-iso-7bit 2 ?C +;; "ISO 2022 based 7bit encoding for Chinese GB and CNS (MIME:ISO-2022-CN)" +;; '(ascii +;; (nil chinese-gb2312 chinese-cns11643-1) +;; (nil chinese-cns11643-2) +;; (nil chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5 +;; chinese-cns11643-6 chinese-cns11643-7) +;; nil ascii-eol ascii-cntl seven locking-shift single-shift nil nil nil +;; init-bol)) + +;; (define-coding-system-alias 'iso-2022-cn 'chinese-iso-7bit) +;; (define-coding-system-alias 'iso-2022-cn-ext 'chinese-iso-7bit) + +;; (define-prefix-command 'describe-chinese-environment-map) +;; (define-key-after describe-language-environment-map [Chinese] +;; '("Chinese" . describe-chinese-environment-map) +;; t) + +;; (define-prefix-command 'setup-chinese-environment-map) +;; (define-key-after setup-language-environment-map [Chinese] +;; '("Chinese" . setup-chinese-environment-map) +;; t) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Chinese GB2312 (simplified) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (make-coding-system +;; 'chinese-iso-8bit 2 ?c +;; "ISO 2022 based EUC encoding for Chinese GB2312 (MIME:CN-GB-2312)" +;; '((ascii t) chinese-gb2312 chinese-sisheng nil +;; nil ascii-eol ascii-cntl nil nil single-shift nil)) + +(make-coding-system + 'cn-gb-2312 'iso2022 + "Coding-system of Chinese EUC (Extended Unix Code)." + '(charset-g0 ascii + charset-g1 chinese-gb2312 + charset-g2 sisheng + charset-g3 t + mnemonic "Zh-GB/EUC" + )) + +;; (define-coding-system-alias 'cn-gb-2312 'chinese-iso-8bit) +;; (define-coding-system-alias 'euc-china 'chinese-iso-8bit) + +(copy-coding-system 'cn-gb-2312 'gb2312) +(copy-coding-system 'cn-gb-2312 'chinese-euc) + +;; (make-coding-system +;; 'chinese-hz 0 ?z +;; "Hz/ZW 7-bit encoding for Chinese GB2312 (MIME:HZ-GB-2312)" +;; nil) +;; (put 'chinese-hz 'post-read-conversion 'post-read-decode-hz) +;; (put 'chinese-hz 'pre-write-conversion 'pre-write-encode-hz) + +(make-coding-system + 'hz-gb-2312 'no-conversion + "Coding-system of Hz/ZW used for Chinese." + '(mnemonic "Zh-GB/Hz" + eol-type lf + post-read-conversion post-read-decode-hz + pre-write-conversion pre-write-encode-hz)) + +;; (define-coding-system-alias 'hz-gb-2312 'chinese-hz) +;; (define-coding-system-alias 'hz 'chinese-hz) + +(copy-coding-system 'hz-gb-2312 'hz) +(copy-coding-system 'hz-gb-2312 'chinese-hz) + +(defun post-read-decode-hz (len) + (let ((pos (point))) + (decode-hz-region pos (+ pos len)))) + +(defun pre-write-encode-hz (from to) + (let ((buf (current-buffer)) + (work (get-buffer-create " *pre-write-encoding-work*"))) + (set-buffer work) + (erase-buffer) + (if (stringp from) + (insert from) + (insert-buffer-substring buf from to)) + (encode-hz-region 1 (point-max)) + nil)) + +(set-language-info-alist + "Chinese-GB" '((setup-function . (setup-chinese-gb-environment + . setup-chinese-environment-map)) + (charset . (chinese-gb2312 sisheng)) + (coding-system + . (cn-gb-2312 iso-2022-7bit hz-gb-2312)) + (sample-text . "Chinese ($AVPND(B,$AFUM(;0(B,$A::So(B) $ADc:C(B") + (documentation . ("Support for Chinese GB2312 character set." + . describe-chinese-environment-map)) + )) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Chinese BIG5 (traditional) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (make-coding-system +;; 'chinese-big5 3 ?B "BIG5 8-bit encoding for Chinese (MIME:CN-BIG5)") + +(make-coding-system + 'big5 'big5 + "Coding-system of BIG5." + '(mnemonic "Zh/Big5")) + +;; (define-coding-system-alias 'big5 'chinese-big5) +;; (define-coding-system-alias 'cn-big5 'chinese-big5) + +(copy-coding-system 'big5 'cn-big5) +(copy-coding-system 'big5 'chinese-big5) + +;; Big5 font requires special encoding. +(define-ccl-program ccl-encode-big5-font + `(0 + ;; In: R0:chinese-big5-1 or chinese-big5-2 + ;; R1:position code 1 + ;; R2:position code 2 + ;; Out: R1:font code point 1 + ;; R2:font code point 2 + ((r2 = ((((r1 - ?\x21) * 94) + r2) - ?\x21)) + (if (r0 == ,(charset-id 'chinese-big5-2)) (r2 += 6280)) + (r1 = ((r2 / 157) + ?\xA1)) + (r2 %= 157) + (if (r2 < ?\x3F) (r2 += ?\x40) (r2 += ?\x62)))) + "CCL program to encode a Big5 code to code point of Big5 font.") + +;; (setq font-ccl-encoder-alist +;; (cons (cons "big5" ccl-encode-big5-font) font-ccl-encoder-alist)) + +(set-charset-ccl-program 'chinese-big5-1 ccl-encode-big5-font) +(set-charset-ccl-program 'chinese-big5-2 ccl-encode-big5-font) + +(set-language-info-alist + "Chinese-BIG5" '((setup-function . (setup-chinese-big5-environment + . setup-chinese-environment-map)) + (charset . (chinese-big5-1 chinese-big5-2)) + (coding-system . (big5 iso-2022-7bit)) + (sample-text . "Cantonese ($(0GnM$(B,$(0N]0*Hd(B) $(0*/=((B, $(0+$)p(B") + (documentation . ("Support for Chinese Big5 character set." + . describe-chinese-environment-map)) + )) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Chinese CNS11643 (traditional) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;; (set-language-info-alist +;; "Chinese-CNS" '((setup-function . (setup-chinese-cns-environment +;; . setup-chinese-environment-map)) +;; (charset . (chinese-cns11643-1 chinese-cns11643-2 +;; chinese-cns11643-3 chinese-cns11643-4 +;; chinese-cns11643-5 chinese-cns11643-6 +;; chinese-cns11643-7)) +;; (coding-system . (chinese-iso-7bit)) +;; (documentation . ("Support for Chinese CNS character sets." +;; . describe-chinese-environment-map)) +;; )) + +;;; chinese.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/cyrillic.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/english.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/european.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/greek.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/hebrew.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/japanese.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,232 @@ +;;; japanese.el --- Japanese support + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, Japanese + +;; 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 Japanese, character sets JISX0201, JISX0208, JISX0212 are +;; supported. + +;;; Code: + +;;; Syntax of Japanese characters. +(modify-syntax-entry 'katakana-jisx0201 "w") +(modify-syntax-entry 'japanese-jisx0212 "w") + +(modify-syntax-entry 'japanese-jisx0208 "w") +(loop for row in '(33 34 40) + do (modify-syntax-entry `[japanese-jisx0208 ,row] "_")) +(loop for char in '(?$B!<(B ?$B!+(B ?$B!,(B ?$B!3(B ?$B!4(B ?$B!5(B ?$B!6(B ?$B!7(B ?$B!8(B ?$B!9(B ?$B!:(B ?$B!;(B) + do (modify-syntax-entry char "w")) +(modify-syntax-entry ?\$B!J(B "($B!K(B") +(modify-syntax-entry ?\$B!N(B "($B!O(B") +(modify-syntax-entry ?\$B!P(B "($B!Q(B") +(modify-syntax-entry ?\$B!V(B "($B!W(B") +(modify-syntax-entry ?\$B!X(B "($B!Y(B") +(modify-syntax-entry ?\$B!K(B ")$B!J(B") +(modify-syntax-entry ?\$B!O(B ")$B!N(B") +(modify-syntax-entry ?\$B!Q(B ")$B!P(B") +(modify-syntax-entry ?\$B!W(B ")$B!V(B") +(modify-syntax-entry ?\$B!Y(B ")$B!X(B") + +;;; Character categories S, A, H, K, G, Y, and C +(define-category ?S "Japanese 2-byte symbol character.") +(modify-category-entry [japanese-jisx0208 33] ?S) +(modify-category-entry [japanese-jisx0208 34] ?S) +(modify-category-entry [japanese-jisx0208 40] ?S) +(define-category ?A "Japanese 2-byte Alphanumeric character.") +(modify-category-entry [japanese-jisx0208 35] ?A) +(define-category ?H "Japanese 2-byte Hiragana character.") +(modify-category-entry [japanese-jisx0208 36] ?H) +(define-category ?K "Japanese 2-byte Katakana character.") +(modify-category-entry [japanese-jisx0208 37] ?K) +(define-category ?G "Japanese 2-byte Greek character.") +(modify-category-entry [japanese-jisx0208 38] ?G) +(define-category ?Y "Japanese 2-byte Cyrillic character.") +(modify-category-entry [japanese-jisx0208 39] ?Y) +(define-category ?C "Japanese 2-byte Kanji characters.") +(loop for row from 48 to 126 + do (modify-category-entry `[japanese-jisx0208 ,row] ?C)) +(loop for char in '(?$B!<(B ?$B!+(B ?$B!,(B) + do (modify-category-entry char ?K) + (modify-category-entry char ?H)) +(loop for char in '(?$B!3(B ?$B!4(B ?$B!5(B ?$B!6(B ?$B!7(B ?$B!8(B ?$B!9(B ?$B!:(B ?$B!;(B) + do (modify-category-entry char ?C)) +(modify-category-entry 'japanese-jisx0212 ?C) + +(defvar japanese-word-regexp + "\\cA+\\cH*\\|\\cK+\\cH*\\|\\cC+\\cH*\\|\\cH+\\|\\ck+\\|\\sw+" + "Regular expression used to match a Japanese word.") + +(set-word-regexp japanese-word-regexp) +(setq forward-word-regexp "\\w\\>") +(setq backward-word-regexp "\\<\\w") + +;;; Paragraph setting +(setq sentence-end + (concat + "\\(" + "\\(" + "[.?!][]\"')}]*" + "\\|" + "[$B!%!)!*(B][$B!O!I!G!K!Q!M!S!U!W!Y(B]*" + "\\)" + "\\($\\|\t\\| \\)" + "\\|" + "$B!#(B" + "\\)" + "[ \t\n]*")) +(setq paragraph-start "^[ $B!!(B\t\n\f]") +(setq paragraph-separate "^[ $B!!(B\t\f]*$") + +;; EGG specific setup +(define-egg-environment 'japanese + "Japanese settings for egg." + (lambda () + (when (not (featurep 'egg-jpn)) + (load "its-hira") + (load "its-kata") + (load "its-hankaku") + (load "its-zenkaku") + (setq its:*standard-modes* + (append + (list (its:get-mode-map "roma-kana") + (its:get-mode-map "roma-kata") + (its:get-mode-map "downcase") + (its:get-mode-map "upcase") + (its:get-mode-map "zenkaku-downcase") + (its:get-mode-map "zenkaku-upcase")) + its:*standard-modes*)) + (provide 'egg-jpn)) + (setq wnn-server-type 'jserver) + ;; Can't do this here any more. Must do it when selecting egg-wnn + ;; or egg-sj3 + ;; (setq egg-default-startup-file "eggrc-wnn") + (setq-default its:*current-map* (its:get-mode-map "roma-kana")))) + +;; stuff for providing gramatic processing of Japanese text +;; something like this should probably be created for all environments... + +(defvar aletter (concat "\\(" ascii-char "\\|" kanji-char "\\)")) +(defvar kanji-space-insertable (concat + "$B!"(B" aletter "\\|" + "$B!#(B" aletter "\\|" + aletter "$B!J(B" "\\|" + "$B!K(B" aletter "\\|" + ascii-alphanumeric kanji-kanji-char "\\|" + kanji-kanji-char ascii-alphanumeric )) + +(defvar space-insertable (concat " " aletter "\\|" kanji-space-insertable) + "Regexp for finding points that can have spaces inserted into them for justification") + +;; (make-coding-system +;; 'iso-2022-jp 2 ?J +;; "ISO 2022 based 7bit encoding for Japanese (MIME:ISO-2022-JP)" +;; '((ascii japanese-jisx0208-1978 japanese-jisx0208 +;; latin-jisx0201 japanese-jisx0212 katakana-jisx0201 t) nil nil nil +;; short ascii-eol ascii-cntl seven)) + +;; (define-coding-system-alias 'junet 'iso-2022-jp) + +(make-coding-system + 'iso-2022-jp 'iso2022 + "Coding-system used for communication with mail and news in Japan." + '(charset-g0 ascii + short t + seven t + input-charset-conversion ((latin-jisx0201 ascii) + (japanese-jisx0208-1978 japanese-jisx0208)) + mnemonic "MULE/7bit" + )) + +(copy-coding-system 'iso-2022-jp 'junet) + +;; (make-coding-system +;; 'shift_jis 1 ?S +;; "Coding-system of Shift-JIS used in Japan." t) + +(make-coding-system + 'shift_jis 'shift-jis + "Coding-system of Shift-JIS used in Japan." + '(mnemonic "Ja/SJIS")) + +;;(define-coding-system-alias 'shift_jis 'sjis) + +(copy-coding-system 'shift_jis 'sjis) + +;; (make-coding-system +;; 'iso-2022-jp-1978-irv 2 ?J +;; "Coding-system used for old jis terminal." +;; '((ascii t) nil nil nil +;; short ascii-eol ascii-cntl seven nil nil use-roman use-oldjis)) + +(make-coding-system + 'iso-2022-jp-1978-irv 'iso2022 + "Coding-system used for old JIS terminal." + '(charset-g0 ascii + short t + seven t + output-charset-conversion ((ascii latin-jisx0201) + (japanese-jisx0208 japanese-jisx0208-1978)) + mnemonic "Ja-78/7bit" + )) + +;;(define-coding-system-alias 'iso-2022-jp-1978-irv 'old-jis) + +(copy-coding-system 'iso-2022-jp-1978-irv 'old-jis) + +;; (make-coding-system +;; 'euc-japan-1990 2 ?E +;; "Coding-system of Japanese EUC (Extended Unix Code)." +;; '(ascii japanese-jisx0208 katakana-jisx0201 japanese-jisx0212 +;; short ascii-eol ascii-cntl nil nil single-shift)) + +(make-coding-system + 'euc-jp 'iso2022 + "Coding-system of Japanese EUC (Extended Unix Code)." + '(charset-g0 ascii + charset-g1 japanese-jisx0208 + charset-g2 katakana-jisx0201 + charset-g3 japanese-jisx0212 + short t + mnemonic "Ja/EUC" + )) + +;;(define-coding-system-alias 'euc-japan-1990 'euc-japan) + +(copy-coding-system 'euc-jp 'euc-japan) ; only for w3 +(copy-coding-system 'euc-jp 'japanese-euc) + +(set-language-info-alist + "Japanese" '((setup-function . setup-japanese-environment) + (tutorial . "TUTORIAL.ja") + (charset . (japanese-jisx0208 japanese-jisx0208-1978 + japanese-jisx0212 latin-jisx0201 + katakana-jisx0201)) + (coding-system . (iso-2022-jp euc-jp + shift_jis iso-2022-jp-1978-irv)) + (sample-text . "Japanese ($BF|K\8l(B) $B$3$s$K$A$O(B, (I:]FAJ(B") + (documentation . t))) + +;;; japanese.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/kinsoku.el Mon Aug 13 11:10:50 2007 +0200 @@ -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!:!;!<!=!?!A!C!E!G!I!K(B" + "$(0!M!O!Q(B $(0!S!U!W!Y![!]!_!a!c!e!g!i!k!q(B" + "$(0"#"$"%"&"'"(")"*"+","2"3"4"j"k"l"x%7(B") + "BOL kinsoku for BIG5.") +(defvar kinsoku-big5-eol + (concat "$(0!>!@!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))))
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/korean.el Mon Aug 13 11:10:50 2007 +0200 @@ -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<<?d(B, $(C>H3gGO=J4O1n(B") + (documentation . t))) + +;;; korean.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/misc-lang.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,52 @@ +;;; misc-lang.el --- support for miscellaneous languages (characters) + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: multilingual, character set, coding system + +;; 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. + +;;; Code: + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; IPA (International Phonetic Alphabet) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(make-charset 'ipa "International Phonetic Alphabet" + '(registry "MuleIPA" + dimension 1 + chars 96 + final ?0 + graphic 1 + )) ; for XEmacs + +(defun setup-ipa-environment () + "Setup multilingual environment (MULE) for IPA." + (interactive) + (setup-english-environment)) + +(set-language-info-alist + "IPA" '((setup-function . setup-ipa-environment) + (charset . (ipa)) + (documentation . "\ +IPA is International Phonetic Alphabet for English, French, German +and Italian."))) + +;;; misc-lang.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-category.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,286 @@ +;;; mule-category.el --- category functions for XEmacs/Mule. + +;; 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: + +;; Functions for working with category tables, which are a particular +;; type of char table. Some function names / arguments should be +;; parallel with syntax tables. + +;; Written by Ben Wing <wing@666.com>. The initialization code +;; at the end of this file comes from Mule. +;; Some bugfixes by Jareth Hein <jhod@po.iijnet.or.jp> + +;;; Code: + +(defvar defined-category-hashtable (make-hashtable 50)) + +(defun define-category (designator doc-string) + "Make a new category whose designator is DESIGNATOR. +DESIGNATOR should be a visible letter of ' ' thru '~'. +STRING is a doc string for the category. +Letters of 'a' thru 'z' are already used or kept for the system." + (check-argument-type 'category-designator-p designator) + (check-argument-type 'stringp doc-string) + (puthash designator doc-string defined-category-hashtable)) + +(defun undefine-category (designator) + "Undefine DESIGNATOR as a designator for a category." + (check-argument-type 'category-designator-p designator) + (remhash designator defined-category-hashtable)) + +(defun defined-category-p (designator) + "Return non-nil if DESIGNATOR is a designator for a defined category." + (and (category-designator-p designator) + (gethash designator defined-category-hashtable))) + +(defun defined-category-list () + "Return a list of the currently defined categories. +Categories are given by their designators." + (let (list) + (maphash #'(lambda (key value) + (setq list (cons key list))) + defined-category-hashtable) + (nreverse list))) + +(defun undefined-category-designator () + "Return an undefined category designator, or nil if there are none." + (let ((a 32) found) + (while (and (< a 127) (not found)) + (if (gethash a defined-category-hashtable) + (setq found a)) + (setq a (1+ a))) + found)) + +(defun category-doc-string (designator) + "Return the doc-string for the category denoted by DESIGNATOR." + (check-argument-type 'defined-category-p designator) + (gethash designator defined-category-hashtable)) + +(defun modify-category-entry (char-range designator &optional table reset) + "Add a category to the categories associated with CHAR-RANGE. +CHAR-RANGE is a single character or a range of characters, + as per `put-char-table'. +The category is given by a designator character. +The changes are made in TABLE, which defaults to the current buffer's + category table. +If optional fourth argument RESET is non-nil, previous categories associated + with CHAR-RANGE are removed before adding the specified category." + (or table (setq table (category-table))) + (check-argument-type 'category-table-p table) + (check-argument-type 'defined-category-p designator) + (if reset + ;; clear all existing stuff. + (put-char-table char-range nil table)) + (map-char-table + #'(lambda (key value) + ;; make sure that this range has a bit-vector assigned to it + (if (not (bit-vector-p value)) + (setq value (make-bit-vector 95 0)) + (setq value (copy-sequence value))) + ;; set the appropriate bit in that vector. + (aset value (- designator 32) 1) + ;; put the vector back, thus assuring we have a unique setting for this range + (put-char-table key value table)) + table char-range)) + +(defun char-category-list (char &optional table) + "Return a list of the categories that CHAR is in. +TABLE defaults to the current buffer's category table. +The categories are given by their designators." + (or table (setq table (category-table))) + (check-argument-type 'category-table-p table) + (let ((vec (get-char-table char table))) + (if (null vec) nil + (let ((a 32) list) + (while (< a 127) + (if (= 1 (aref vec (- a 32))) + (setq list (cons a list))) + (setq a (1+ a))) + (nreverse list))))) + +;; implimented in c, file chartab.c (97/3/14 jhod@po.iijnet.or.jp) +;(defun char-in-category-p (char category &optional table) +; "Return non-nil if CHAR is in CATEGORY. +;TABLE defaults to the current buffer's category table. +;Categories are specified by their designators." +; (or table (setq table (category-table))) +; (check-argument-type 'category-table-p table) +; (check-argument-type 'category-designator-p category) +; (let ((vec (get-char-table char table))) +; (if (null vec) nil +; (= 1 (aref vec (- category 32)))))) + +(defun describe-category () + "Describe the category specifications in the category table. +The descriptions are inserted in a buffer, which is then displayed." + (interactive) + (with-output-to-temp-buffer "*Help*" + (describe-category-table (category-table) standard-output))) + +(defun describe-category-table (table stream) + (let (first-char + last-char + prev-val + (describe-one + (lambda (first last value stream) + (if (and (bit-vector-p value) + (> (reduce '+ value) 0)) + (progn + (if (equal first last) + (cond ((vectorp first) + (princ (format "%s, row %d" + (charset-name + (aref first 0)) + (aref first 1)) + stream)) + ((charsetp first) + (princ (charset-name first) stream)) + (t (princ first stream))) + (cond ((vectorp first) + (princ (format "%s, rows %d .. %d" + (charset-name + (aref first 0)) + (aref first 1) + (aref last 1)) + stream)) + (t + (princ (format "%s .. %s" first last) + stream)))) + (describe-category-code value stream)))))) + (map-char-table + (lambda (range value) + (if (and (or + (and (characterp range) + (characterp first-char) + (eq (char-charset range) (char-charset first-char)) + (= (char-to-int last-char) (1- (char-to-int range)))) + (and (vectorp range) + (vectorp first-char) + (eq (aref range 0) (aref first-char 0)) + (= (aref last-char 1) (1- (aref range 1)))) + (equal value prev-val))) + (setq last-char range) + (if first-char + (progn + (funcall describe-one first-char last-char prev-val stream) + (setq first-char nil))) + (funcall describe-one range range value stream)) + nil) + table) + (if first-char + (funcall describe-one first-char last-char prev-val stream)))) + +(defun describe-category-code (code stream) + (let ((standard-output (or stream standard-output))) + (princ "\tin categories: ") + (if (not (bit-vector-p code)) + (princ "(none)") + (let ((i 0) + already-matched) + (while (< i 95) + (if (= 1 (aref code i)) + (progn + (if (not already-matched) + (setq already-matched t) + (princ " ")) + (princ (int-to-char (+ 32 i))))) + (setq i (1+ i))) + (if (not already-matched) + (princ "(none)"))) + (let ((i 0)) + (while (< i 95) + (if (= 1 (aref code i)) + (princ (format "\n\t\tmeaning: %s" + (category-doc-string (int-to-char (+ 32 i)))))) + (setq i (1+ i))))) + (terpri))) + +(defconst predefined-category-list + '((latin-iso8859-1 ?l "Latin-1 through Latin-5 character set") + (latin-iso8859-2 ?l) + (latin-iso8859-3 ?l) + (latin-iso8859-4 ?l) + (latin-iso8859-9 ?l) + (cyrillic-iso8859-5 ?y "Cyrillic character set") + (arabic-iso8859-6 ?b "Arabic character set") + (greek-iso8859-7 ?g "Greek character set") + (hebrew-iso8859-8 ?w "Hebrew character set") + (katakana-jisx0201 ?k "Japanese 1-byte Katakana character set") + (latin-jisx0201 ?r "Japanese 1-byte Roman character set") + (japanese-jisx0208-1978 ?j "Japanese 2-byte character set (old)") + (japanese-jisx0208 ?j "Japanese 2-byte character set") + (japanese-jisx0212 ?j) + (chinese-gb2312 ?c "Chinese GB (China, PRC) 2-byte character set") + (chinese-cns11643-1 ?t "Chinese Taiwan (CNS or Big5) 2-byte character set") + (chinese-cns11643-2 ?t) + (chinese-big5-1 ?t) + (chinese-big5-2 ?t) + (korean-ksc5601 ?h "Hangul (Korean) 2-byte character set") + ) + "List of predefined categories. +Each element is a list of a charset, a designator, and maybe a doc string.") + +(let (i l) + (define-category ?a "ASCII character set.") + (setq i 32) + (while (< i 127) + (modify-category-entry i ?a) + (setq i (1+ i))) + (setq l predefined-category-list) + (while l + (if (and (nth 2 (car l)) + (not (defined-category-p (nth 2 (car l))))) + (define-category (nth 1 (car l)) (nth 2 (car l)))) + (modify-category-entry (car (car l)) (nth 1 (car l))) + (setq l (cdr l)))) + +;;; At the present, I know Japanese and Chinese text can +;;; break line at any point under a restriction of 'kinsoku'. +(defvar word-across-newline "\\(\\cj\\|\\cc\\|\\ct\\)" + "Regular expression of such characters which can be a word across newline.") + +(defvar ascii-char "[\40-\176]") +(defvar ascii-space "[ \t]") +(defvar ascii-symbols "[\40-\57\72-\100\133-\140\173-\176]") +(defvar ascii-numeric "[\60-\71]") +(defvar ascii-English-Upper "[\101-\132]") +(defvar ascii-English-Lower "[\141-\172]") +(defvar ascii-alphanumeric "[\60-\71\101-\132\141-\172]") + +(defvar kanji-char "\\cj") +(defvar kanji-space "$B!!(B") +(defvar kanji-symbols "\\cS") +(defvar kanji-numeric "[$B#0(B-$B#9(B]") +(defvar kanji-English-Upper "[$B#A(B-$B#Z(B]") +(defvar kanji-English-Lower "[$B#a(B-$B#z(B]") +(defvar kanji-hiragana "\\cH") +(defvar kanji-katakana "\\cK") +(defvar kanji-Greek-Upper "[$B&!(B-$B&8(B]") +(defvar kanji-Greek-Lower "[$B&A(B-$B&X(B]") +(defvar kanji-Russian-Upper "[$B'!(B-$B'A(B]") +(defvar kanji-Russian-Lower "[$B'Q(B-$B'q(B]") +(defvar kanji-Kanji-1st-Level "[$B0!(B-$BOS(B]") +(defvar kanji-Kanji-2nd-Level "[$BP!(B-$Bt$(B]") + +(defvar kanji-kanji-char "\\(\\cH\\|\\cK\\|\\cC\\)")
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-ccl.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-charset.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,142 @@ +;;; mule-charset.el --- Charset functions for Mule. +;; Copyright (C) 1992 Free Software Foundation, Inc. +;; Copyright (C) 1995 Amdahl Corporation. +;; Copyright (C) 1996 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. + + +;;;; Composite character support + +(defun compose-region (start end &optional buffer) + "Compose characters in the current region into one composite character. +From a Lisp program, pass two arguments, START to END. +The composite character replaces the composed characters. +BUFFER defaults to the current buffer if omitted." + (interactive "r") + (let ((ch (make-composite-char (buffer-substring start end buffer)))) + (delete-region start end buffer) + (insert-char ch nil nil buffer))) + +(defun decompose-region (start end &optional buffer) + "Decompose any composite characters in the current region. +From a Lisp program, pass two arguments, START to END. +This converts each composite character into one or more characters, +the individual characters out of which the composite character was formed. +Non-composite characters are left as-is. BUFFER defaults to the current +buffer if omitted." + (interactive "r") + (save-excursion + (set-buffer buffer) + (save-restriction + (narrow-to-region start end) + (goto-char (point-min)) + (let ((compcharset (get-charset 'composite))) + (while (< (point) (point-max)) + (let ((ch (char-after (point)))) + (if (eq compcharset (char-charset ch)) + (progn + (delete-char 1) + (insert (composite-char-string ch)))))))))) + + +;;;; Classifying text according to charsets + +(defun charsets-in-region (start end &optional buffer) + "Return a list of the charsets in the region between START and END. +BUFFER defaults to the current buffer if omitted." + (let (list) + (save-excursion + (if buffer + (set-buffer buffer)) + (save-restriction + (narrow-to-region start end) + (goto-char (point-min)) + (while (not (eobp)) + (let* (prev-charset + (ch (char-after (point))) + (charset (char-charset ch))) + (if (not (eq prev-charset charset)) + (progn + (setq prev-charset charset) + (or (memq charset list) + (setq list (cons charset list)))))) + (forward-char)))) + list)) + +(defun charsets-in-string (string) + "Return a list of the charsets in STRING." + (let ((i 0) + (len (length string)) + prev-charset charset list) + (while (< i len) + (setq charset (char-charset (aref string i))) + (if (not (eq prev-charset charset)) + (progn + (setq prev-charset charset) + (or (memq charset list) + (setq list (cons charset list))))) + (setq i (1+ i))) + list)) + + +;;;; Charset accessors + +(defun charset-graphic (charset) + "Return the `graphic' property of CHARSET. +See `make-charset'." + (charset-property charset 'graphic)) + +(defun charset-final (charset) + "Return the final byte of the ISO 2022 escape sequence designating CHARSET." + (charset-property charset 'final)) + +(defun charset-chars (charset) + "Return the number of characters per dimension of CHARSET." + (charset-property charset 'chars)) + +(defun charset-columns (charset) + "Return the number of display columns per character of CHARSET. +This only applies to TTY mode (under X, the actual display width can +be automatically determined)." + (charset-property charset 'columns)) + +(defun charset-direction (charset) + "Return the display direction (`l2r' or `r2l') of CHARSET." + (charset-property charset 'direction)) + +(defun charset-registry (charset) + "Return the registry of CHARSET. +This is a regular expression matching the registry field of fonts +that can display the characters in CHARSET." + (charset-property charset 'registry)) + +(defun charset-ccl-program (charset) + "Return the CCL program of CHARSET. +See `make-charset'." + (charset-property charset 'ccl-program)) + +(defun charset-leading-byte (charset) + "Return the leading byte of CHARSET. +See `make-charset'." + (charset-property charset 'leading-byte)) + +;;;; Define setf methods for all settable Charset properties + +(defsetf charset-registry set-charset-registry) +(defsetf charset-ccl-program set-charset-ccl-program)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-cmds.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,706 @@ +;;; mule-cmds.el --- Commands for multilingual environment + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; Keywords: mule, multilingual + +;; 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. + +;;; Code: + +;;; MULE related key bindings and menus. + +(defvar mule-keymap (make-sparse-keymap "MULE") + "Keymap for MULE (Multilingual environment) specific commands.") + +;; Keep "C-x C-m ..." for mule specific commands. +(define-key ctl-x-map "\C-m" mule-keymap) + +(define-key mule-keymap "f" 'set-buffer-file-coding-system) +(define-key mule-keymap "F" 'set-default-buffer-file-coding-system) ; XEmacs +(define-key mule-keymap "t" 'set-terminal-coding-system) +(define-key mule-keymap "k" 'set-keyboard-coding-system) +(define-key mule-keymap "p" 'set-buffer-process-coding-system) +(define-key mule-keymap "\C-\\" 'select-input-method) +(define-key mule-keymap "c" 'universal-coding-system-argument) +;;(define-key mule-keymap "c" 'list-coding-system-briefly) ; XEmacs +(define-key mule-keymap "C" 'list-coding-system) ; XEmacs +(define-key mule-keymap "r" 'toggle-display-direction) ; XEmacs +(define-key mule-keymap "l" 'set-language-environment) + +(define-key help-map "\C-L" 'describe-language-support) +(define-key help-map "L" 'describe-language-environment) +(define-key help-map "\C-\\" 'describe-input-method) +(define-key help-map "I" 'describe-input-method) +(define-key help-map "C" 'describe-coding-system) +(define-key help-map "h" 'view-hello-file) + +;; Menu for XEmacs were moved to menubar-items.el. + + +;; This should be a single character key binding because users use it +;; very frequently while editing multilingual text. Now we can use +;; only two such keys: "\C-\\" and "\C-^", but the latter is not +;; convenient because it requires shifting on most keyboards. An +;; alternative is "\C-\]" which is now bound to `abort-recursive-edit' +;; but it won't be used that frequently. +(define-key global-map "\C-\\" 'toggle-input-method) + +(defun view-hello-file () + "Display the HELLO file which list up many languages and characters." + (interactive) + ;; We have to decode the file in any environment. + (let ((coding-system-for-read 'iso-2022-7)) + (find-file-read-only (expand-file-name "HELLO" data-directory)))) + +(defun universal-coding-system-argument () + "Execute an I/O command using the specified coding system." + (interactive) + (let* ((coding-system + (read-coding-system "Coding system for following command: ")) + (keyseq (read-key-sequence + (format "Command to execute with %s:" coding-system))) + (cmd (key-binding keyseq))) + (let ((coding-system-for-read coding-system) + (coding-system-for-write coding-system)) + (message "") + (call-interactively cmd)))) + +(defun set-default-coding-systems (coding-system) + "Set default value of various coding systems to CODING-SYSTEM. +The follwing coding systems are set: + o coding system of a newly created buffer + o default coding system for terminal output + o default coding system for keyboard input + o default coding system for subprocess I/O" + (check-coding-system coding-system) + ;;(setq-default buffer-file-coding-system coding-system) + (set-default-buffer-file-coding-system coding-system) + ;;(setq default-terminal-coding-system coding-system) + (setq terminal-coding-system coding-system) + ;;(setq default-keyboard-coding-system coding-system) + (setq keyboard-coding-system coding-system) + ;;(setq default-process-coding-system (cons coding-system coding-system)) + (add-hook 'comint-exec-hook + `(lambda () + (let ((proc (get-buffer-process (current-buffer)))) + (set-process-input-coding-system proc ',coding-system) + (set-process-output-coding-system proc ',coding-system))) + 'append) + (setq file-name-coding-system coding-system)) + +(defun prefer-coding-system (coding-system) + "Add CODING-SYSTEM at the front of the priority list for automatic detection. +This also sets the following coding systems to CODING-SYSTEM: + o coding system of a newly created buffer + o default coding system for terminal output + o default coding system for keyboard input + o default coding system for subprocess I/O" + (interactive "zPrefer coding system: ") + (if (not (and coding-system (coding-system-p coding-system))) + (error "Invalid coding system `%s'" coding-system)) + (let ((coding-category (coding-system-category coding-system)) + (parent (coding-system-parent coding-system))) + (if (not coding-category) + ;; CODING-SYSTEM is no-conversion or undecided. + (error "Can't prefer the coding system `%s'" coding-system)) + (set coding-category (or parent coding-system)) + (if (not (eq coding-category (car coding-category-list))) + ;; We must change the order. + (setq coding-category-list + (cons coding-category + (delq coding-category coding-category-list)))) + (if (and parent (interactive-p)) + (message "Highest priority is set to %s (parent of %s)" + parent coding-system)) + (set-default-coding-systems (or parent coding-system)))) + + +;;; Language support staffs. + +(defvar language-info-alist nil + "Alist of language names vs the corresponding information of various kind. +Each element looks like: + (LANGUAGE-NAME . ((KEY . INFO) ...)) +where LANGUAGE-NAME is a string, +KEY is a symbol denoting the kind of information, +INFO is any Lisp object which contains the actual information related +to KEY.") + +(defun get-language-info (language-name key) + "Return the information for LANGUAGE-NAME of the kind KEY. +KEY is a symbol denoting the kind of required information." + (if (symbolp language-name) + (setq language-name (symbol-name language-name))) + (let ((lang-slot (assoc-ignore-case language-name language-info-alist))) + (if lang-slot + (cdr (assq key (cdr lang-slot)))))) + +(defun set-language-info (language-name key info) + "Set for LANGUAGE-NAME the information INFO under KEY. +KEY is a symbol denoting the kind of information. +INFO is any Lisp object which contains the actual information. + +Currently, the following KEYs are used by Emacs: + +charset: list of symbols whose values are charsets specific to the language. + +coding-system: list of coding systems specific to the language. + +tutorial: a tutorial file name written in the language. + +sample-text: one line short text containing characters of the language. + +documentation: t or a string describing how Emacs supports the language. + If a string is specified, it is shown before any other information + of the language by the command `describe-language-environment'. + +setup-function: a function to call for setting up environment + convenient for a user of the language. + +If KEY is documentation or setup-function, you can also specify +a cons cell as INFO, in which case, the car part should be +a normal value as INFO for KEY (as described above), +and the cdr part should be a symbol whose value is a menu keymap +in which an entry for the language is defined. But, only the car part +is actually set as the information. + +We will define more KEYs in the future. To avoid conflict, +if you want to use your own KEY values, make them start with `user-'." + (if (symbolp language-name) + (setq language-name (symbol-name language-name))) + (let (lang-slot key-slot) + (setq lang-slot (assoc language-name language-info-alist)) + (if (null lang-slot) ; If no slot for the language, add it. + (setq lang-slot (list language-name) + language-info-alist (cons lang-slot language-info-alist))) + (setq key-slot (assq key lang-slot)) + (if (null key-slot) ; If no slot for the key, add it. + (progn + (setq key-slot (list key)) + (setcdr lang-slot (cons key-slot (cdr lang-slot))))) + ;; Setup menu. + (cond ((eq key 'documentation) + ;; (define-key-after + ;; (if (consp info) + ;; (prog1 (symbol-value (cdr info)) + ;; (setq info (car info))) + ;; describe-language-environment-map) + ;; (vector (intern language-name)) + ;; (cons language-name 'describe-specified-language-support) + ;; t) + (if (consp info) + (setq info (car info))) + (when (featurep 'menubar) + (eval-after-load + "menubar-items.elc" + `(add-menu-button + '("Mule" "Describe Language Support") + (vector ,language-name + '(describe-language-environment ,language-name) + t)))) + ) + ((eq key 'setup-function) + ;; (define-key-after + ;; (if (consp info) + ;; (prog1 (symbol-value (cdr info)) + ;; (setq info (car info))) + ;; setup-language-environment-map) + ;; (vector (intern language-name)) + ;; (cons language-name 'setup-specified-language-environment) + ;; t) + (if (consp info) + (setq info (car info))) + (when (featurep 'menubar) + (eval-after-load + "menubar-items.elc" + `(add-menu-button + '("Mule" "Set Language Environment") + (vector ,language-name + '(set-language-environment ,language-name) + t)))) + )) + + (setcdr key-slot info) + )) + +(defun set-language-info-alist (language-name alist) + "Set for LANGUAGE-NAME the information in ALIST. +ALIST is an alist of KEY and INFO. See the documentation of +`set-language-info' for the meanings of KEY and INFO." + (if (symbolp language-name) + (setq language-name (symbol-name language-name))) + (while alist + (set-language-info language-name (car (car alist)) (cdr (car alist))) + (setq alist (cdr alist)))) + +(defun read-language-name (key prompt &optional default) + "Read language name which has information for KEY, prompting with PROMPT. +DEFAULT is the default choice of language. +This returns a language name as a string." + (let* ((completion-ignore-case t) + (name (completing-read prompt + language-info-alist + (function (lambda (elm) (assq key elm))) + t nil default))) + (if (and (> (length name) 0) + (get-language-info name key)) + name))) + +;;; Multilingual input methods. + +(defconst leim-list-file-name "leim-list.el" + "Name of LEIM list file. +This file contains a list of libraries of Emacs input methods (LEIM) +in the format of Lisp expression for registering each input method. +Emacs loads this file at startup time.") + +(defvar leim-list-header (format +";;; %s -- list of LEIM (Library of Emacs Input Method) +;; +;; This file contains a list of LEIM (Library of Emacs Input Method) +;; in the same directory as this file. Loading this file registeres +;; the whole input methods in Emacs. +;; +;; Each entry has the form: +;; (register-input-method +;; INPUT-METHOD LANGUAGE-NAME ACTIVATE-FUNC +;; TITLE DESCRIPTION +;; ARG ...) +;; See the function `register-input-method' for the meanings of arguments. +;; +;; If this directory is included in load-path, Emacs automatically +;; loads this file at startup time. + +" + leim-list-file-name) + "Header to be inserted in LEIM list file.") + +(defvar leim-list-entry-regexp "^(register-input-method" + "Regexp matching head of each entry in LEIM list file. +See also the variable `leim-list-header'") + +(defvar update-leim-list-functions + '(quail-update-leim-list-file) + "List of functions to call to update LEIM list file. +Each function is called with one arg, LEIM directory name.") + +(defun update-leim-list-file (&rest dirs) + "Update LEIM list file in directories DIRS." + (let ((functions update-leim-list-functions)) + (while functions + (apply (car functions) dirs) + (setq functions (cdr functions))))) + +(defvar current-input-method nil + "The current input method for multilingual text. +If nil, that means no input method is activated now.") +(make-variable-buffer-local 'current-input-method) +(put 'current-input-method 'permanent-local t) + +(defvar current-input-method-title nil + "Title string of the current input method shown in mode line.") +(make-variable-buffer-local 'current-input-method-title) +(put 'current-input-method-title 'permanent-local t) + +(defcustom default-input-method nil + "*Default input method for multilingual text. +This is the input method activated automatically by the command +`toggle-input-method' (\\[toggle-input-method])." + :group 'mule) + +(defvar input-method-history nil + "History list for some commands that read input methods.") +(make-variable-buffer-local 'input-method-history) +(put 'input-method-history 'permanent-local t) + +(defvar inactivate-current-input-method-function nil + "Function to call for inactivating the current input method. +Every input method should set this to an appropriate value when activated. +This function is called with no argument. + +This function should never change the value of `current-input-method'. +It is set to nil by the function `inactivate-input-method'.") +(make-variable-buffer-local 'inactivate-current-input-method-function) +(put 'inactivate-current-input-method-function 'permanent-local t) + +(defvar describe-current-input-method-function nil + "Function to call for describing the current input method. +This function is called with no argument.") +(make-variable-buffer-local 'describe-current-input-method-function) +(put 'describe-current-input-method-function 'permanent-local t) + +(defvar input-method-alist nil + "Alist of input method names vs the corresponding information to use it. +Each element has the form: + (INPUT-METHOD LANGUAGE-NAME ACTIVATE-FUNC TITLE DESCRIPTION ...) +See the function `register-input-method' for the meanings of each elements.") + +(defun register-input-method (input-method language-name &rest args) + "Register INPUT-METHOD as an input method for LANGUAGE-NAME. +INPUT-METHOD and LANGUAGE-NAME are symbols or strings. +The remaining arguments are: + ACTIVATE-FUNC, TITLE, DESCRIPTION, and ARG ... + where, +ACTIVATE-FUNC is a function to call for activating this method. +TITLE is a string shown in mode-line while this method is active, +DESCRIPTION is a string describing about this method, +Arguments to ACTIVATE-FUNC are INPUT-METHOD and ARGs." + (if (symbolp language-name) + (setq language-name (symbol-name language-name))) + (if (symbolp input-method) + (setq input-method (symbol-name input-method))) + (let ((info (cons language-name args)) + (slot (assoc input-method input-method-alist))) + (if slot + (setcdr slot info) + (setq slot (cons input-method info)) + (setq input-method-alist (cons slot input-method-alist))))) + +(defun read-input-method-name (prompt &optional default inhibit-null) + "Read a name of input method from a minibuffer prompting with PROMPT. +If DEFAULT is non-nil, use that as the default, + and substitute it into PROMPT at the first `%s'. +If INHIBIT-NULL is non-nil, null input signals an error. + +The return value is a string." + (if default + (setq prompt (format prompt default))) + (let* ((completion-ignore-case t) + ;; This binding is necessary because input-method-history is + ;; buffer local. + (input-method (completing-read prompt input-method-alist + nil t nil 'input-method-history) + ;;default) + )) + (if (> (length input-method) 0) + input-method + (if inhibit-null + (error "No valid input method is specified"))))) + +(defun activate-input-method (input-method) + "Turn INPUT-METHOD on. +If some input method is already on, turn it off at first." + (if (symbolp input-method) + (setq input-method (symbol-name input-method))) + (if (and current-input-method + (not (string= current-input-method input-method))) + (inactivate-input-method)) + (unless current-input-method + (let ((slot (assoc input-method input-method-alist))) + (if (null slot) + (error "Can't activate input method `%s'" input-method)) + (apply (nth 2 slot) input-method (nthcdr 5 slot)) + (setq current-input-method input-method) + (setq current-input-method-title (nth 3 slot)) + (run-hooks 'input-method-activate-hook)))) + +(defun inactivate-input-method () + "Turn off the current input method." + (when current-input-method + (if input-method-history + (unless (string= current-input-method (car input-method-history)) + (setq input-method-history + (cons current-input-method + (delete current-input-method input-method-history)))) + (setq input-method-history (list current-input-method))) + (unwind-protect + (funcall inactivate-current-input-method-function) + (unwind-protect + (run-hooks 'input-method-inactivate-hook) + (setq current-input-method nil + current-input-method-title nil))))) + +(defun select-input-method (input-method) + "Select and turn on INPUT-METHOD. +This sets the default input method to what you specify, +and turn it on for the current buffer." + (interactive + (let* ((default (or (car input-method-history) default-input-method))) + (list (read-input-method-name + (if default "Select input method (default %s): " "Select input method: ") + default t)))) + (activate-input-method input-method) + (setq default-input-method input-method)) + +(defun toggle-input-method (&optional arg) + "Turn on or off a multilingual text input method for the current buffer. + +With arg, read an input method from minibuffer and turn it on. + +Without arg, if some input method is currently activated, turn it off, +else turn on an input method selected last time +or the default input method (see `default-input-method'). + +When there's no input method to turn on, turn on what read from minibuffer." + (interactive "P") + (let* ((default (or (car input-method-history) default-input-method))) + (if (and current-input-method (not arg)) + (inactivate-input-method) + (activate-input-method + (if (or arg (not default)) + (read-input-method-name + (if default "Input method (default %s): " "Input method: " ) + default t) + default)) + (or default-input-method + (setq default-input-method current-input-method))))) + +(defun describe-input-method (input-method) + "Describe input method INPUT-METHOD." + (interactive + (list (read-input-method-name + "Describe input method (default, current choice): "))) + (if (and input-method (symbolp input-method)) + (setq input-method (symbol-name input-method))) + (if (null input-method) + (describe-current-input-method) + (with-output-to-temp-buffer "*Help*" + (let ((elt (assoc input-method input-method-alist))) + (princ (format "Input method: %s (`%s' in mode line) for %s\n %s\n" + input-method (nth 3 elt) (nth 1 elt) (nth 4 elt))))))) + +(defun describe-current-input-method () + "Describe the input method currently in use." + (if current-input-method + (if (and (symbolp describe-current-input-method-function) + (fboundp describe-current-input-method-function)) + (funcall describe-current-input-method-function) + (message "No way to describe the current input method `%s'" + (cdr current-input-method)) + (ding)) + (error "No input method is activated now"))) + +(defun read-multilingual-string (prompt &optional initial-input + input-method) + "Read a multilingual string from minibuffer, prompting with string PROMPT. +The input method selected last time is activated in minibuffer. +If optional second arg INITIAL-INPUT is non-nil, insert it in the minibuffer +initially. +Optional 3rd argument INPUT-METHOD specifies the input method +to be activated instead of the one selected last time. It is a symbol +or a string." + (setq input-method + (or input-method + default-input-method + (read-input-method-name "Input method: " nil t))) + (if (and input-method (symbolp input-method)) + (setq input-method (symbol-name input-method))) + (let ((current-input-method input-method)) + ;; FSFmacs + ;; (read-string prompt initial-input nil nil t))) + (read-string prompt initial-input nil))) + +;; Variables to control behavior of input methods. All input methods +;; should react to these variables. + +(defcustom input-method-verbose-flag t + "*If this flag is non-nil, input methods give extra guidance. + +The extra guidance is done by showing list of available keys in echo +area. + +For complex input methods such as `chinese-py' and `japanese', +when you use the input method in the minibuffer, the guidance is +shown at the bottom short window (split from the existing window). +For simple input methods, guidance is not shown +when you are in the minibuffer." + :type 'boolean + :group 'mule) + +(defcustom input-method-highlight-flag t + "*If this flag is non-nil, input methods highlight partially-entered text. +For instance, while you are in the middle of a Quail input method sequence, +the text inserted so far is temporarily underlined. +The underlining goes away when you finish or abort the input method sequence." + :type 'boolean + :group 'mule) + +(defvar input-method-activate-hook nil + "Normal hook run just after an input method is activated. + +The variable `current-input-method' keeps the input method name +just activated.") + +(defvar input-method-inactivate-hook nil + "Normal hook run just after an input method is inactivated. + +The variable `current-input-method' still keeps the input method name +just inacitvated.") + +(defvar input-method-after-insert-chunk-hook nil + "Normal hook run just after an input method insert some chunk of text.") + +(defvar input-method-exit-on-invalid-key nil + "This flag controls the behaviour of an input method on invalid key input. +Usually, when a user types a key which doesn't start any character +handled by the input method, the key is handled by turning off the +input method temporalily. After the key is handled, the input method is +back on. +But, if this flag is non-nil, the input method is never back on.") + + +(defun setup-specified-language-environment () + "Set up multi-lingual environment convenient for the specified language." + (interactive) + (let (language-name) + (if (and (symbolp last-command-event) + (or (not (eq last-command-event 'Default)) + (setq last-command-event 'English)) + (setq language-name (symbol-name last-command-event))) + (set-language-environment language-name) + (error "Bogus calling sequence")))) + +(defvar current-language-environment "English" + "The last language environment specified with `set-language-environment'.") + +(defun set-language-environment (language-name) + "Set up multi-lingual environment for using LANGUAGE-NAME. +This sets the coding system priority and the default input method +and sometimes other things." + (interactive (list (read-language-name 'setup-function + "Set language environment: "))) + (if language-name + (if (symbolp language-name) + (setq language-name (symbol-name language-name))) + (setq language-name "English")) + (if (null (get-language-info language-name 'setup-function)) + (error "Language environment not defined: %S" language-name)) + (funcall (get-language-info language-name 'setup-function)) + (setq current-language-environment language-name) + (force-mode-line-update t)) + +;; Print all arguments with `princ', then print "\n". +(defsubst princ-list (&rest args) + (while args (princ (car args)) (setq args (cdr args))) + (princ "\n")) + +;; Print a language specific information such as input methods, +;; charsets, and coding systems. This function is intended to be +;; called from the menu: +;; [menu-bar mule describe-language-environment LANGUAGE] +;; and should not run it by `M-x describe-current-input-method-function'. +(defun describe-specified-language-support () + "Describe how Emacs supports the specified language environment." + (interactive) + (let (language-name) + (if (not (and (symbolp last-command-event) + (setq language-name (symbol-name last-command-event)))) + (error "Bogus calling sequence")) + (describe-language-environment language-name))) + +(defun describe-language-environment (language-name) + "Describe how Emacs supports language environment LANGUAGE-NAME." + (interactive + (list (read-language-name + 'documentation + "Describe language environment (default, current choise): "))) + (if (null language-name) + (setq language-name current-language-environment)) + (if (or (null language-name) + (null (get-language-info language-name 'documentation))) + (error "No documentation for the specified language")) + (if (symbolp language-name) + (setq language-name (symbol-name language-name))) + (let ((doc (get-language-info language-name 'documentation))) + (with-output-to-temp-buffer "*Help*" + (if (stringp doc) + (progn + (princ-list doc) + (terpri))) + (let ((str (get-language-info language-name 'sample-text))) + (if (stringp str) + (progn + (princ "Sample text:\n") + (princ-list " " str) + (terpri)))) + (princ "Input methods:\n") + (let ((l input-method-alist)) + (while l + (if (string= language-name (nth 1 (car l))) + (princ-list " " (car (car l)) + (format " (`%s' in mode line)" (nth 3 (car l))))) + (setq l (cdr l)))) + (terpri) + (princ "Character sets:\n") + (let ((l (get-language-info language-name 'charset))) + (if (null l) + (princ-list " nothing specific to " language-name) + (while l + (princ-list " " (car l) ": " + (charset-description (car l))) + (setq l (cdr l))))) + (terpri) + (princ "Coding systems:\n") + (let ((l (get-language-info language-name 'coding-system))) + (if (null l) + (princ-list " nothing specific to " language-name) + (while l + (princ ; (format " %s (`%c' in mode line):\n\t%s\n" + ;; In XEmacs, `coding-system-mnemonic' returns string. + (format " %s (`%s' in mode line):\n\t%s\n" + (car l) + (coding-system-mnemonic (car l)) + (coding-system-doc-string (car l)))) + (setq l (cdr l)))))))) + +;;; Charset property + +;; (defsubst get-charset-property (charset propname) +;; "Return the value of CHARSET's PROPNAME property. +;; This is the last value stored with +;; `(put-charset-property CHARSET PROPNAME VALUE)'." +;; (plist-get (charset-plist charset) propname)) + +;; (defsubst put-charset-property (charset propname value) +;; "Store CHARSETS's PROPNAME property with value VALUE. +;; It can be retrieved with `(get-charset-property CHARSET PROPNAME)'." +;; (set-charset-plist charset +;; (plist-put (charset-plist charset) propname value))) + +(defvar char-code-property-table + (make-char-table 'generic) + "Char-table containing a property list of each character code. +;; +See also the documentation of `get-char-code-property' and +`put-char-code-property'") +;; (let ((plist (aref char-code-property-table char))) +(defun get-char-code-property (char propname) + "Return the value of CHAR's PROPNAME property in `char-code-property-table'." + (let ((plist (get-char-table char char-code-property-table))) + (if (listp plist) + (car (cdr (memq propname plist)))))) + +(defun put-char-code-property (char propname value) + "Store CHAR's PROPNAME property with VALUE in `char-code-property-table'. +It can be retrieved with `(get-char-code-property CHAR PROPNAME)'." + (let ((plist (get-char-table char char-code-property-table))) + (if plist + (let ((slot (memq propname plist))) + (if slot + (setcar (cdr slot) value) + (nconc plist (list propname value)))) + (put-char-table char (list propname value) char-code-property-table) + ))) +;; (setcar (cdr slot) value) +;; (nconc plist (list propname value)))) +;; (aset char-code-property-table char (list propname value))))) + +;;; mule-cmds.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-coding.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,188 @@ +;;; mule-coding.el --- Coding-system functions for Mule. + +;; Copyright (C) 1995 Electrotechnical Laboratory, JAPAN. +;; Licensed to the Free Software Foundation. +;; Copyright (C) 1995 Amdahl Corporation. +;; Copyright (C) 1995 Sun Microsystems. +;; Copyright (C) 1997 MORIOKA Tomohiko + +;; 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: + +;;; split off of mule.el and mostly moved to coding.el + +;;; Code: + +(defun coding-system-force-on-output (coding-system register) + "Return the 'force-on-output property of CODING-SYSTEM for the specified REGISTER." + (unless (integerp register) + (signal 'wrong-type-argument (list 'integerp register))) + (coding-system-property + coding-system + (case register + (0 'force-g0-on-output) + (1 'force-g1-on-output) + (2 'force-g2-on-output) + (3 'force-g3-on-output) + (t (signal 'args-out-of-range (list register 0 3)))))) + +(defun coding-system-short (coding-system) + "Return the 'short property of CODING-SYSTEM." + (coding-system-property coding-system 'short)) + +(defun coding-system-no-ascii-eol (coding-system) + "Return the 'no-ascii-eol property of CODING-SYSTEM." + (coding-system-property coding-system 'no-ascii-eol)) + +(defun coding-system-no-ascii-cntl (coding-system) + "Return the 'no-ascii-cntl property of CODING-SYSTEM." + (coding-system-property coding-system 'no-ascii-cntl)) + +(defun coding-system-seven (coding-system) + "Return the 'seven property of CODING-SYSTEM." + (coding-system-property coding-system 'seven)) + +(defun coding-system-lock-shift (coding-system) + "Return the 'lock-shift property of CODING-SYSTEM." + (coding-system-property coding-system 'lock-shift)) + +;;(defun coding-system-use-japanese-jisx0201-roman (coding-system) +;; "Return the 'use-japanese-jisx0201-roman property of CODING-SYSTEM." +;; (coding-system-property coding-system 'use-japanese-jisx0201-roman)) + +;;(defun coding-system-use-japanese-jisx0208-1978 (coding-system) +;; "Return the 'use-japanese-jisx0208-1978 property of CODING-SYSTEM." +;; (coding-system-property coding-system 'use-japanese-jisx0208-2978)) + +(defun coding-system-no-iso6429 (coding-system) + "Return the 'no-iso6429 property of CODING-SYSTEM." + (coding-system-property coding-system 'no-iso6429)) + +(defun coding-system-ccl-encode (coding-system) + "Return the CCL 'encode property of CODING-SYSTEM." + (coding-system-property coding-system 'encode)) + +(defun coding-system-ccl-decode (coding-system) + "Return the CCL 'decode property of CODING-SYSTEM." + (coding-system-property coding-system 'decode)) + + +;;;; Definitions of predefined coding systems + +(make-coding-system + 'ctext 'iso2022 + "Coding-system used in X as Compound Text Encoding." + '(charset-g0 ascii + charset-g1 latin-iso8859-1 + eol-type nil + mnemonic "CText")) + +;;; iso-8859-1 and ctext are aliases. + +;; (copy-coding-system 'ctext 'iso-8859-1) +(make-coding-system + 'iso-8859-1 'no-conversion + "Coding-system used in X as Compound Text Encoding." + '(eol-type nil mnemonic "Noconv")) + +(make-coding-system + 'iso-2022-8bit-ss2 'iso2022 + "ISO-2022 coding system using SS2 for 96-charset in 8-bit code." + '(charset-g0 ascii + charset-g1 latin-iso8859-1 + charset-g2 t ;; unspecified but can be used later. + short t + mnemonic "ISO8/SS" + )) + +(make-coding-system + 'iso-2022-7bit-ss2 'iso2022 + "ISO-2022 coding system using SS2 for 96-charset in 7-bit code." + '(charset-g0 ascii + charset-g2 t ;; unspecified but can be used later. + seven t + short t + mnemonic "ISO7/SS" + eol-type nil)) + +;; (copy-coding-system 'iso-2022-7bit-ss2 'iso-2022-jp-2) +(make-coding-system + 'iso-2022-jp-2 'iso2022 + "ISO-2022 coding system using SS2 for 96-charset in 7-bit code." + '(charset-g0 ascii + charset-g2 t ;; unspecified but can be used later. + seven t + short t + mnemonic "ISO7/SS" + eol-type nil)) + +(make-coding-system + 'iso-2022-7bit 'iso2022 + "ISO 2022 based 7-bit encoding using only G0" + '(charset-g0 ascii + seven t + short t + mnemonic "ISO7")) + +;; compatibility for old XEmacsen +(copy-coding-system 'iso-2022-7bit 'iso-2022-7) + +(make-coding-system + 'iso-2022-8 'iso2022 + "ISO-2022 eight-bit coding system. No single-shift or locking-shift." + '(charset-g0 ascii + charset-g1 latin-iso8859-1 + short t + mnemonic "ISO8" + )) + +(make-coding-system + 'escape-quoted 'iso2022 + "ISO-2022 eight-bit coding system with escape quoting; used for .ELC files." + '(charset-g0 ascii + charset-g1 latin-iso8859-1 + eol-type lf + escape-quoted t + mnemonic "ESC/Quot" + )) + +(make-coding-system + 'iso-2022-lock 'iso2022 + "ISO-2022 coding system using Locking-Shift for 96-charset." + '(charset-g0 ascii + charset-g1 t ;; unspecified but can be used later. + seven t + lock-shift t + mnemonic "ISO7/Lock" + )) + +;; initialize the coding categories to something semi-reasonable +;; so that the remaining Lisp files can contain extended characters. +;; (They will be in ISO-7 format) + +(set-coding-priority-list '(iso-8-2 iso-8-designate iso-8-1 + iso-7 iso-lock-shift no-conversion)) + +(set-coding-category-system 'iso-7 'iso-2022-7) +(set-coding-category-system 'iso-8-designate 'ctext) +(set-coding-category-system 'iso-8-1 'ctext) +(set-coding-category-system 'iso-lock-shift 'iso-2022-lock) +(set-coding-category-system 'no-conversion 'no-conversion) + +;;; mule-coding.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-files.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,35 @@ +;;; mule-files.el --- File I/O functions for XEmacs/Mule. + +;; 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: + +;;; Derived from mule.el in the original Mule but heavily modified +;;; by Ben Wing. Mostly moved to code-files.el + +;; 1997/3/11 modified by MORIOKA Tomohiko to sync with Emacs 20 API. + +;;; Code: + +(setq-default buffer-file-coding-system 'iso-2022-8) + +;;; mule-files.el ends here
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-help.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,86 @@ +;;; mule-help.el --- Mule-ized Help functions + +;; Copyright (C) 1997 by Free Software Foundation, Inc. + +;; Author: SL Baur <steve@altair.xemacs.org> +;; 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 <<nya nya nya>>, 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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-init.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-misc.el Mon Aug 13 11:10:50 2007 +0200 @@ -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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-tty-init.el Mon Aug 13 11:10:50 2007 +0200 @@ -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 <kazz@imasy.or.jp> + +;; Author: Kazuyuki IENAGA <kazz@imasy.or.jp> +;; 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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/mule-x-init.el Mon Aug 13 11:10:50 2007 +0200 @@ -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 <wing@666.com> + +;; 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)))
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/mule/viet-chars.el Mon Aug 13 11:10:50 2007 +0200 @@ -0,0 +1,57 @@ +;;; vietnamese-chars.el --- pre-loaded support for Vietnamese, part 1. + +;; 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. + +;;; Synched up with: Mule 2.3. + +;; We have to split up the Vietnamese stuff into two files because +;; we are registering new charsets and then immediately using characters +;; from those sets. We cannot reliably expect this to work if they +;; are in the same file because of the buffering that happens while +;; reading -- the place where we use the newly-defined sets may be +;; read in before the code that creates those sets is evaluated. + +;; Vietnamese VISCII with two tables. +(make-charset 'vietnamese-viscii-lower "VISCII lower (Vietnamese)" + '(registry "VISCII1.1" + dimension 1 + chars 96 + final ?1 + graphic 1 + )) + +(make-charset 'vietnamese-viscii-upper "VISCII upper (Vietnamese)" + '(registry "VISCII1.1" + dimension 1 + chars 96 + final ?2 + graphic 1 + )) + +(modify-syntax-entry 'vietnamese-viscii-lower "w") +(modify-syntax-entry 'vietnamese-viscii-upper "w") + +(define-category ?v "Vietnamese character.") +(modify-category-entry 'vietnamese-viscii-lower ?v) +(modify-category-entry 'vietnamese-viscii-upper ?v) + +;;; vietnamese-chars.el ends here
--- a/lisp/package-admin.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/package-admin.el Mon Aug 13 11:10:50 2007 +0200 @@ -177,7 +177,9 @@ ;; 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)))))))
--- a/lisp/paths.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/paths.el Mon Aug 13 11:10:50 2007 +0200 @@ -129,28 +129,7 @@ (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 @@ 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 @@ ;; 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))
--- a/lisp/process.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/process.el Mon Aug 13 11:10:50 2007 +0200 @@ -337,7 +337,7 @@ process as a string" ;; by "William G. Dubuque" <wgd@zurich.ai.mit.edu> (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)
--- a/lisp/userlock.el Mon Aug 13 11:10:04 2007 +0200 +++ b/lisp/userlock.el Mon Aug 13 11:10:50 2007 +0200 @@ -154,6 +154,9 @@ (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 @@ (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
--- a/lwlib/lwlib.h Mon Aug 13 11:10:04 2007 +0200 +++ b/lwlib/lwlib.h Mon Aug 13 11:10:50 2007 +0200 @@ -1,8 +1,17 @@ #ifndef LWLIB_H #define LWLIB_H +#undef CONST + #include <X11/Intrinsic.h> +/* 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
--- a/man/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/man/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,7 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/nt/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/nt/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,7 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/src/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/src/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,35 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + +1999-02-25 SL Baur <steve@xemacs.org> + + * 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 <ienaga@jsys.co.jp> + +1999-02-17 Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp> + + * glyphs-x.c (cononvert_EImage_to_XImage): correct + bytes per pixel counting. + +1999-02-15 Andy Piper <andy@xemacs.org> + + * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes + major lockups. + +1999-02-16 Martin Buchholz <martin@xemacs.org> + + * gdbinit: Fix up commands to run temacs. Add lisp-shadows command. + * alloc.c (xcalloc): undef xcalloc, just like xmalloc + +1999-02-10 Martin Buchholz <martin@xemacs.org> + + * 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 <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/src/alloc.c Mon Aug 13 11:10:04 2007 +0200 +++ b/src/alloc.c Mon Aug 13 11:10:50 2007 +0200 @@ -382,6 +382,10 @@ return val; } +#ifdef xcalloc +#undef xcalloc +#endif + static void * xcalloc (size_t nelem, size_t elsize) {
--- a/src/console-tty.h Mon Aug 13 11:10:04 2007 +0200 +++ b/src/console-tty.h Mon Aug 13 11:10:50 2007 +0200 @@ -293,5 +293,6 @@ 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_ */
--- a/src/event-msw.c Mon Aug 13 11:10:04 2007 +0200 +++ b/src/event-msw.c Mon Aug 13 11:10:50 2007 +0200 @@ -65,6 +65,7 @@ #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 @@ /* 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 @@ 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_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_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 @@ 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
--- a/src/event-stream.c Mon Aug 13 11:10:04 2007 +0200 +++ b/src/event-stream.c Mon Aug 13 11:10:50 2007 +0200 @@ -5374,8 +5374,7 @@ 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 @@ { /* 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 ();
--- a/src/event-tty.c Mon Aug 13 11:10:04 2007 +0200 +++ b/src/event-tty.c Mon Aug 13 11:10:50 2007 +0200 @@ -94,8 +94,8 @@ 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 @@ 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))
--- a/src/gdbinit Mon Aug 13 11:10:04 2007 +0200 +++ b/src/gdbinit Mon Aug 13 11:10:50 2007 +0200 @@ -122,9 +122,23 @@ end end -define run-temacs +define lisp-shadows + run -batch -vanilla -f list-load-path-shadows +end + +document lisp-shadows +Usage: lisp-shadows +Run xemacs to check for lisp shadows +end + +define environment-to-run-temacs unset env EMACSLOADPATH - set env EMACSBOOTSTRAPLOADPATH ../lisp/:.. + set env EMACSBOOTSTRAPLOADPATH = ../lisp/:.. + set env EMACSBOOTSTRAPMODULEPATH = ../lisp/ +end + +define run-temacs + environment-to-run-temacs run -batch -l ../lisp/loadup.el run-temacs -q end @@ -136,8 +150,7 @@ end define update-elc - unset env EMACSLOADPATH - set env EMACSBOOTSTRAPLOADPATH ../lisp/:.. + environment-to-run-temacs run -batch -l ../lisp/update-elc.el end @@ -149,8 +162,7 @@ end define dump-temacs - unset env EMACSLOADPATH - set env EMACSBOOTSTRAPLOADPATH ../lisp/:.. + environment-to-run-temacs run -batch -l ../lisp/loadup.el dump end
--- a/src/glyphs-x.c Mon Aug 13 11:10:04 2007 +0200 +++ b/src/glyphs-x.c Mon Aug 13 11:10:50 2007 +0200 @@ -124,7 +124,7 @@ 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 @@ 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) {
--- a/src/mule-charset.c Mon Aug 13 11:10:04 2007 +0200 +++ b/src/mule-charset.c Mon Aug 13 11:10:50 2007 +0200 @@ -108,6 +108,7 @@ 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 @@ 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 @@ 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");
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/s/bsdos4.h Mon Aug 13 11:10:50 2007 +0200 @@ -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 */
--- a/src/s/cygwin32.h Mon Aug 13 11:10:04 2007 +0200 +++ b/src/s/cygwin32.h Mon Aug 13 11:10:50 2007 +0200 @@ -127,7 +127,12 @@ #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
--- a/src/xintrinsic.h Mon Aug 13 11:10:04 2007 +0200 +++ b/src/xintrinsic.h Mon Aug 13 11:10:50 2007 +0200 @@ -23,4 +23,8 @@ #include <X11/Intrinsic.h> -#define CONST const +#ifdef CONST_IS_LOSING +# define CONST +#else +# define CONST const +#endif
--- a/tests/ChangeLog Mon Aug 13 11:10:04 2007 +0200 +++ b/tests/ChangeLog Mon Aug 13 11:10:50 2007 +0200 @@ -1,3 +1,7 @@ +1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org> + + * XEmacs 21.2.11 is released + 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org> * XEmacs 21.2.10 is released
--- a/tests/automated/database-tests.el Mon Aug 13 11:10:04 2007 +0200 +++ b/tests/automated/database-tests.el Mon Aug 13 11:10:50 2007 +0200 @@ -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)))))
--- a/version.sh Mon Aug 13 11:10:04 2007 +0200 +++ b/version.sh Mon Aug 13 11:10:50 2007 +0200 @@ -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