XEmacs 21.2.24 "Hecate".
authortomo <tomo>
Thu, 6 Jan 2000 07:28:11 +0000 (07:28 +0000)
committertomo <tomo>
Thu, 6 Jan 2000 07:28:11 +0000 (07:28 +0000)
44 files changed:
CHANGES-beta
ChangeLog
PROBLEMS
configure
configure.in
configure.usage
etc/NEWS
info/xemacs.info
info/xemacs.info-3
lib-src/ChangeLog
lib-src/etags.c
lisp/ChangeLog
lisp/about.el
lisp/font-lock.el
lwlib/ChangeLog
lwlib/lwlib-Xlw.c
lwlib/xlwtabs.c
man/ChangeLog
man/xemacs/startup.texi
nt/ChangeLog
nt/xemacs.mak
src/ChangeLog
src/callproc.c
src/elhash.c
src/events.h
src/faces.h
src/file-coding.c
src/fileio.c
src/input-method-xlib.c
src/lrecord.h
src/nas.c
src/nt.c
src/ntproc.c
src/process-nt.c
src/redisplay.h
src/s/windowsnt.h
src/sound.c
src/sysdep.c
src/sysdep.h
src/sysdir.h
src/sysfile.h
src/systty.h
tests/ChangeLog
version.sh

index 27aac64..6740d26 100644 (file)
@@ -1,5 +1,10 @@
                                                        -*- indented-text -*-
 to 21.2.24 "Hecate"
+-- (coding-system-list) deals properly with coding system aliases, Shenghuo ZHU
+-- configure support for ESD sound rewritte, Martin Buchholz
+-- directory separator fix from Mike Alexander
+-- Windows process support cleanup, Adrian Aichner
+-- NT now encapsulates fstat to get correct file mod time, Adrian Aichner
 
 to 21.2.23 "Hebe"
 -- MS-Windows selection fixes from Mike Alexander
index 993d2ea..fee99c7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-12-13  Martin Buchholz  <martin@xemacs.org>
+
+       * configure.in: 
+       * configure.usage:
+       - Autodetect NAS.  Change Docs accordingly.
+
+       * configure.in: Warn if configure --with-xpm --without-x11.
+
+1999-12-09  Martin Buchholz  <martin@xemacs.org>
+
+       * configure.in: Clean up sound support.
+       - variable `old_nas' was used but never set.
+       - change `with_esd' to `with_esd_sound' for consistency.
+       - Don't trust the output of `esd-config --libs`; test it.
+       - Add `esd-config --cflags` to c_switch_site.
+       - Die if ESD sound requested, but not available.
+       - ESD is not dependent on X, therefore use LIBS, not libs_x.
+
+1999-12-07  Martin Buchholz  <martin@xemacs.org>
+
+       * configure.in (--with-sound): Variable with_esd was mispelled.
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 42225f4..db106ae 100644 (file)
--- a/PROBLEMS
+++ b/PROBLEMS
@@ -41,8 +41,8 @@ crashes in the function skip-syntax-backward.
 There have been reports of egcs-1.1 not compiling XEmacs correctly on
 Alpha Linux.  There have also been reports that egcs-1.0.3a is O.K.
 
-*** Don't use -O2 with gcc 2.7.2 under Intel/XXX without also using
-`-fno-strength-reduce'.
+*** Don't use -O2 or -O3 with Cygwin 1.0, CodeFusion-99070 or gcc 2.7.2 on x86
+without also using `-fno-strength-reduce'.
 
 gcc will generate incorrect code otherwise.  This bug is present in at
 least 2.6.x and 2.7.[0-2].  This bug has been fixed in GCC 2.7.2.1 and
@@ -50,6 +50,25 @@ later.  This bug is O/S independent, but is limited to x86 architectures.
 
 This problem is known to be fixed in egcs (or pgcc) 1.0 or later.
 
+Unfortunately, later releases of Cygnus-released compilers (not the
+Net-released ones) have a bug with the same `problem signature'.
+
+If you're lucky, you'll get an error while compiling that looks like:
+
+event-stream.c:3189: internal error--unrecognizable insn:
+(insn 256 14 15 (set (reg/v:SI 24)
+        (minus:SI (reg/v:SI 25)
+            (const_int 2))) -1 (insn_list 11 (nil))
+    (nil))
+    0       0 [main]
+
+If you're unlucky, your code will simply execute incorrectly.
+
+*** Don't use gcc-2.95.2 with -mcpu=ultrasparc on Solaris 2.6.
+
+gcc will assume a 64-bit operating system, even though you've
+merely told it to assume a 64-bit instruction set.
+
 *** Don't use -O2 with gcc 2.7.2 under Intel architectures without also
 using `-fno-caller-saves'.
 
index 4090984..ee408ed 100755 (executable)
--- a/configure
+++ b/configure
@@ -459,8 +459,8 @@ echo "  Use \`$progname --help' to show usage.") >&2 && exit 1
              nas )          with_nas_sound=yes ;;
              nonas )        with_nas_sound=no ;;
 
-             esd )          with_esd=yes ;;
-             noesd )        with_esh=no ;;
+             esd )          with_esd_sound=yes ;;
+             noesd )        with_esd_sound=no ;;
 
              * ) bogus_sound=yes ;;
            esac
@@ -470,12 +470,12 @@ echo "  Use \`$progname --help' to show usage.") >&2 && exit 1
                (echo "$progname: Usage error:"
 echo " " "Valid types for the \`--$optname' option are:
   $types.
-The default is native,esd."
+The default is to autodetect all sound support."
 echo "  Use \`$progname --help' to show usage.") >&2 && exit 1
            elif test -n "$new_sdefault" ; then
                with_native_sound=$new_sdefault
                with_nas_sound=$new_sdefault
-               with_esd=$new_sdefault
+               with_esd_sound=$new_sdefault
                new_sdefault=   # reset this
            fi
            sound_notfirst=true
@@ -6197,7 +6197,7 @@ else
 fi
 
 if test "$with_x11" != "yes"; then
-            for feature in tooltalk cde offix wmcommand xim xmu
+            for feature in tooltalk cde offix wmcommand xim xmu xpm nas_sound
   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
@@ -8004,12 +8004,6 @@ if test "$with_x11" = "yes"; then
   test "$all_widgets" != "no no no no no" && extra_objs="$extra_objs gui-x.o" &&  if test "$extra_verbose" = "yes"; then
    echo "    xemacs will be linked with \"gui-x.o\""
  fi
-else
-  if test "$with_nas_sound" = "nas"; then
-    echo "Attempt to Build NAS sound without X"
-    echo "Please remove NAS configuration or build with X"
-    exit 1
-  fi
 fi
 
 
@@ -8033,7 +8027,7 @@ fi
 
 if test "$with_mule" = "yes" ; then
   echo "checking for Mule-related features" 1>&6
-echo "configure:8037: checking for Mule-related features" >&5
+echo "configure:8031: checking for Mule-related features" >&5
   { test "$extra_verbose" = "yes" && cat << \EOF
     Defining MULE
 EOF
@@ -8058,15 +8052,15 @@ EOF
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:8062: checking for $ac_hdr" >&5
+echo "configure:8056: checking for $ac_hdr" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 8065 "configure"
+#line 8059 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8070: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8064: \"$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*
@@ -8097,12 +8091,12 @@ done
 
   
 echo $ac_n "checking for strerror in -lintl""... $ac_c" 1>&6
-echo "configure:8101: checking for strerror in -lintl" >&5
+echo "configure:8095: 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 8106 "configure"
+#line 8100 "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
@@ -8113,7 +8107,7 @@ int main() {
 strerror()
 ; return 0; }
 EOF
-if { (eval echo configure:8117: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8111: \"$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
@@ -8146,18 +8140,18 @@ fi
 
 
   echo "checking for Mule input methods" 1>&6
-echo "configure:8150: checking for Mule input methods" >&5
+echo "configure:8144: checking for Mule input methods" >&5
         case "$with_xim" in "" | "yes" )
     echo "checking for XIM" 1>&6
-echo "configure:8153: checking for XIM" >&5
+echo "configure:8147: checking for XIM" >&5
     
 echo $ac_n "checking for XOpenIM in -lX11""... $ac_c" 1>&6
-echo "configure:8156: checking for XOpenIM in -lX11" >&5
+echo "configure:8150: 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 8161 "configure"
+#line 8155 "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
@@ -8168,7 +8162,7 @@ int main() {
 XOpenIM()
 ; return 0; }
 EOF
-if { (eval echo configure:8172: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8166: \"$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
@@ -8192,12 +8186,12 @@ fi
         if test "$have_motif $have_lesstif" = "yes no"; then
       
 echo $ac_n "checking for XmImMbLookupString in -lXm""... $ac_c" 1>&6
-echo "configure:8196: checking for XmImMbLookupString in -lXm" >&5
+echo "configure:8190: 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 8201 "configure"
+#line 8195 "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
@@ -8208,7 +8202,7 @@ int main() {
 XmImMbLookupString()
 ; return 0; }
 EOF
-if { (eval echo configure:8212: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8206: \"$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
@@ -8273,15 +8267,15 @@ EOF
 
     if test "$with_xfs" = "yes" ; then
     echo "checking for XFontSet" 1>&6
-echo "configure:8277: checking for XFontSet" >&5
+echo "configure:8271: checking for XFontSet" >&5
     
 echo $ac_n "checking for XmbDrawString in -lX11""... $ac_c" 1>&6
-echo "configure:8280: checking for XmbDrawString in -lX11" >&5
+echo "configure:8274: 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 8285 "configure"
+#line 8279 "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
@@ -8292,7 +8286,7 @@ int main() {
 XmbDrawString()
 ; return 0; }
 EOF
-if { (eval echo configure:8296: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8290: \"$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
@@ -8332,15 +8326,15 @@ EOF
     test "$with_wnn6" = "yes" && with_wnn=yes # wnn6 implies wnn support
   test -z "$with_wnn" && { ac_safe=`echo "wnn/jllib.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for wnn/jllib.h""... $ac_c" 1>&6
-echo "configure:8336: checking for wnn/jllib.h" >&5
+echo "configure:8330: checking for wnn/jllib.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 8339 "configure"
+#line 8333 "configure"
 #include "confdefs.h"
 #include <wnn/jllib.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8344: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8338: \"$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*
@@ -8365,10 +8359,10 @@ fi
     for ac_func in crypt
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:8369: checking for $ac_func" >&5
+echo "configure:8363: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 8372 "configure"
+#line 8366 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -8391,7 +8385,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:8395: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8389: \"$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
@@ -8420,12 +8414,12 @@ done
 
     test "$ac_cv_func_crypt" != "yes" && { 
 echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6
-echo "configure:8424: checking for crypt in -lcrypt" >&5
+echo "configure:8418: 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 8429 "configure"
+#line 8423 "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
@@ -8436,7 +8430,7 @@ int main() {
 crypt()
 ; return 0; }
 EOF
-if { (eval echo configure:8440: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8434: \"$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
@@ -8471,12 +8465,12 @@ fi
     if test -z "$with_wnn" -o "$with_wnn" = "yes"; then
     
 echo $ac_n "checking for jl_dic_list_e in -lwnn""... $ac_c" 1>&6
-echo "configure:8475: checking for jl_dic_list_e in -lwnn" >&5
+echo "configure:8469: 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 8480 "configure"
+#line 8474 "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
@@ -8487,7 +8481,7 @@ int main() {
 jl_dic_list_e()
 ; return 0; }
 EOF
-if { (eval echo configure:8491: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8485: \"$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
@@ -8505,12 +8499,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for jl_dic_list_e in -lwnn4""... $ac_c" 1>&6
-echo "configure:8509: checking for jl_dic_list_e in -lwnn4" >&5
+echo "configure:8503: 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 8514 "configure"
+#line 8508 "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
@@ -8521,7 +8515,7 @@ int main() {
 jl_dic_list_e()
 ; return 0; }
 EOF
-if { (eval echo configure:8525: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8519: \"$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
@@ -8539,12 +8533,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for jl_dic_list_e in -lwnn6""... $ac_c" 1>&6
-echo "configure:8543: checking for jl_dic_list_e in -lwnn6" >&5
+echo "configure:8537: 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 8548 "configure"
+#line 8542 "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
@@ -8555,7 +8549,7 @@ int main() {
 jl_dic_list_e()
 ; return 0; }
 EOF
-if { (eval echo configure:8559: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8553: \"$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
@@ -8573,12 +8567,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for dic_list_e in -lwnn6_fromsrc""... $ac_c" 1>&6
-echo "configure:8577: checking for dic_list_e in -lwnn6_fromsrc" >&5
+echo "configure:8571: 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 8582 "configure"
+#line 8576 "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
@@ -8589,7 +8583,7 @@ int main() {
 dic_list_e()
 ; return 0; }
 EOF
-if { (eval echo configure:8593: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8587: \"$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
@@ -8637,12 +8631,12 @@ EOF
     if test "$with_wnn6" != "no"; then
       
 echo $ac_n "checking for jl_fi_dic_list in -l$libwnn""... $ac_c" 1>&6
-echo "configure:8641: checking for jl_fi_dic_list in -l$libwnn" >&5
+echo "configure:8635: 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 8646 "configure"
+#line 8640 "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
@@ -8653,7 +8647,7 @@ int main() {
 jl_fi_dic_list()
 ; return 0; }
 EOF
-if { (eval echo configure:8657: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8651: \"$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
@@ -8688,15 +8682,15 @@ EOF
   if test "$with_canna" != "no"; then
     ac_safe=`echo "canna/jrkanji.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for canna/jrkanji.h""... $ac_c" 1>&6
-echo "configure:8692: checking for canna/jrkanji.h" >&5
+echo "configure:8686: checking for canna/jrkanji.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 8695 "configure"
+#line 8689 "configure"
 #include "confdefs.h"
 #include <canna/jrkanji.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8700: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8694: \"$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*
@@ -8723,15 +8717,15 @@ fi
     c_switch_site="$c_switch_site -I/usr/local/canna/include"
     ac_safe=`echo "canna/jrkanji.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for canna/jrkanji.h""... $ac_c" 1>&6
-echo "configure:8727: checking for canna/jrkanji.h" >&5
+echo "configure:8721: checking for canna/jrkanji.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 8730 "configure"
+#line 8724 "configure"
 #include "confdefs.h"
 #include <canna/jrkanji.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8735: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8729: \"$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*
@@ -8759,15 +8753,15 @@ fi
 
   test -z "$with_canna" && { ac_safe=`echo "canna/RK.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for canna/RK.h""... $ac_c" 1>&6
-echo "configure:8763: checking for canna/RK.h" >&5
+echo "configure:8757: checking for canna/RK.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 8766 "configure"
+#line 8760 "configure"
 #include "confdefs.h"
 #include <canna/RK.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8771: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8765: \"$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*
@@ -8790,12 +8784,12 @@ fi
  }
   test -z "$with_canna" && { 
 echo $ac_n "checking for RkBgnBun in -lRKC""... $ac_c" 1>&6
-echo "configure:8794: checking for RkBgnBun in -lRKC" >&5
+echo "configure:8788: 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 8799 "configure"
+#line 8793 "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
@@ -8806,7 +8800,7 @@ int main() {
 RkBgnBun()
 ; return 0; }
 EOF
-if { (eval echo configure:8810: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8804: \"$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
@@ -8829,12 +8823,12 @@ fi
  }
   test -z "$with_canna" && { 
 echo $ac_n "checking for jrKanjiControl in -lcanna""... $ac_c" 1>&6
-echo "configure:8833: checking for jrKanjiControl in -lcanna" >&5
+echo "configure:8827: 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 8838 "configure"
+#line 8832 "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
@@ -8845,7 +8839,7 @@ int main() {
 jrKanjiControl()
 ; return 0; }
 EOF
-if { (eval echo configure:8849: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8843: \"$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
@@ -8894,12 +8888,12 @@ if test "$need_motif" = "yes" ; then
   libs_x="-lXm $libs_x" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-lXm\" to \$libs_x"; fi
     
 echo $ac_n "checking for layout_object_getvalue in -li18n""... $ac_c" 1>&6
-echo "configure:8898: checking for layout_object_getvalue in -li18n" >&5
+echo "configure:8892: 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 8903 "configure"
+#line 8897 "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
@@ -8910,7 +8904,7 @@ int main() {
 layout_object_getvalue()
 ; return 0; }
 EOF
-if { (eval echo configure:8914: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8908: \"$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
@@ -8996,10 +8990,10 @@ fi
 for ac_func in cbrt closedir dup2 eaccess fmod fpathconf frexp ftime gethostname getpagesize gettimeofday getcwd getpt getwd logb lrand48 matherr mkdir mktime perror poll random rename res_init rint rmdir select setitimer setpgid setlocale setsid sigblock sighold sigprocmask snprintf stpcpy strcasecmp strerror tzset ulimit usleep utimes waitpid vsnprintf
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9000: checking for $ac_func" >&5
+echo "configure:8994: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9003 "configure"
+#line 8997 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9022,7 +9016,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9026: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9020: \"$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
@@ -9063,10 +9057,10 @@ case "$opsys" in
       * ) for ac_func in realpath
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9067: checking for $ac_func" >&5
+echo "configure:9061: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9070 "configure"
+#line 9064 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9089,7 +9083,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9093: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9087: \"$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
@@ -9125,10 +9119,10 @@ esac
 for ac_func in getloadavg
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9129: checking for $ac_func" >&5
+echo "configure:9123: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9132 "configure"
+#line 9126 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9151,7 +9145,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9155: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9149: \"$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
@@ -9187,12 +9181,12 @@ then
 
     
 echo $ac_n "checking for kstat_open in -lkstat""... $ac_c" 1>&6
-echo "configure:9191: checking for kstat_open in -lkstat" >&5
+echo "configure:9185: 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 9196 "configure"
+#line 9190 "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
@@ -9203,7 +9197,7 @@ int main() {
 kstat_open()
 ; return 0; }
 EOF
-if { (eval echo configure:9207: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9201: \"$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
@@ -9237,12 +9231,12 @@ fi
 
     
 echo $ac_n "checking for kvm_read in -lkvm""... $ac_c" 1>&6
-echo "configure:9241: checking for kvm_read in -lkvm" >&5
+echo "configure:9235: 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 9246 "configure"
+#line 9240 "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
@@ -9253,7 +9247,7 @@ int main() {
 kvm_read()
 ; return 0; }
 EOF
-if { (eval echo configure:9257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9251: \"$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
@@ -9287,16 +9281,16 @@ fi
 fi
 
 echo $ac_n "checking whether netdb declares h_errno""... $ac_c" 1>&6
-echo "configure:9291: checking whether netdb declares h_errno" >&5
+echo "configure:9285: checking whether netdb declares h_errno" >&5
 cat > conftest.$ac_ext <<EOF
-#line 9293 "configure"
+#line 9287 "configure"
 #include "confdefs.h"
 #include <netdb.h>
 int main() {
 return h_errno;
 ; return 0; }
 EOF
-if { (eval echo configure:9300: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9294: \"$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
@@ -9316,16 +9310,16 @@ fi
 rm -f conftest*
 
 echo $ac_n "checking for sigsetjmp""... $ac_c" 1>&6
-echo "configure:9320: checking for sigsetjmp" >&5
+echo "configure:9314: checking for sigsetjmp" >&5
 cat > conftest.$ac_ext <<EOF
-#line 9322 "configure"
+#line 9316 "configure"
 #include "confdefs.h"
 #include <setjmp.h>
 int main() {
 sigjmp_buf bar; sigsetjmp (bar, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:9329: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9323: \"$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
@@ -9345,11 +9339,11 @@ fi
 rm -f conftest*
 
 echo $ac_n "checking whether localtime caches TZ""... $ac_c" 1>&6
-echo "configure:9349: checking whether localtime caches TZ" >&5
+echo "configure:9343: checking whether localtime caches TZ" >&5
 
 if test "$ac_cv_func_tzset" = "yes"; then
 cat > conftest.$ac_ext <<EOF
-#line 9353 "configure"
+#line 9347 "configure"
 #include "confdefs.h"
 #include <time.h>
 #if STDC_HEADERS
@@ -9384,7 +9378,7 @@ main()
   exit (0);
 }
 EOF
-if { (eval echo configure:9388: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:9382: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   emacs_cv_localtime_cache=no
 else
@@ -9414,9 +9408,9 @@ fi
 
 if test "$HAVE_TIMEVAL" = "yes"; then
 echo $ac_n "checking whether gettimeofday accepts one or two arguments""... $ac_c" 1>&6
-echo "configure:9418: checking whether gettimeofday accepts one or two arguments" >&5
+echo "configure:9412: checking whether gettimeofday accepts one or two arguments" >&5
 cat > conftest.$ac_ext <<EOF
-#line 9420 "configure"
+#line 9414 "configure"
 #include "confdefs.h"
 
 #ifdef TIME_WITH_SYS_TIME
@@ -9438,7 +9432,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9442: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9436: \"$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
@@ -9460,19 +9454,19 @@ fi
 
 
 echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:9464: checking for inline" >&5
+echo "configure:9458: checking for inline" >&5
 
 ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat > conftest.$ac_ext <<EOF
-#line 9469 "configure"
+#line 9463 "configure"
 #include "confdefs.h"
 
 int main() {
 } $ac_kw foo() {
 ; return 0; }
 EOF
-if { (eval echo configure:9476: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9470: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_inline=$ac_kw; break
 else
@@ -9522,17 +9516,17 @@ fi
 # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:9526: checking for working alloca.h" >&5
+echo "configure:9520: checking for working alloca.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9529 "configure"
+#line 9523 "configure"
 #include "confdefs.h"
 #include <alloca.h>
 int main() {
 char *p = alloca(2 * sizeof(int));
 ; return 0; }
 EOF
-if { (eval echo configure:9536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9530: \"$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
@@ -9556,10 +9550,10 @@ EOF
 fi
 
 echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:9560: checking for alloca" >&5
+echo "configure:9554: checking for alloca" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9563 "configure"
+#line 9557 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -9587,7 +9581,7 @@ int main() {
 char *p = (char *) alloca(1);
 ; return 0; }
 EOF
-if { (eval echo configure:9591: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9585: \"$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
@@ -9626,10 +9620,10 @@ EOF
 
 
 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:9630: checking whether alloca needs Cray hooks" >&5
+echo "configure:9624: checking whether alloca needs Cray hooks" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9633 "configure"
+#line 9627 "configure"
 #include "confdefs.h"
 #if defined(CRAY) && ! defined(CRAY2)
 webecray
@@ -9653,10 +9647,10 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
 if test $ac_cv_os_cray = yes; then
 for ac_func in _getb67 GETB67 getb67; do
   echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9657: checking for $ac_func" >&5
+echo "configure:9651: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9660 "configure"
+#line 9654 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9679,7 +9673,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9683: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9677: \"$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
@@ -9709,10 +9703,10 @@ done
 fi
 
 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:9713: checking stack direction for C alloca" >&5
+echo "configure:9707: checking stack direction for C alloca" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9716 "configure"
+#line 9710 "configure"
 #include "confdefs.h"
 find_stack_direction ()
 {
@@ -9731,7 +9725,7 @@ main ()
   exit (find_stack_direction() < 0);
 }
 EOF
-if { (eval echo configure:9735: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:9729: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   ac_cv_c_stack_direction=1
 else
@@ -9760,15 +9754,15 @@ test -n "$ALLOCA" && extra_objs="$extra_objs $ALLOCA" &&  if test "$extra_verbos
 
 ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
-echo "configure:9764: checking for vfork.h" >&5
+echo "configure:9758: checking for vfork.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9767 "configure"
+#line 9761 "configure"
 #include "confdefs.h"
 #include <vfork.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:9772: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:9766: \"$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*
@@ -9796,10 +9790,10 @@ else
 fi
 
 echo $ac_n "checking for working vfork""... $ac_c" 1>&6
-echo "configure:9800: checking for working vfork" >&5
+echo "configure:9794: checking for working vfork" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9803 "configure"
+#line 9797 "configure"
 #include "confdefs.h"
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
@@ -9894,7 +9888,7 @@ main() {
   }
 }
 EOF
-if { (eval echo configure:9898: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:9892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   ac_cv_func_vfork_works=yes
 else
@@ -9920,10 +9914,10 @@ fi
 
 
 echo $ac_n "checking for working strcoll""... $ac_c" 1>&6
-echo "configure:9924: checking for working strcoll" >&5
+echo "configure:9918: checking for working strcoll" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9927 "configure"
+#line 9921 "configure"
 #include "confdefs.h"
 #include <string.h>
 main ()
@@ -9933,7 +9927,7 @@ main ()
        strcoll ("123", "456") >= 0);
 }
 EOF
-if { (eval echo configure:9937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:9931: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   ac_cv_func_strcoll_works=yes
 else
@@ -9961,10 +9955,10 @@ fi
 for ac_func in getpgrp
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9965: checking for $ac_func" >&5
+echo "configure:9959: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 9968 "configure"
+#line 9962 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9987,7 +9981,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9991: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9985: \"$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
 done
 
 echo $ac_n "checking whether getpgrp takes no argument""... $ac_c" 1>&6
-echo "configure:10019: checking whether getpgrp takes no argument" >&5
+echo "configure:10013: checking whether getpgrp takes no argument" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10022 "configure"
+#line 10016 "configure"
 #include "confdefs.h"
 
 /*
@@ -10073,7 +10067,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:10077: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:10071: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   ac_cv_func_getpgrp_void=yes
 else
 
 
 echo $ac_n "checking for working mmap""... $ac_c" 1>&6
-echo "configure:10104: checking for working mmap" >&5
+echo "configure:10098: checking for working mmap" >&5
 case "$opsys" in ultrix* ) have_mmap=no ;; *)
 cat > conftest.$ac_ext <<EOF
-#line 10107 "configure"
+#line 10101 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 #include <unistd.h>
@@ -10136,7 +10130,7 @@ int main (int argc, char *argv[])
   return 1;
 }
 EOF
-if { (eval echo configure:10140: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:10134: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   have_mmap=yes
 else
@@ -10171,15 +10165,15 @@ EOF
 
 ac_safe=`echo "termios.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for termios.h""... $ac_c" 1>&6
-echo "configure:10175: checking for termios.h" >&5
+echo "configure:10169: checking for termios.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10178 "configure"
+#line 10172 "configure"
 #include "confdefs.h"
 #include <termios.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10183: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10177: \"$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*
@@ -10222,15 +10216,15 @@ else
   echo "$ac_t""no" 1>&6
 ac_safe=`echo "termio.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for termio.h""... $ac_c" 1>&6
-echo "configure:10226: checking for termio.h" >&5
+echo "configure:10220: checking for termio.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10229 "configure"
+#line 10223 "configure"
 #include "confdefs.h"
 #include <termio.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10234: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10228: \"$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*
 
 
 echo $ac_n "checking for socket""... $ac_c" 1>&6
-echo "configure:10266: checking for socket" >&5
+echo "configure:10260: checking for socket" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10269 "configure"
+#line 10263 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char socket(); below.  */
@@ -10288,7 +10282,7 @@ socket();
 
 ; return 0; }
 EOF
-if { (eval echo configure:10292: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10286: \"$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
@@ -10303,15 +10297,15 @@ if eval "test \"`echo '$ac_cv_func_'socket`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   ac_safe=`echo "netinet/in.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for netinet/in.h""... $ac_c" 1>&6
-echo "configure:10307: checking for netinet/in.h" >&5
+echo "configure:10301: checking for netinet/in.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10310 "configure"
+#line 10304 "configure"
 #include "confdefs.h"
 #include <netinet/in.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10315: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10309: \"$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*
@@ -10328,15 +10322,15 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   ac_safe=`echo "arpa/inet.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for arpa/inet.h""... $ac_c" 1>&6
-echo "configure:10332: checking for arpa/inet.h" >&5
+echo "configure:10326: checking for arpa/inet.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10335 "configure"
+#line 10329 "configure"
 #include "confdefs.h"
 #include <arpa/inet.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10340: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10334: \"$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*
@@ -10361,9 +10355,9 @@ EOF
 }
 
       echo $ac_n "checking "for sun_len member in struct sockaddr_un"""... $ac_c" 1>&6
-echo "configure:10365: checking "for sun_len member in struct sockaddr_un"" >&5
+echo "configure:10359: checking "for sun_len member in struct sockaddr_un"" >&5
       cat > conftest.$ac_ext <<EOF
-#line 10367 "configure"
+#line 10361 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10374,7 +10368,7 @@ int main() {
 static struct sockaddr_un x; x.sun_len = 1;
 ; return 0; }
 EOF
-if { (eval echo configure:10378: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10372: \"$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
@@ -10392,9 +10386,9 @@ else
 fi
 rm -f conftest*
       echo $ac_n "checking "for ip_mreq struct in netinet/in.h"""... $ac_c" 1>&6
-echo "configure:10396: checking "for ip_mreq struct in netinet/in.h"" >&5
+echo "configure:10390: checking "for ip_mreq struct in netinet/in.h"" >&5
       cat > conftest.$ac_ext <<EOF
-#line 10398 "configure"
+#line 10392 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10404,7 +10398,7 @@ int main() {
 static struct ip_mreq x;
 ; return 0; }
 EOF
-if { (eval echo configure:10408: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10402: \"$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
 
 
 echo $ac_n "checking for msgget""... $ac_c" 1>&6
-echo "configure:10439: checking for msgget" >&5
+echo "configure:10433: checking for msgget" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10442 "configure"
+#line 10436 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char msgget(); below.  */
@@ -10461,7 +10455,7 @@ msgget();
 
 ; return 0; }
 EOF
-if { (eval echo configure:10465: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10459: \"$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
@@ -10476,15 +10470,15 @@ if eval "test \"`echo '$ac_cv_func_'msgget`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   ac_safe=`echo "sys/ipc.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/ipc.h""... $ac_c" 1>&6
-echo "configure:10480: checking for sys/ipc.h" >&5
+echo "configure:10474: checking for sys/ipc.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10483 "configure"
+#line 10477 "configure"
 #include "confdefs.h"
 #include <sys/ipc.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10488: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10482: \"$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*
@@ -10501,15 +10495,15 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   ac_safe=`echo "sys/msg.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/msg.h""... $ac_c" 1>&6
-echo "configure:10505: checking for sys/msg.h" >&5
+echo "configure:10499: checking for sys/msg.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10508 "configure"
+#line 10502 "configure"
 #include "confdefs.h"
 #include <sys/msg.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10513: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10507: \"$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_safe=`echo "dirent.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for dirent.h""... $ac_c" 1>&6
-echo "configure:10551: checking for dirent.h" >&5
+echo "configure:10545: checking for dirent.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10554 "configure"
+#line 10548 "configure"
 #include "confdefs.h"
 #include <dirent.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10559: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10553: \"$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*
@@ -10582,15 +10576,15 @@ else
   echo "$ac_t""no" 1>&6
 ac_safe=`echo "sys/dir.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/dir.h""... $ac_c" 1>&6
-echo "configure:10586: checking for sys/dir.h" >&5
+echo "configure:10580: checking for sys/dir.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10589 "configure"
+#line 10583 "configure"
 #include "confdefs.h"
 #include <sys/dir.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10594: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10588: \"$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_safe=`echo "nlist.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for nlist.h""... $ac_c" 1>&6
-echo "configure:10627: checking for nlist.h" >&5
+echo "configure:10621: checking for nlist.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10630 "configure"
+#line 10624 "configure"
 #include "confdefs.h"
 #include <nlist.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10635: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10629: \"$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*
 
 
 echo "checking "for sound support"" 1>&6
-echo "configure:10665: checking "for sound support"" >&5
+echo "configure:10659: checking "for sound support"" >&5
 test -z "$with_native_sound" -a -n "$native_sound_lib" && with_native_sound=yes
 
 if test "$with_native_sound" != "no"; then
     if test -n "$native_sound_lib"; then
     ac_safe=`echo "multimedia/audio_device.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for multimedia/audio_device.h""... $ac_c" 1>&6
-echo "configure:10672: checking for multimedia/audio_device.h" >&5
+echo "configure:10666: checking for multimedia/audio_device.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10675 "configure"
+#line 10669 "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:10680: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10674: \"$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*
       if test -z "$native_sound_lib"; then
         
 echo $ac_n "checking for ALopenport in -laudio""... $ac_c" 1>&6
-echo "configure:10728: checking for ALopenport in -laudio" >&5
+echo "configure:10722: 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 10733 "configure"
+#line 10727 "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
@@ -10740,7 +10734,7 @@ int main() {
 ALopenport()
 ; return 0; }
 EOF
-if { (eval echo configure:10744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10738: \"$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
       if test -z "$native_sound_lib"; then
        
 echo $ac_n "checking for AOpenAudio in -lAlib""... $ac_c" 1>&6
-echo "configure:10775: checking for AOpenAudio in -lAlib" >&5
+echo "configure:10769: 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 10780 "configure"
+#line 10774 "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
@@ -10787,7 +10781,7 @@ int main() {
 AOpenAudio()
 ; return 0; }
 EOF
-if { (eval echo configure:10791: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10785: \"$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
     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:10829: checking for ${dir}/soundcard.h" >&5
+echo "configure:10823: checking for ${dir}/soundcard.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 10832 "configure"
+#line 10826 "configure"
 #include "confdefs.h"
 #include <${dir}/soundcard.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10837: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10831: \"$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*
@@ -10884,8 +10878,78 @@ EOF
   test -n "$native_sound_lib" && LIBS="$native_sound_lib $LIBS" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"$native_sound_lib\" to \$LIBS"; fi
 fi
 
-if test "$with_nas_sound" = "yes"; then
-  { test "$extra_verbose" = "yes" && cat << \EOF
+if test "$with_nas_sound" != "no"; then
+  ac_safe=`echo "audio/audiolib.h" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for audio/audiolib.h""... $ac_c" 1>&6
+echo "configure:10885: checking for audio/audiolib.h" >&5
+
+cat > conftest.$ac_ext <<EOF
+#line 10888 "configure"
+#include "confdefs.h"
+#include <audio/audiolib.h>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:10893: \"$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"
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  
+    
+echo $ac_n "checking for AuOpenServer in -laudio""... $ac_c" 1>&6
+echo "configure:10911: checking for AuOpenServer in -laudio" >&5
+ac_lib_var=`echo audio'_'AuOpenServer | sed 'y%./+-%__p_%'`
+
+xe_check_libs=" -laudio "
+cat > conftest.$ac_ext <<EOF
+#line 10916 "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 AuOpenServer();
+
+int main() {
+AuOpenServer()
+; return 0; }
+EOF
+if { (eval echo configure:10927: \"$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
+  have_nas_sound=yes
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+  if test "$have_nas_sound" = "yes"; then
+    with_nas_sound=yes
+    { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_NAS_SOUND
 EOF
 cat >> confdefs.h <<\EOF
@@ -10893,12 +10957,12 @@ cat >> confdefs.h <<\EOF
 EOF
 }
 
-  extra_objs="$extra_objs nas.o" &&  if test "$extra_verbose" = "yes"; then
+    extra_objs="$extra_objs nas.o" &&  if test "$extra_verbose" = "yes"; then
    echo "    xemacs will be linked with \"nas.o\""
  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 10902 "configure"
+    libs_x="-laudio $libs_x" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"-laudio\" to \$libs_x"; fi
+            cat > conftest.$ac_ext <<EOF
+#line 10966 "configure"
 #include "confdefs.h"
 #include <audio/Xtutil.h>
 EOF
@@ -10907,7 +10971,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   :
 else
   rm -rf conftest*
-  { test "$extra_verbose" = "yes" && cat << \EOF
+  old_nas=yes; { test "$extra_verbose" = "yes" && cat << \EOF
     Defining NAS_NO_ERROR_JUMP
 EOF
 cat >> confdefs.h <<\EOF
@@ -10918,12 +10982,18 @@ EOF
 fi
 rm -f conftest*
 
+  else
+    test "$with_nas_sound" = "yes" && \
+      { echo "Error:" "Required NAS sound support cannot be provided." >&2; exit 1; }
+    with_nas_sound=no
+  fi
 fi
 
-# Extract the first word of "esd-config", so it can be a program name with args.
+if test "$with_esd_sound" != "no"; then
+  # Extract the first word of "esd-config", so it can be a program name with args.
 set dummy esd-config; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:10927: checking for $ac_word" >&5
+echo "configure:10997: checking for $ac_word" >&5
 
 if test -n "$have_esd_config"; then
   ac_cv_prog_have_esd_config="$have_esd_config" # Let the user override the test.
@@ -10947,15 +11017,64 @@ else
   echo "$ac_t""no" 1>&6
 fi
 
-if test -z "$with_esd"; then
-  with_esd=$have_esd_config
+  if test "$have_esd_config" = "yes"; then
+    save_c_switch_site="$c_switch_site" save_LIBS="$LIBS"
+    c_switch_site="$c_switch_site `esd-config --cflags`" &&  if test "$extra_verbose" = "yes"; then echo "    Appending \"`esd-config --cflags`\" to \$c_switch_site"; fi
+    LIBS="`esd-config --libs` $LIBS" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"`esd-config --libs`\" to \$LIBS"; fi
+    echo $ac_n "checking for esd_play_stream""... $ac_c" 1>&6
+echo "configure:11026: checking for esd_play_stream" >&5
+
+cat > conftest.$ac_ext <<EOF
+#line 11029 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char esd_play_stream(); below.  */
+#include <assert.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 esd_play_stream();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_esd_play_stream) || defined (__stub___esd_play_stream)
+choke me
+#else
+esd_play_stream();
+#endif
+
+; return 0; }
+EOF
+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_func_esd_play_stream=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_func_esd_play_stream=no"
+fi
+rm -f conftest*
+
+if eval "test \"`echo '$ac_cv_func_'esd_play_stream`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+  have_esd_sound=yes
+else
+  echo "$ac_t""no" 1>&6
+c_switch_site="$save_c_switch_site" LIBS="$save_LIBS"
 fi
 
-if test "$with_esd" = "yes"; then
-  if test "$have_esd_config" = "no"; then
-    echo "*** esd-config was not found in your PATH. Disabling esd support."
-    with_esd=no
-  else
+  fi
+
+  if test "$have_esd_sound" = "yes"; then
+    with_esd_sound=yes
+    need_miscplay=yes
+    extra_objs="$extra_objs esd.o" &&  if test "$extra_verbose" = "yes"; then
+   echo "    xemacs will be linked with \"esd.o\""
+ fi
     { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_ESD_SOUND
 EOF
@@ -10964,26 +11083,23 @@ cat >> confdefs.h <<\EOF
 EOF
 }
 
-    need_miscplay=yes
-    extra_objs="$extra_objs esd.o" &&  if test "$extra_verbose" = "yes"; then
-   echo "    xemacs will be linked with \"esd.o\""
- fi
-    libs_x="`esd-config --libs` $libs_x" &&  if test "$extra_verbose" = "yes"; then echo "    Prepending \"`esd-config --libs`\" to \$libs_x"; fi
+  else
+    test "$with_esd_sound" = "yes" && \
+      { echo "Error:" "Required ESD sound support cannot be provided." >&2; exit 1; }
+    with_esd_sound=no
   fi
 fi
 
-if test "$need_miscplay" = "yes"; then
-  extra_objs="$extra_objs miscplay.o" &&  if test "$extra_verbose" = "yes"; then
+test "$need_miscplay" = "yes" && extra_objs="$extra_objs miscplay.o" &&  if test "$extra_verbose" = "yes"; then
    echo "    xemacs will be linked with \"miscplay.o\""
  fi
-fi
 
 
 test -z "$with_tty" && with_tty=yes
 
 if test "$with_tty" = "yes"  ; then
   echo "checking for TTY-related features" 1>&6
-echo "configure:10987: checking for TTY-related features" >&5
+echo "configure:11103: checking for TTY-related features" >&5
   { test "$extra_verbose" = "yes" && cat << \EOF
     Defining HAVE_TTY
 EOF
@@ -10999,12 +11115,12 @@ EOF
     if test -z "$with_ncurses"; then
     
 echo $ac_n "checking for tgetent in -lncurses""... $ac_c" 1>&6
-echo "configure:11003: checking for tgetent in -lncurses" >&5
+echo "configure:11119: 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 11008 "configure"
+#line 11124 "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
@@ -11015,7 +11131,7 @@ int main() {
 tgetent()
 ; return 0; }
 EOF
-if { (eval echo configure:11019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11135: \"$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
@@ -11048,15 +11164,15 @@ EOF
 
     ac_safe=`echo "ncurses/curses.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for ncurses/curses.h""... $ac_c" 1>&6
-echo "configure:11052: checking for ncurses/curses.h" >&5
+echo "configure:11168: checking for ncurses/curses.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11055 "configure"
+#line 11171 "configure"
 #include "confdefs.h"
 #include <ncurses/curses.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11060: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11176: \"$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_safe=`echo "ncurses/term.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for ncurses/term.h""... $ac_c" 1>&6
-echo "configure:11082: checking for ncurses/term.h" >&5
+echo "configure:11198: checking for ncurses/term.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11085 "configure"
+#line 11201 "configure"
 #include "confdefs.h"
 #include <ncurses/term.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11090: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11206: \"$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*
       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:11120: checking for ncurses/curses.h" >&5
+echo "configure:11236: checking for ncurses/curses.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11123 "configure"
+#line 11239 "configure"
 #include "confdefs.h"
 #include <ncurses/curses.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11128: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11244: \"$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*
        for lib in curses termlib termcap; do
          
 echo $ac_n "checking for tgetent in -l$lib""... $ac_c" 1>&6
-echo "configure:11163: checking for tgetent in -l$lib" >&5
+echo "configure:11279: 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 11168 "configure"
+#line 11284 "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
@@ -11175,7 +11291,7 @@ int main() {
 tgetent()
 ; return 0; }
 EOF
-if { (eval echo configure:11179: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11295: \"$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
       else
        
 echo $ac_n "checking for tgetent in -lcurses""... $ac_c" 1>&6
-echo "configure:11210: checking for tgetent in -lcurses" >&5
+echo "configure:11326: 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 11215 "configure"
+#line 11331 "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
@@ -11222,7 +11338,7 @@ int main() {
 tgetent()
 ; return 0; }
 EOF
-if { (eval echo configure:11226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11342: \"$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
@@ -11240,12 +11356,12 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes" ; then
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for tgetent in -ltermcap""... $ac_c" 1>&6
-echo "configure:11244: checking for tgetent in -ltermcap" >&5
+echo "configure:11360: 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 11249 "configure"
+#line 11365 "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
@@ -11256,7 +11372,7 @@ int main() {
 tgetent()
 ; return 0; }
 EOF
-if { (eval echo configure:11260: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11376: \"$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
@@ -11304,15 +11420,15 @@ EOF
 
     test -z "$with_gpm" && { ac_safe=`echo "gpm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for gpm.h""... $ac_c" 1>&6
-echo "configure:11308: checking for gpm.h" >&5
+echo "configure:11424: checking for gpm.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11311 "configure"
+#line 11427 "configure"
 #include "confdefs.h"
 #include <gpm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11316: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11432: \"$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*
  }
   test -z "$with_gpm" && { 
 echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:11339: checking for Gpm_Open in -lgpm" >&5
+echo "configure:11455: 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 11344 "configure"
+#line 11460 "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
@@ -11351,7 +11467,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:11355: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11471: \"$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
@@ -11401,20 +11517,20 @@ test "$with_x11" = "yes" -o "$with_tty" = "yes" && extra_objs="$extra_objs event
 
 test "$with_database_gdbm $with_database_dbm $with_database_berkdb" \
   != "no no no" && echo "checking for database support" 1>&6
-echo "configure:11405: checking for database support" >&5
+echo "configure:11521: checking for database support" >&5
 
 if test "$with_database_gdbm $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:11410: checking for ndbm.h" >&5
+echo "configure:11526: checking for ndbm.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11413 "configure"
+#line 11529 "configure"
 #include "confdefs.h"
 #include <ndbm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11418: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11534: \"$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*
 if test "$with_database_gdbm" != "no"; then
   
 echo $ac_n "checking for dbm_open in -lgdbm""... $ac_c" 1>&6
-echo "configure:11448: checking for dbm_open in -lgdbm" >&5
+echo "configure:11564: 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 11453 "configure"
+#line 11569 "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
@@ -11460,7 +11576,7 @@ int main() {
 dbm_open()
 ; return 0; }
 EOF
-if { (eval echo configure:11464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11580: \"$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
 
 if test "$with_database_dbm" != "no"; then
   echo $ac_n "checking for dbm_open""... $ac_c" 1>&6
-echo "configure:11492: checking for dbm_open" >&5
+echo "configure:11608: checking for dbm_open" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11495 "configure"
+#line 11611 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char dbm_open(); below.  */
@@ -11514,7 +11630,7 @@ dbm_open();
 
 ; return 0; }
 EOF
-if { (eval echo configure:11518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11634: \"$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
@@ -11533,12 +11649,12 @@ else
 
     
 echo $ac_n "checking for dbm_open in -ldbm""... $ac_c" 1>&6
-echo "configure:11537: checking for dbm_open in -ldbm" >&5
+echo "configure:11653: 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 11542 "configure"
+#line 11658 "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
@@ -11549,7 +11665,7 @@ int main() {
 dbm_open()
 ; return 0; }
 EOF
-if { (eval echo configure:11553: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11669: \"$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
@@ -11590,10 +11706,10 @@ EOF
 
 if test "$with_database_berkdb" != "no"; then
   echo $ac_n "checking for Berkeley db.h""... $ac_c" 1>&6
-echo "configure:11594: checking for Berkeley db.h" >&5
+echo "configure:11710: checking for Berkeley db.h" >&5
   for path in "db/db.h" "db.h"; do
     cat > conftest.$ac_ext <<EOF
-#line 11597 "configure"
+#line 11713 "configure"
 #include "confdefs.h"
 #ifdef HAVE_INTTYPES_H
 #define __BIT_TYPES_DEFINED__
@@ -11611,7 +11727,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:11615: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:11731: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   db_h_path="$path"; break
 else
@@ -11627,9 +11743,9 @@ rm -f conftest*
 
   if test "$with_database_berkdb" != "no"; then
     echo $ac_n "checking for Berkeley DB version""... $ac_c" 1>&6
-echo "configure:11631: checking for Berkeley DB version" >&5
+echo "configure:11747: checking for Berkeley DB version" >&5
     cat > conftest.$ac_ext <<EOF
-#line 11633 "configure"
+#line 11749 "configure"
 #include "confdefs.h"
 #include <$db_h_path>
 #if DB_VERSION_MAJOR > 1
 rm -f conftest*
 
     echo $ac_n "checking for $dbfunc""... $ac_c" 1>&6
-echo "configure:11652: checking for $dbfunc" >&5
+echo "configure:11768: checking for $dbfunc" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11655 "configure"
+#line 11771 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $dbfunc(); below.  */
@@ -11674,7 +11790,7 @@ $dbfunc();
 
 ; return 0; }
 EOF
-if { (eval echo configure:11678: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11794: \"$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
@@ -11693,12 +11809,12 @@ else
 
     
 echo $ac_n "checking for $dbfunc in -ldb""... $ac_c" 1>&6
-echo "configure:11697: checking for $dbfunc in -ldb" >&5
+echo "configure:11813: 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 11702 "configure"
+#line 11818 "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
@@ -11709,7 +11825,7 @@ int main() {
 $dbfunc()
 ; return 0; }
 EOF
-if { (eval echo configure:11713: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11829: \"$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
 if test "$with_socks" = "yes"; then
   
 echo $ac_n "checking for SOCKSinit in -lsocks""... $ac_c" 1>&6
-echo "configure:11777: checking for SOCKSinit in -lsocks" >&5
+echo "configure:11893: 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 11782 "configure"
+#line 11898 "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
@@ -11789,7 +11905,7 @@ int main() {
 SOCKSinit()
 ; return 0; }
 EOF
-if { (eval echo configure:11793: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11909: \"$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
 
 if test "$with_modules" != "no"; then
   echo "checking for module support" 1>&6
-echo "configure:11848: checking for module support" >&5
+echo "configure:11964: checking for module support" >&5
 
     ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6
-echo "configure:11852: checking for dlfcn.h" >&5
+echo "configure:11968: checking for dlfcn.h" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 11855 "configure"
+#line 11971 "configure"
 #include "confdefs.h"
 #include <dlfcn.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11860: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11976: \"$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*
@@ -11874,12 +11990,12 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   
     
 echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "configure:11878: checking for dlopen in -ldl" >&5
+echo "configure:11994: 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 11883 "configure"
+#line 11999 "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
@@ -11890,7 +12006,7 @@ int main() {
 dlopen()
 ; return 0; }
 EOF
-if { (eval echo configure:11894: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12010: \"$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
@@ -11909,12 +12025,12 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for dlopen in -lc""... $ac_c" 1>&6
-echo "configure:11913: checking for dlopen in -lc" >&5
+echo "configure:12029: 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 11918 "configure"
+#line 12034 "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
@@ -11925,7 +12041,7 @@ int main() {
 dlopen()
 ; return 0; }
 EOF
-if { (eval echo configure:11929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12045: \"$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
@@ -11964,12 +12080,12 @@ EOF
   else
     
 echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
-echo "configure:11968: checking for shl_load in -ldld" >&5
+echo "configure:12084: 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 11973 "configure"
+#line 12089 "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
@@ -11980,7 +12096,7 @@ int main() {
 shl_load()
 ; return 0; }
 EOF
-if { (eval echo configure:11984: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12100: \"$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
@@ -12007,12 +12123,12 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for dld_init in -ldld""... $ac_c" 1>&6
-echo "configure:12011: checking for dld_init in -ldld" >&5
+echo "configure:12127: 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 12016 "configure"
+#line 12132 "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
@@ -12023,7 +12139,7 @@ int main() {
 dld_init()
 ; return 0; }
 EOF
-if { (eval echo configure:12027: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12143: \"$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
@@ -12068,7 +12184,7 @@ xehost=$canonical
 xealias=$internal_configuration
 
 echo "checking how to build dynamic libraries for ${xehost}" 1>&6
-echo "configure:12072: checking how to build dynamic libraries for ${xehost}" >&5
+echo "configure:12188: checking how to build dynamic libraries for ${xehost}" >&5
 # Transform *-*-linux* to *-*-linux-gnu*, to support old configure scripts.
 case "$xehost" in
 *-*-linux-gnu*) ;;
@@ -12096,9 +12212,9 @@ if test "$GCC" = "yes"; then
   XEGCC=yes
 else
   echo $ac_n "checking checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:12100: checking checking whether we are using GNU C" >&5
+echo "configure:12216: checking checking whether we are using GNU C" >&5
   cat > conftest.$ac_ext <<EOF
-#line 12102 "configure"
+#line 12218 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -12120,7 +12236,7 @@ rm -f conftest*
 fi
 
 echo $ac_n "checking how to produce PIC code""... $ac_c" 1>&6
-echo "configure:12124: checking how to produce PIC code" >&5
+echo "configure:12240: checking how to produce PIC code" >&5
 wl=
 
 can_build_shared=yes
@@ -12213,18 +12329,18 @@ if test -n "$dll_cflags"; then
   
   # Check to make sure the dll_cflags actually works.
   echo $ac_n "checking if PIC flag ${dll_cflags} really works""... $ac_c" 1>&6
-echo "configure:12217: checking if PIC flag ${dll_cflags} really works" >&5
+echo "configure:12333: checking if PIC flag ${dll_cflags} really works" >&5
   save_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS $dll_cflags -DPIC"
   cat > conftest.$ac_ext <<EOF
-#line 12221 "configure"
+#line 12337 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=0;
 ; return 0; }
 EOF
-if { (eval echo configure:12228: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:12344: \"$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
@@ -12255,7 +12371,7 @@ cc_produces_so=no
 xldf=
 xcldf=
 echo $ac_n "checking if C compiler can produce shared libraries""... $ac_c" 1>&6
-echo "configure:12259: checking if C compiler can produce shared libraries" >&5
+echo "configure:12375: checking if C compiler can produce shared libraries" >&5
 if test "$XEGCC" = yes; then
   xcldf="-shared"
   xldf="-shared"
@@ -12306,14 +12422,14 @@ if test -n "$xcldf"; then
   xe_libs=
   ac_link='${CC-cc} -o conftest $CFLAGS '"$xe_cppflags $xe_ldflags"' conftest.$ac_ext '"$xe_libs"' 1>&5'
   cat > conftest.$ac_ext <<EOF
-#line 12310 "configure"
+#line 12426 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=0;
 ; return 0; }
 EOF
-if { (eval echo configure:12317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12433: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   cc_produces_so=yes
 else
@@ -12338,7 +12454,7 @@ if test -z "$LTLD"; then
   if test "$XEGCC" = yes; then
     # Check if gcc -print-prog-name=ld gives a path.
     echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:12342: checking for ld used by GCC" >&5
+echo "configure:12458: checking for ld used by GCC" >&5
     ac_prog=`($CC -print-prog-name=ld) 2>&5`
     case "$ac_prog" in
     # Accept absolute paths.
@@ -12363,7 +12479,7 @@ echo "configure:12342: checking for ld used by GCC" >&5
     esac
   else
     echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:12367: checking for GNU ld" >&5
+echo "configure:12483: checking for GNU ld" >&5
   fi
 
   if test -z "$LTLD"; then
@@ -12401,7 +12517,7 @@ ld_dynamic_link_flags=
 
 # Check to see if it really is or isn't GNU ld.
 echo $ac_n "checking if the linker is GNU ld""... $ac_c" 1>&6
-echo "configure:12405: checking if the linker is GNU ld" >&5
+echo "configure:12521: 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
@@ -12428,7 +12544,7 @@ else
   # OK - only NOW do we futz about with ld.
   # See if the linker supports building shared libraries.
   echo $ac_n "checking whether the linker supports shared libraries""... $ac_c" 1>&6
-echo "configure:12432: checking whether the linker supports shared libraries" >&5
+echo "configure:12548: checking whether the linker supports shared libraries" >&5
   dll_ld=$CC
   dll_ldflags=$LDFLAGS
   ld_shlibs=yes
@@ -12643,10 +12759,10 @@ EOF
     for ac_func in dlerror _dlerror
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:12647: checking for $ac_func" >&5
+echo "configure:12763: checking for $ac_func" >&5
 
 cat > conftest.$ac_ext <<EOF
-#line 12650 "configure"
+#line 12766 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -12669,7 +12785,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:12673: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12789: \"$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
@@ -12708,11 +12824,11 @@ done
 fi
 
 cat > conftest.$ac_ext <<EOF
-#line 12712 "configure"
+#line 12828 "configure"
 #include "confdefs.h"
 int main(int c,char *v[]){return 0;}
 EOF
-if { (eval echo configure:12716: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
+if { (eval echo configure:12832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit $?) 2>&5
 then
   :
 else
@@ -13378,10 +13494,11 @@ test "$with_gif"   = yes && echo "  Compiling in support for (builtin) GIF image
 test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image handling."
 test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image handling."
 test "$with_xface" = yes && echo "  Compiling in support for X-Face message headers."
+
 test "$with_native_sound" = yes && echo "  Compiling in native sound support."
-test "$with_nas_sound" = yes && echo "  Compiling in network sound (NAS) support."
-test "$old_nas" = yes && echo "        nas library lacks error trapping, will play synchronously."
-test "$with_esd" = yes && echo "  Compiling in support for Enlightened Sound Daemon."
+test "$with_nas_sound"    = yes && echo "  Compiling in network sound (NAS) support."
+test "$old_nas"           = yes && echo "     nas library lacks error trapping, will play synchronously."
+test "$with_esd_sound"    = yes && echo "  Compiling in support for Enlightened Sound Daemon (ESD)."
 
 test "$with_database_berkdb" = yes && echo "  Compiling in support for Berkeley DB."
 test "$with_database_dbm"    = yes && echo "  Compiling in support for DBM."
index 10a1e3e..25048ad 100644 (file)
@@ -617,8 +617,8 @@ while test $# != 0; do
              nas )          with_nas_sound=yes ;;
              nonas )        with_nas_sound=no ;;
 
-             esd )          with_esd=yes ;;
-             noesd )        with_esh=no ;;
+             esd )          with_esd_sound=yes ;;
+             noesd )        with_esd_sound=no ;;
 
              * ) bogus_sound=yes ;;
            esac
@@ -627,11 +627,11 @@ while test $# != 0; do
                types="\`all', \`none', \`(no)native', \`no(nas)', \`(no)esd'."
                USAGE_ERROR(["Valid types for the \`--$optname' option are:
   $types.
-The default is native,esd."])
+The default is to autodetect all sound support."])
            elif test -n "$new_sdefault" ; then
                with_native_sound=$new_sdefault
                with_nas_sound=$new_sdefault
-               with_esd=$new_sdefault
+               with_esd_sound=$new_sdefault
                new_sdefault=   # reset this
            fi
            sound_notfirst=true
@@ -2568,7 +2568,7 @@ if test "$with_x11" != "yes"; then
   dnl if test "$with_tty" = "no" ; then
   dnl   AC_MSG_ERROR([No window system support and no TTY support - Unable to proceed.])
   dnl fi
-  for feature in tooltalk cde offix wmcommand xim xmu
+  for feature in tooltalk cde offix wmcommand xim xmu xpm nas_sound
   do
     if eval "test -n \"\$with_${feature}\" -a \"\$with_${feature}\" != no" ; then
        AC_MSG_WARN([--with-$feature ignored:  Not valid without X support])
@@ -3008,12 +3008,6 @@ if test "$with_x11" = "yes"; then
   test "$with_dialogs"    != "no"      && XE_ADD_OBJS(dialog-x.o)
   test "$with_toolbars"   != "no"      && XE_ADD_OBJS(toolbar-x.o)
   test "$all_widgets" != "no no no no no" && XE_ADD_OBJS(gui-x.o)
-else
-  if test "$with_nas_sound" = "nas"; then
-    echo "Attempt to Build NAS sound without X"
-    echo "Please remove NAS configuration or build with X"
-    exit 1
-  fi
 fi
 
 dnl ----------------------
@@ -3470,35 +3464,50 @@ if test "$with_native_sound" = "yes"; then
   test -n "$native_sound_lib" && XE_PREPEND($native_sound_lib, LIBS)
 fi
 
-if test "$with_nas_sound" = "yes"; then
-  AC_DEFINE(HAVE_NAS_SOUND)
-  XE_ADD_OBJS(nas.o)
-  XE_PREPEND(-laudio, libs_x)
-  dnl If the nas library does not contain the error jump point,
-  dnl then we force safer behavior.
-  AC_EGREP_HEADER(AuXtErrorJump,audio/Xtutil.h,,[AC_DEFINE(NAS_NO_ERROR_JUMP)])
+dnl NAS Sound support
+if test "$with_nas_sound" != "no"; then
+  AC_CHECK_HEADER(audio/audiolib.h, [
+    AC_CHECK_LIB(audio, AuOpenServer, have_nas_sound=yes)])
+  if test "$have_nas_sound" = "yes"; then
+    with_nas_sound=yes
+    AC_DEFINE(HAVE_NAS_SOUND)
+    XE_ADD_OBJS(nas.o)
+    XE_PREPEND(-laudio, libs_x)
+    dnl If the nas library does not contain the error jump point,
+    dnl then we force safer behavior.
+    AC_EGREP_HEADER(AuXtErrorJump,audio/Xtutil.h,,[old_nas=yes; AC_DEFINE(NAS_NO_ERROR_JUMP)])
+  else
+    test "$with_nas_sound" = "yes" && \
+      XE_DIE("Required NAS sound support cannot be provided.")
+    with_nas_sound=no
+  fi
 fi
 
-AC_CHECK_PROG(have_esd_config, esd-config, yes, no)
-if test -z "$with_esd"; then
-  with_esd=$have_esd_config
-fi
+dnl ESD Sound support
+if test "$with_esd_sound" != "no"; then
+  AC_CHECK_PROG(have_esd_config, esd-config, yes, no)
+  if test "$have_esd_config" = "yes"; then
+    save_c_switch_site="$c_switch_site" save_LIBS="$LIBS"
+    XE_APPEND(`esd-config --cflags`, c_switch_site)
+    XE_PREPEND(`esd-config --libs`, LIBS)
+    AC_CHECK_FUNC(esd_play_stream,
+      have_esd_sound=yes,
+      c_switch_site="$save_c_switch_site" LIBS="$save_LIBS")
+  fi
 
-if test "$with_esd" = "yes"; then
-  if test "$have_esd_config" = "no"; then
-    echo "*** esd-config was not found in your PATH. Disabling esd support."
-    with_esd=no
-  else
-    AC_DEFINE(HAVE_ESD_SOUND)
+  if test "$have_esd_sound" = "yes"; then
+    with_esd_sound=yes
     need_miscplay=yes
     XE_ADD_OBJS(esd.o)
-    XE_PREPEND(`esd-config --libs`, libs_x)
+    AC_DEFINE(HAVE_ESD_SOUND)
+  else
+    test "$with_esd_sound" = "yes" && \
+      XE_DIE("Required ESD sound support cannot be provided.")
+    with_esd_sound=no
   fi
 fi
 
-if test "$need_miscplay" = "yes"; then
-  XE_ADD_OBJS(miscplay.o)
-fi
+test "$need_miscplay" = "yes" && XE_ADD_OBJS(miscplay.o)
 
 dnl ---------------------
 dnl TTY-dependent options
@@ -4175,10 +4184,11 @@ test "$with_gif"   = yes && echo "  Compiling in support for (builtin) GIF image
 test "$with_jpeg"  = yes && echo "  Compiling in support for JPEG image handling."
 test "$with_tiff"  = yes && echo "  Compiling in support for TIFF image handling."
 test "$with_xface" = yes && echo "  Compiling in support for X-Face message headers."
+
 test "$with_native_sound" = yes && echo "  Compiling in native sound support."
-test "$with_nas_sound" = yes && echo "  Compiling in network sound (NAS) support."
-test "$old_nas" = yes && echo "        nas library lacks error trapping, will play synchronously."
-test "$with_esd" = yes && echo "  Compiling in support for Enlightened Sound Daemon."
+test "$with_nas_sound"    = yes && echo "  Compiling in network sound (NAS) support."
+test "$old_nas"           = yes && echo "     nas library lacks error trapping, will play synchronously."
+test "$with_esd_sound"    = yes && echo "  Compiling in support for Enlightened Sound Daemon (ESD)."
 
 test "$with_database_berkdb" = yes && echo "  Compiling in support for Berkeley DB."
 test "$with_database_dbm"    = yes && echo "  Compiling in support for DBM."
index 1f1b77e..12a020f 100644 (file)
@@ -124,8 +124,10 @@ Additional features:
 --with-sound=TYPE,[TYPE],... Compile with native sound support.
                        Valid types are `native', `nas' and `esd'.
                        Prefix a type with 'no' to disable.
-                       The first option can be `none' or `all' to change
-                       the default which is: native,esd
+                       The first option can be `none' or `all'.
+                       `none' is a synonym for `nonative,nonas,noesd'.
+                       `all' is a synonym for native,nas,esd or `all'.
+                       The default is to autodetect all sound support.
 --native-sound-lib=LIB  Native sound support library.  Needed on Suns
                         with --with-sound=both because both sound libraries
                         are called libaudio.
index 9289e88..3dcba1e 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -187,9 +187,9 @@ for PSWrap.
 Olivier Galibert has written a portable dumper for XEmacs, based on
 initial work by Kyle Jones.  Normally, XEmacs C sources link into an
 executable called `temacs', which loads the Lisp code and "unexecs"
-into a proper `xemacs' executable.  The unexec() process is unreliable
-and makes XEmacs hard to port to new operating systems, or even to new
-releases of old systems.
+into a proper `xemacs' executable.  The unexec() process is hard to
+implement correctly and makes XEmacs very hard to port to new
+operating systems, or even to new releases of old systems.
 
 A portable dumper is a different approach to dumping: instead of
 dumping full-fledged executable, it only dumps out the initialized
@@ -248,8 +248,8 @@ are implemented as native window-system widgets.  Thus you can embed
 buttons, scrollbars, combo boxes, edit fields and progress gauges in a
 buffer.  As a side effect subwindow support now works once again.
 
-All of this is still very experimental.  This support is currently
-only available under MS-Windows.  (#### Is this true?)
+All of this is still very experimental.  This feature is currently
+more complete under MS-Windows.
 
 ** user-init-directory is now an absolute, unexpanded path.
 Previously, `user-init-directory' used to be relative to
index 5854c42..2347717 100644 (file)
@@ -34,24 +34,24 @@ Indirect:
 xemacs.info-1: 1350
 xemacs.info-2: 47938
 xemacs.info-3: 95895
-xemacs.info-4: 143994
-xemacs.info-5: 192193
-xemacs.info-6: 241558
-xemacs.info-7: 290374
-xemacs.info-8: 339917
-xemacs.info-9: 385196
-xemacs.info-10: 433020
-xemacs.info-11: 482190
-xemacs.info-12: 531339
-xemacs.info-13: 580163
-xemacs.info-14: 628304
-xemacs.info-15: 677058
-xemacs.info-16: 726583
-xemacs.info-17: 775144
-xemacs.info-18: 819062
-xemacs.info-19: 860225
-xemacs.info-20: 908221
-xemacs.info-21: 948941
+xemacs.info-4: 143999
+xemacs.info-5: 192198
+xemacs.info-6: 241563
+xemacs.info-7: 290379
+xemacs.info-8: 339922
+xemacs.info-9: 385201
+xemacs.info-10: 433025
+xemacs.info-11: 482195
+xemacs.info-12: 531344
+xemacs.info-13: 580168
+xemacs.info-14: 628309
+xemacs.info-15: 677063
+xemacs.info-16: 726588
+xemacs.info-17: 775149
+xemacs.info-18: 819067
+xemacs.info-19: 860230
+xemacs.info-20: 908226
+xemacs.info-21: 948946
 \1f
 Tag Table:
 (Indirect)
@@ -86,313 +86,313 @@ Node: Entering Emacs\7f94592
 Node: Exiting\7f95895
 Node: Command Switches\7f98986
 Node: Startup Paths\7f108173
-Node: Basic\7f115748
-Node: Blank Lines\7f125226
-Node: Continuation Lines\7f126652
-Node: Position Info\7f128084
-Node: Arguments\7f131217
-Node: Undo\7f134354
-Node: Minibuffer\7f137301
-Node: Minibuffer File\7f139785
-Node: Minibuffer Edit\7f141421
-Node: Completion\7f143994
-Node: Repetition\7f150869
-Node: M-x\7f153661
-Node: Help\7f158755
-Node: Mark\7f168674
-Node: Setting Mark\7f170528
-Node: Using Region\7f173650
-Node: Marking Objects\7f174387
-Node: Mark Ring\7f176225
-Node: Mouse Selection\7f177941
-Node: Additional Mouse Operations\7f179948
-Node: Killing\7f184152
-Node: Yanking\7f189788
-Node: Kill Ring\7f190591
-Node: Appending Kills\7f192193
-Node: Earlier Kills\7f194230
-Node: Using X Selections\7f196843
-Node: X Clipboard Selection\7f198093
-Node: X Selection Commands\7f200270
-Node: X Cut Buffers\7f201356
-Node: Active Regions\7f202715
-Node: Accumulating Text\7f207295
-Node: Rectangles\7f210368
-Node: Registers\7f213887
-Node: RegPos\7f214921
-Node: RegText\7f215824
-Node: RegRect\7f216908
-Node: Display\7f217648
-Node: Scrolling\7f219143
-Node: Horizontal Scrolling\7f223286
-Node: Selective Display\7f224481
-Node: Display Vars\7f225700
-Node: Search\7f228378
-Node: Incremental Search\7f229571
-Node: Non-Incremental Search\7f238498
-Node: Word Search\7f239940
-Node: Regexp Search\7f241558
-Node: Regexps\7f243094
-Node: Search Case\7f253395
-Node: Replace\7f254176
-Node: Unconditional Replace\7f255124
-Node: Regexp Replace\7f256259
-Node: Replacement and Case\7f257194
-Node: Query Replace\7f258174
-Node: Other Repeating Search\7f261401
-Node: Fixit\7f262656
-Node: Kill Errors\7f263236
-Node: Transpose\7f264569
-Node: Fixing Case\7f266973
-Node: Spelling\7f267619
-Node: Files\7f269080
-Node: File Names\7f270390
-Node: Visiting\7f274727
-Node: Saving\7f281413
-Node: Backup\7f286336
-Node: Backup Names\7f287732
-Node: Backup Deletion\7f289215
-Node: Backup Copying\7f290374
-Node: Interlocking\7f292080
-Node: Reverting\7f296208
-Node: Auto Save\7f298120
-Node: Auto Save Files\7f299087
-Node: Auto Save Control\7f300928
-Node: Recover\7f302766
-Node: Version Control\7f303921
-Node: Concepts of VC\7f305959
-Node: Editing with VC\7f307569
-Node: Variables for Check-in/out\7f312825
-Node: Log Entries\7f314724
-Node: Change Logs and VC\7f315904
-Node: Old Versions\7f319171
-Node: VC Status\7f321174
-Node: Renaming and VC\7f322888
-Node: Snapshots\7f323567
-Node: Making Snapshots\7f324068
-Node: Snapshot Caveats\7f325361
-Node: Version Headers\7f327170
-Node: ListDir\7f329869
-Node: Comparing Files\7f331918
-Node: Dired\7f333451
-Node: Dired Enter\7f334122
-Node: Dired Edit\7f334947
-Node: Dired Deletion\7f336694
-Node: Dired Immed\7f339917
-Node: Misc File Ops\7f341193
-Node: Buffers\7f343681
-Node: Select Buffer\7f345839
-Node: List Buffers\7f347634
-Node: Misc Buffer\7f349379
-Node: Kill Buffer\7f351022
-Node: Several Buffers\7f352152
-Node: Windows\7f356018
-Node: Basic Window\7f356729
-Node: Split Window\7f358448
-Node: Other Window\7f360581
-Node: Pop Up Window\7f363010
-Node: Change Window\7f364515
-Node: Mule\7f367423
-Node: Mule Intro\7f368686
-Node: Language Environments\7f369702
-Node: Input Methods\7f371809
-Node: Select Input Method\7f375529
-Node: Coding Systems\7f377684
-Node: Recognize Coding\7f381870
-Node: Specify Coding\7f385196
-Node: Major Modes\7f390127
-Node: Choosing Modes\7f392346
-Node: Indentation\7f394736
-Node: Indentation Commands\7f396831
-Node: Tab Stops\7f399560
-Node: Just Spaces\7f401409
-Node: Text\7f402224
-Node: Text Mode\7f404207
-Node: Nroff Mode\7f406286
-Node: TeX Mode\7f407929
-Node: TeX Editing\7f410181
-Node: TeX Print\7f413615
-Node: Outline Mode\7f416834
-Node: Outline Format\7f418315
-Node: Outline Motion\7f421115
-Node: Outline Visibility\7f422668
-Node: Words\7f425589
-Node: Sentences\7f428536
-Node: Paragraphs\7f430732
-Node: Pages\7f433020
-Node: Filling\7f435620
-Node: Auto Fill\7f436191
-Node: Fill Commands\7f438338
-Node: Fill Prefix\7f440503
-Node: Case\7f442691
-Node: Programs\7f444719
-Node: Program Modes\7f447268
-Node: Lists\7f449500
-Node: Defuns\7f455340
-Node: Grinding\7f457993
-Node: Basic Indent\7f458621
-Node: Multi-line Indent\7f460642
-Node: Lisp Indent\7f462258
-Node: C Indent\7f465708
-Node: Matching\7f470948
-Node: Comments\7f472470
-Node: Balanced Editing\7f478922
-Node: Lisp Completion\7f479936
-Node: Documentation\7f480951
-Node: Change Log\7f482190
-Node: Tags\7f484768
-Node: Tag Syntax\7f486417
-Node: Create Tags Table\7f490361
-Node: Etags Regexps\7f494421
-Node: Select Tags Table\7f499079
-Node: Find Tag\7f502817
-Node: Tags Search\7f505781
-Node: List Tags\7f509237
-Node: Fortran\7f510266
-Node: Fortran Motion\7f511342
-Node: Fortran Indent\7f512162
-Node: ForIndent Commands\7f512847
-Node: ForIndent Num\7f513992
-Node: ForIndent Conv\7f515266
-Node: ForIndent Vars\7f516042
-Node: Fortran Comments\7f517210
-Node: Fortran Columns\7f520808
-Node: Fortran Abbrev\7f522231
-Node: Asm Mode\7f523140
-Node: Running\7f523692
-Node: Compilation\7f524662
-Node: Lisp Modes\7f529512
-Node: Lisp Libraries\7f530785
-Node: Loading\7f531339
-Node: Compiling Libraries\7f535799
-Node: Mocklisp\7f538690
-Node: Lisp Eval\7f539367
-Node: Lisp Debug\7f543007
-Node: Lisp Interaction\7f548432
-Node: External Lisp\7f549787
-Node: Packages\7f551861
-Node: Package Terminology\7f552602
-Node: Using Packages\7f553960
-Node: Building Packages\7f562749
-Node: Abbrevs\7f565271
-Node: Defining Abbrevs\7f567471
-Node: Expanding Abbrevs\7f569918
-Node: Editing Abbrevs\7f572620
-Node: Saving Abbrevs\7f574488
-Node: Dynamic Abbrevs\7f576428
-Node: Picture\7f577730
-Node: Basic Picture\7f580163
-Node: Insert in Picture\7f582448
-Node: Tabs in Picture\7f583870
-Node: Rectangles in Picture\7f585391
-Node: Sending Mail\7f587299
-Node: Mail Format\7f589010
-Node: Mail Headers\7f590360
-Node: Mail Mode\7f596770
-Node: Reading Mail\7f600383
-Node: Calendar/Diary\7f601958
-Node: Calendar Motion\7f603630
-Node: Calendar Unit Motion\7f604513
-Node: Move to Beginning or End\7f606836
-Node: Specified Dates\7f607969
-Node: Scroll Calendar\7f608857
-Node: Mark and Region\7f610648
-Node: General Calendar\7f612554
-Node: LaTeX Calendar\7f614162
-Node: Holidays\7f616176
-Node: Sunrise/Sunset\7f619278
-Node: Lunar Phases\7f622321
-Node: Other Calendars\7f623706
-Node: Calendar Systems\7f625193
-Node: To Other Calendar\7f628304
-Node: From Other Calendar\7f630295
-Node: Mayan Calendar\7f632600
-Node: Diary\7f635795
-Node: Diary Commands\7f637544
-Node: Format of Diary File\7f640850
-Node: Date Formats\7f643720
-Node: Adding to Diary\7f646294
-Node: Special Diary Entries\7f647925
-Node: Calendar Customization\7f653264
-Node: Calendar Customizing\7f654126
-Node: Holiday Customizing\7f657345
-Node: Date Display Format\7f663813
-Node: Time Display Format\7f664771
-Node: Daylight Savings\7f665909
-Node: Diary Customizing\7f669097
-Node: Hebrew/Islamic Entries\7f673718
-Node: Fancy Diary Display\7f677058
-Node: Included Diary Files\7f678955
-Node: Sexp Diary Entries\7f679936
-Node: Appt Customizing\7f685026
-Node: Sorting\7f686072
-Node: Shell\7f690878
-Node: Single Shell\7f692171
-Node: Interactive Shell\7f693770
-Node: Shell Mode\7f697535
-Node: Terminal emulator\7f700026
-Node: Term Mode\7f702335
-Node: Paging in Term\7f703249
-Node: Narrowing\7f704047
-Node: Hardcopy\7f705997
-Node: Recursive Edit\7f706969
-Node: Dissociated Press\7f709956
-Node: CONX\7f712519
-Node: Amusements\7f713543
-Node: Emulation\7f714023
-Node: Customization\7f715867
-Node: Minor Modes\7f717591
-Node: Variables\7f719223
-Node: Examining\7f721179
-Node: Easy Customization\7f722640
-Node: Customization Groups\7f723654
-Node: Changing an Option\7f726583
-Node: Face Customization\7f732839
-Node: Specific Customization\7f734603
-Node: Edit Options\7f737210
-Node: Locals\7f738794
-Node: File Variables\7f741973
-Node: Keyboard Macros\7f746499
-Node: Basic Kbd Macro\7f748670
-Node: Save Kbd Macro\7f750602
-Node: Kbd Macro Query\7f752271
-Node: Key Bindings\7f754213
-Node: Keymaps\7f755087
-Node: Rebinding\7f758937
-Node: Interactive Rebinding\7f759633
-Node: Programmatic Rebinding\7f761825
-Node: Key Bindings Using Strings\7f764632
-Node: Disabling\7f766238
-Node: Syntax\7f768010
-Node: Syntax Entry\7f768891
-Node: Syntax Change\7f772975
-Node: Init File\7f775144
-Node: Init Syntax\7f776649
-Node: Init Examples\7f779001
-Node: Terminal Init\7f783191
-Node: Audible Bell\7f784901
-Node: Faces\7f788332
-Node: X Resources\7f793169
-Node: Geometry Resources\7f794790
-Node: Iconic Resources\7f797238
-Node: Resource List\7f797710
-Node: Face Resources\7f804217
-Node: Widgets\7f807894
-Node: Menubar Resources\7f808833
-Node: Quitting\7f809766
-Node: Lossage\7f812744
-Node: Stuck Recursive\7f813388
-Node: Screen Garbled\7f814094
-Node: Text Garbled\7f815228
-Node: Unasked-for Search\7f815867
-Node: Emergency Escape\7f816652
-Node: Total Frustration\7f818431
-Node: Bugs\7f819062
-Node: Glossary\7f828596
-Node: Manifesto\7f860225
-Node: Key Index\7f883701
-Node: Command Index\7f908221
-Node: Variable Index\7f948941
-Node: Concept Index\7f964892
+Node: Basic\7f115753
+Node: Blank Lines\7f125231
+Node: Continuation Lines\7f126657
+Node: Position Info\7f128089
+Node: Arguments\7f131222
+Node: Undo\7f134359
+Node: Minibuffer\7f137306
+Node: Minibuffer File\7f139790
+Node: Minibuffer Edit\7f141426
+Node: Completion\7f143999
+Node: Repetition\7f150874
+Node: M-x\7f153666
+Node: Help\7f158760
+Node: Mark\7f168679
+Node: Setting Mark\7f170533
+Node: Using Region\7f173655
+Node: Marking Objects\7f174392
+Node: Mark Ring\7f176230
+Node: Mouse Selection\7f177946
+Node: Additional Mouse Operations\7f179953
+Node: Killing\7f184157
+Node: Yanking\7f189793
+Node: Kill Ring\7f190596
+Node: Appending Kills\7f192198
+Node: Earlier Kills\7f194235
+Node: Using X Selections\7f196848
+Node: X Clipboard Selection\7f198098
+Node: X Selection Commands\7f200275
+Node: X Cut Buffers\7f201361
+Node: Active Regions\7f202720
+Node: Accumulating Text\7f207300
+Node: Rectangles\7f210373
+Node: Registers\7f213892
+Node: RegPos\7f214926
+Node: RegText\7f215829
+Node: RegRect\7f216913
+Node: Display\7f217653
+Node: Scrolling\7f219148
+Node: Horizontal Scrolling\7f223291
+Node: Selective Display\7f224486
+Node: Display Vars\7f225705
+Node: Search\7f228383
+Node: Incremental Search\7f229576
+Node: Non-Incremental Search\7f238503
+Node: Word Search\7f239945
+Node: Regexp Search\7f241563
+Node: Regexps\7f243099
+Node: Search Case\7f253400
+Node: Replace\7f254181
+Node: Unconditional Replace\7f255129
+Node: Regexp Replace\7f256264
+Node: Replacement and Case\7f257199
+Node: Query Replace\7f258179
+Node: Other Repeating Search\7f261406
+Node: Fixit\7f262661
+Node: Kill Errors\7f263241
+Node: Transpose\7f264574
+Node: Fixing Case\7f266978
+Node: Spelling\7f267624
+Node: Files\7f269085
+Node: File Names\7f270395
+Node: Visiting\7f274732
+Node: Saving\7f281418
+Node: Backup\7f286341
+Node: Backup Names\7f287737
+Node: Backup Deletion\7f289220
+Node: Backup Copying\7f290379
+Node: Interlocking\7f292085
+Node: Reverting\7f296213
+Node: Auto Save\7f298125
+Node: Auto Save Files\7f299092
+Node: Auto Save Control\7f300933
+Node: Recover\7f302771
+Node: Version Control\7f303926
+Node: Concepts of VC\7f305964
+Node: Editing with VC\7f307574
+Node: Variables for Check-in/out\7f312830
+Node: Log Entries\7f314729
+Node: Change Logs and VC\7f315909
+Node: Old Versions\7f319176
+Node: VC Status\7f321179
+Node: Renaming and VC\7f322893
+Node: Snapshots\7f323572
+Node: Making Snapshots\7f324073
+Node: Snapshot Caveats\7f325366
+Node: Version Headers\7f327175
+Node: ListDir\7f329874
+Node: Comparing Files\7f331923
+Node: Dired\7f333456
+Node: Dired Enter\7f334127
+Node: Dired Edit\7f334952
+Node: Dired Deletion\7f336699
+Node: Dired Immed\7f339922
+Node: Misc File Ops\7f341198
+Node: Buffers\7f343686
+Node: Select Buffer\7f345844
+Node: List Buffers\7f347639
+Node: Misc Buffer\7f349384
+Node: Kill Buffer\7f351027
+Node: Several Buffers\7f352157
+Node: Windows\7f356023
+Node: Basic Window\7f356734
+Node: Split Window\7f358453
+Node: Other Window\7f360586
+Node: Pop Up Window\7f363015
+Node: Change Window\7f364520
+Node: Mule\7f367428
+Node: Mule Intro\7f368691
+Node: Language Environments\7f369707
+Node: Input Methods\7f371814
+Node: Select Input Method\7f375534
+Node: Coding Systems\7f377689
+Node: Recognize Coding\7f381875
+Node: Specify Coding\7f385201
+Node: Major Modes\7f390132
+Node: Choosing Modes\7f392351
+Node: Indentation\7f394741
+Node: Indentation Commands\7f396836
+Node: Tab Stops\7f399565
+Node: Just Spaces\7f401414
+Node: Text\7f402229
+Node: Text Mode\7f404212
+Node: Nroff Mode\7f406291
+Node: TeX Mode\7f407934
+Node: TeX Editing\7f410186
+Node: TeX Print\7f413620
+Node: Outline Mode\7f416839
+Node: Outline Format\7f418320
+Node: Outline Motion\7f421120
+Node: Outline Visibility\7f422673
+Node: Words\7f425594
+Node: Sentences\7f428541
+Node: Paragraphs\7f430737
+Node: Pages\7f433025
+Node: Filling\7f435625
+Node: Auto Fill\7f436196
+Node: Fill Commands\7f438343
+Node: Fill Prefix\7f440508
+Node: Case\7f442696
+Node: Programs\7f444724
+Node: Program Modes\7f447273
+Node: Lists\7f449505
+Node: Defuns\7f455345
+Node: Grinding\7f457998
+Node: Basic Indent\7f458626
+Node: Multi-line Indent\7f460647
+Node: Lisp Indent\7f462263
+Node: C Indent\7f465713
+Node: Matching\7f470953
+Node: Comments\7f472475
+Node: Balanced Editing\7f478927
+Node: Lisp Completion\7f479941
+Node: Documentation\7f480956
+Node: Change Log\7f482195
+Node: Tags\7f484773
+Node: Tag Syntax\7f486422
+Node: Create Tags Table\7f490366
+Node: Etags Regexps\7f494426
+Node: Select Tags Table\7f499084
+Node: Find Tag\7f502822
+Node: Tags Search\7f505786
+Node: List Tags\7f509242
+Node: Fortran\7f510271
+Node: Fortran Motion\7f511347
+Node: Fortran Indent\7f512167
+Node: ForIndent Commands\7f512852
+Node: ForIndent Num\7f513997
+Node: ForIndent Conv\7f515271
+Node: ForIndent Vars\7f516047
+Node: Fortran Comments\7f517215
+Node: Fortran Columns\7f520813
+Node: Fortran Abbrev\7f522236
+Node: Asm Mode\7f523145
+Node: Running\7f523697
+Node: Compilation\7f524667
+Node: Lisp Modes\7f529517
+Node: Lisp Libraries\7f530790
+Node: Loading\7f531344
+Node: Compiling Libraries\7f535804
+Node: Mocklisp\7f538695
+Node: Lisp Eval\7f539372
+Node: Lisp Debug\7f543012
+Node: Lisp Interaction\7f548437
+Node: External Lisp\7f549792
+Node: Packages\7f551866
+Node: Package Terminology\7f552607
+Node: Using Packages\7f553965
+Node: Building Packages\7f562754
+Node: Abbrevs\7f565276
+Node: Defining Abbrevs\7f567476
+Node: Expanding Abbrevs\7f569923
+Node: Editing Abbrevs\7f572625
+Node: Saving Abbrevs\7f574493
+Node: Dynamic Abbrevs\7f576433
+Node: Picture\7f577735
+Node: Basic Picture\7f580168
+Node: Insert in Picture\7f582453
+Node: Tabs in Picture\7f583875
+Node: Rectangles in Picture\7f585396
+Node: Sending Mail\7f587304
+Node: Mail Format\7f589015
+Node: Mail Headers\7f590365
+Node: Mail Mode\7f596775
+Node: Reading Mail\7f600388
+Node: Calendar/Diary\7f601963
+Node: Calendar Motion\7f603635
+Node: Calendar Unit Motion\7f604518
+Node: Move to Beginning or End\7f606841
+Node: Specified Dates\7f607974
+Node: Scroll Calendar\7f608862
+Node: Mark and Region\7f610653
+Node: General Calendar\7f612559
+Node: LaTeX Calendar\7f614167
+Node: Holidays\7f616181
+Node: Sunrise/Sunset\7f619283
+Node: Lunar Phases\7f622326
+Node: Other Calendars\7f623711
+Node: Calendar Systems\7f625198
+Node: To Other Calendar\7f628309
+Node: From Other Calendar\7f630300
+Node: Mayan Calendar\7f632605
+Node: Diary\7f635800
+Node: Diary Commands\7f637549
+Node: Format of Diary File\7f640855
+Node: Date Formats\7f643725
+Node: Adding to Diary\7f646299
+Node: Special Diary Entries\7f647930
+Node: Calendar Customization\7f653269
+Node: Calendar Customizing\7f654131
+Node: Holiday Customizing\7f657350
+Node: Date Display Format\7f663818
+Node: Time Display Format\7f664776
+Node: Daylight Savings\7f665914
+Node: Diary Customizing\7f669102
+Node: Hebrew/Islamic Entries\7f673723
+Node: Fancy Diary Display\7f677063
+Node: Included Diary Files\7f678960
+Node: Sexp Diary Entries\7f679941
+Node: Appt Customizing\7f685031
+Node: Sorting\7f686077
+Node: Shell\7f690883
+Node: Single Shell\7f692176
+Node: Interactive Shell\7f693775
+Node: Shell Mode\7f697540
+Node: Terminal emulator\7f700031
+Node: Term Mode\7f702340
+Node: Paging in Term\7f703254
+Node: Narrowing\7f704052
+Node: Hardcopy\7f706002
+Node: Recursive Edit\7f706974
+Node: Dissociated Press\7f709961
+Node: CONX\7f712524
+Node: Amusements\7f713548
+Node: Emulation\7f714028
+Node: Customization\7f715872
+Node: Minor Modes\7f717596
+Node: Variables\7f719228
+Node: Examining\7f721184
+Node: Easy Customization\7f722645
+Node: Customization Groups\7f723659
+Node: Changing an Option\7f726588
+Node: Face Customization\7f732844
+Node: Specific Customization\7f734608
+Node: Edit Options\7f737215
+Node: Locals\7f738799
+Node: File Variables\7f741978
+Node: Keyboard Macros\7f746504
+Node: Basic Kbd Macro\7f748675
+Node: Save Kbd Macro\7f750607
+Node: Kbd Macro Query\7f752276
+Node: Key Bindings\7f754218
+Node: Keymaps\7f755092
+Node: Rebinding\7f758942
+Node: Interactive Rebinding\7f759638
+Node: Programmatic Rebinding\7f761830
+Node: Key Bindings Using Strings\7f764637
+Node: Disabling\7f766243
+Node: Syntax\7f768015
+Node: Syntax Entry\7f768896
+Node: Syntax Change\7f772980
+Node: Init File\7f775149
+Node: Init Syntax\7f776654
+Node: Init Examples\7f779006
+Node: Terminal Init\7f783196
+Node: Audible Bell\7f784906
+Node: Faces\7f788337
+Node: X Resources\7f793174
+Node: Geometry Resources\7f794795
+Node: Iconic Resources\7f797243
+Node: Resource List\7f797715
+Node: Face Resources\7f804222
+Node: Widgets\7f807899
+Node: Menubar Resources\7f808838
+Node: Quitting\7f809771
+Node: Lossage\7f812749
+Node: Stuck Recursive\7f813393
+Node: Screen Garbled\7f814099
+Node: Text Garbled\7f815233
+Node: Unasked-for Search\7f815872
+Node: Emergency Escape\7f816657
+Node: Total Frustration\7f818436
+Node: Bugs\7f819067
+Node: Glossary\7f828601
+Node: Manifesto\7f860230
+Node: Key Index\7f883706
+Node: Command Index\7f908226
+Node: Variable Index\7f948946
+Node: Concept Index\7f964897
 \1f
 End Tag Table
index af47a05..e6fe2a8 100644 (file)
@@ -443,7 +443,7 @@ are present, they are locate the early, late, and last package
 hierarchies respectively.  If two components are present, they locate
 the early and late hierarchies.  If only one component is present, it
 locates the late hierarchy.  At run time, the package path may also be
-specified via the `PACKAGEPATH' environment variable.
+specified via the `EMACSPACKAGEPATH' environment variable.
 
    An XEmacs package is laid out just like a normal installed XEmacs
 lisp directory.  It may have `lisp', `etc', `info', and `lib-src'
index 9ddbcbc..ae4dbc1 100644 (file)
@@ -1,3 +1,11 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-12-13  Martin Buchholz  <martin@xemacs.org>
+
+       * etags.c: Fix warning: `_GNU_SOURCE' redefined.
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 5f2223a..35a161e 100644 (file)
@@ -37,9 +37,6 @@ char pot_etags_version[] = "@(#) pot revision number is 13.33";
 #define        TRUE    1
 #define        FALSE   0
 
-#ifndef _GNU_SOURCE
-# define _GNU_SOURCE           /* enables some compiler checks on GNU */
-#endif
 #ifndef DEBUG
 # define DEBUG FALSE
 #endif
@@ -53,6 +50,10 @@ char pot_etags_version[] = "@(#) pot revision number is 13.33";
 # define LONG_OPTIONS          /* accept long options */
 #endif /* HAVE_CONFIG_H */
 
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE 1         /* enables some compiler checks on GNU */
+#endif
+
 #ifdef MSDOS
 # include <fcntl.h>
 # include <sys/param.h>
index 7896576..610a833 100644 (file)
@@ -1,3 +1,11 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-12-12  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * about.el (about-hackers): Update my email address.
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 0adcec7..4448a0d 100644 (file)
@@ -1313,7 +1313,7 @@ above.  We couldn't have done it without them.\n\n"
        (print-short "Jonathan Edwards" "edwards@intranet.com")
        (print-short "Eric Eide" "eeide@asylum.cs.utah.edu")
        (print-short "EKR" "ekr@terisa.com")
-       (print-short "Gunnar Evermann" "Gunnar.Evermann@nats.informatik.uni-hamburg.de")
+       (print-short "Gunnar Evermann" "ge204@eng.cam.ac.uk")
        (print-short "Oscar Figueiredo" "Oscar.Figueiredo@di.epfl.ch")
        (print-short "David Fletcher" "frodo@tsunami.com")
        (print-short "Paul Flinders" "ptf@delcam.co.uk")
index 928ab0a..be8df46 100644 (file)
@@ -611,7 +611,11 @@ This is normally set via `font-lock-defaults'.")
   '((((class color) (background dark)) (:foreground "light coral"))
     (((class color) (background light)) (:foreground "green4"))
     (t (:bold t)))
-  "Font Lock mode face used to highlight documentation strings."
+  "Font Lock mode face used to highlight documentation strings.
+This is currently supported only in Lisp-like modes, which are those
+with \"lisp\" or \"scheme\" in their name.  You can explicitly make
+a mode Lisp-like by putting a non-nil `font-lock-lisp-like' property
+on the major mode's symbol."
   :group 'font-lock-faces)
 
 (defface font-lock-keyword-face
index 13b953d..545f2c0 100644 (file)
@@ -1,3 +1,30 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-12-14  Andy Piper  <andy@xemacs.org>
+
+       * xlwtabs.c (TabsResize): reset need_layout so that we don't go
+       into infloop death.
+
+1999-12-14  Andy Piper  <andy@xemacs.org>
+
+       * xlwtabs.c (TabsSetValues): re-allocate GCs if font has changed.
+
+1999-12-13  Andy Piper  <andy@xemacs.org>
+
+       * xlwtabs.c (TabsResize): We need to expose the tabs after
+       clearing the window they are in.
+
+1999-12-08  Andy Piper  <andy@xemacs.org>
+
+       * xlwtabs.c: sync with Tabs 2.1.
+
+1999-12-07  Andy Piper  <andy@xemacs.org>
+
+       * lwlib-Xlw.c (lw_lucid_widget_p): make sure we pick up the
+       clip-window as well.
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 6c3cd34..8063c7c 100644 (file)
@@ -524,6 +524,10 @@ lw_lucid_widget_p (Widget widget)
       XtClass (((CompositeWidget)widget)->composite.children [0])
        == xlwMenuWidgetClass;
 #endif
+#ifdef HAVE_WIDGETS
+  if (the_class == emacsManagerWidgetClass)
+    return True;
+#endif
   return False;
 }
 
index 559fc91..fa10a60 100644 (file)
@@ -18,7 +18,7 @@
  the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  Boston, MA 02111-1307, USA.  */
  
- /* Synched up with: Tabs.c 1.23 */
+ /* Synched up with: Tabs.c 1.25 */
  
  /*
  * Tabs.c - Index Tabs composite widget
@@ -568,7 +568,11 @@ TabsResize(Widget w)
                          cw-bw*2,ch-bw*2, bw) ;
            }
          if( XtIsRealized(w) )
-           XClearWindow(XtDisplay((Widget)tw), XtWindow((Widget)tw)) ;
+           {
+             XClearWindow(XtDisplay((Widget)tw), XtWindow((Widget)tw)) ;
+             tw->tabs.needs_layout = False ;
+             XtClass(tw)->core_class.expose((Widget)tw,NULL,None) ;
+           }
        }
 
        tw->tabs.needs_layout = False ;
@@ -629,7 +633,8 @@ TabsSetValues(Widget current, Widget request, Widget new,
        /* TODO: if any color changes, need to recompute GCs and redraw */
 
        if( tw->core.background_pixel != curtw->core.background_pixel ||
-           tw->core.background_pixmap != curtw->core.background_pixmap )
+           tw->core.background_pixmap != curtw->core.background_pixmap ||
+           tw->tabs.font != curtw->tabs.font )
          if( XtIsRealized(new) )
          {
            TabsFreeGCs(tw) ;
@@ -644,7 +649,8 @@ TabsSetValues(Widget current, Widget request, Widget new,
         * Window system will handle the redraws.
         */
 
-       if( tw->tabs.topWidget != curtw->tabs.topWidget ) {
+       if( tw->tabs.topWidget != curtw->tabs.topWidget ) 
+       {
          if( XtIsRealized(tw->tabs.topWidget) )
          {
            Widget              w = tw->tabs.topWidget ;
@@ -661,9 +667,9 @@ TabsSetValues(Widget current, Widget request, Widget new,
 
            needRedraw = True ;
          }
-         }
          else
            tw->tabs.needs_layout = True ;
+       }
 
        return needRedraw ;
 }
@@ -827,7 +833,8 @@ TabsGeometryManager(Widget w, XtWidgetGeometry *req, XtWidgetGeometry *reply)
 #ifdef COMMENT
          MaxChild(tw, &cw, &ch) ;
 #endif /* COMMENT */
-         PreferredSize2(tw, tw->tabs.max_cw,tw->tabs.max_ch, &wid, &hgt) ;
+         PreferredSize2(tw,
+               cw=tw->tabs.max_cw, ch=tw->tabs.max_ch, &wid, &hgt) ;
 
          /* Ask to be resized to accommodate. */
 
@@ -1082,9 +1089,9 @@ TabsPage(Widget w, XEvent *event, String *params, Cardinal *num_params)
        switch( params[0][0] ) {
          case 'u':             /* up */
          case 'U':
-           if( idx == 0 )
-             idx = nc ;
-           newtop = tw->composite.children[idx-1] ;
+           if( --idx < 0 )
+             idx = nc-1 ;
+           newtop = tw->composite.children[idx] ;
            break ;
 
          case 'd':             /* down */
@@ -1096,6 +1103,7 @@ TabsPage(Widget w, XEvent *event, String *params, Cardinal *num_params)
 
          case 'h':
          case 'H':
+         default:
              newtop = tw->composite.children[0] ;
              break ;
 
@@ -1141,6 +1149,7 @@ TabsHighlight(Widget w, XEvent *event, String *params, Cardinal *num_params)
 
        else
        {
+         /* find index of currently highlit child */
          for(idx=0, childP=tw->composite.children; idx < nc; ++idx, ++childP )
            if( tw->tabs.hilight == *childP )
              break ;
@@ -1148,9 +1157,9 @@ TabsHighlight(Widget w, XEvent *event, String *params, Cardinal *num_params)
          switch( params[0][0] ) {
            case 'u':           /* up */
            case 'U':
-             if( idx == 0 )
-               idx = nc ;
-             newhl = tw->composite.children[idx-1] ;
+             if( --idx < 0 )
+               idx = nc-1 ;
+             newhl = tw->composite.children[idx] ;
              break ;
 
            case 'd':           /* down */
@@ -1169,6 +1178,10 @@ TabsHighlight(Widget w, XEvent *event, String *params, Cardinal *num_params)
            case 'E':
                newhl = tw->composite.children[nc-1] ;
                break ;
+
+           default:
+               newhl = tw->tabs.hilight ;
+               break ;
          }
        }
 
index 14d05d4..796c1b0 100644 (file)
@@ -1,3 +1,13 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-12-07  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * xemacs/startup.texi (Startup Paths): fix typo: EMACSPACKAGEPATH
+       instead of PACKAGEPATH 
+       From Marcus Harnisch <harnisch@mikrom.de>
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 35cba95..263feb5 100644 (file)
@@ -89,7 +89,7 @@ they are locate the early, late, and last package hierarchies
 respectively.  If two components are present, they locate the early and
 late hierarchies.  If only one component is present, it locates the late
 hierarchy.  At run time, the package path may also be specified via the
-@code{PACKAGEPATH} environment variable.
+@code{EMACSPACKAGEPATH} environment variable.
 
 An XEmacs package is laid out just like a normal installed XEmacs lisp
 directory.  It may have @file{lisp}, @file{etc}, @file{info}, and
index 5053ad5..3f537e4 100644 (file)
@@ -1,3 +1,12 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-11-28  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * xemacs.mak (depend): Only update `depend' if there were changes.
+       Use "perl ./make-src-depend" instead of "mkdepend".
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 8a8254b..9090b73 100644 (file)
@@ -1229,7 +1229,9 @@ distclean:
        $(DEL) *.info*
 
 depend:
-       mkdepend -f xemacs.mak -p$(OUTDIR)\ -o.obj -w9999 -- $(TEMACS_CPP_FLAGS) --  $(DOC_SRC1) $(DOC_SRC2) $(DOC_SRC3) $(DOC_SRC4) $(DOC_SRC5) $(DOC_SRC6) $(DOC_SRC7) $(DOC_SRC8) $(DOC_SRC9) $(LASTFILE_SRC)\lastfile.c $(LIB_SRC)\make-docfile.c $(LIB_SRC)\run.c
+       cd $(SRCDIR)
+       perl ./make-src-depend > depend.tmp
+       perl -MFile::Compare -e "compare('depend.tmp', 'depend') && rename('depend.tmp', 'depend') or unlink('depend.tmp')"
 
 $(XEMACS)\Installation:
        @type > $(XEMACS)\Installation <<
index c5a0fe9..03a4b77 100644 (file)
@@ -1,3 +1,65 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
+1999-12-13  Martin Buchholz  <martin@xemacs.org>
+
+       * sound.c (vars_of_sound): Provide esd-sound if HAVE_ESD_SOUND
+
+       * nas.c: Fix compiler warnings.  Ansify.  C++ compilation support.
+
+1999-12-13  Kazuyuki IENAGA <ienaga@jsys.co.jp>
+
+       * input-method-xlib.c: Make sure src/ does not use Athena, except
+       indirectly through lwlib.
+
+1999-12-13  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+       * dbxrc (pobj): Add opaque_ptr, remove opaque_list.
+
+1999-12-10  Shenghuo ZHU <zsh@cs.rochester.edu>
+
+       * file-coding.c (add_coding_system_to_list_mapper): 
+       - (coding-system-list) should list aliases correctly.
+
+1999-12-07  Andy Piper  <andy@xemacs.org>
+
+       * fileio.c (vars_of_fileio): directory separator fix from Mike Alexander.
+       * windowsnt.h (ditto):
+
+1999-11-27  Adrian Aichner  <aichner@ecf.teradyne.com>
+
+       * sysfile.h: Encapsulate `fstat' for Windows NT just like stat to
+       get consistent file modification times.
+
+       * sysdep.h: Declare `wait_for_termination' to use process handle,
+       not PID, on Windows NT native.
+
+       * sysdep.c (wait_for_termination): Use process handle, not PID, on
+       Windows NT native.  Set exit code correctly on Windows NT.
+       (sys_subshell): Use process handle, not PID,
+       on Windows NT native.
+       (sys_fstat): Add ENCAPSULATE_FSTAT for Windows NT.
+
+       * process-nt.c (nt_create_process): Remove negative pid hack for
+       Windows 95.
+       (nt_send_process): Declare vol_proc volatile.
+       (get_internet_address): warn_when_safe if IP address cannot be
+       found.
+       (nt_open_network_stream): warn_when_safe if network stream fails
+       to open.
+       
+       * ntproc.c (create_child): Remove negative pid hack for Windows
+       95.  Remove incorrect and unnecessary USE_UNION_TYPE handling.
+
+       * nt.c (fstat): Encapsulate for Windows NT just like stat to get
+       consistent file modification times.
+
+       * callproc.c (call_process_cleanup): Use process handle, not PID,
+       on Windows NT native.
+       (Fcall_process_internal): Ditto.  Close fd_error in parent.  Don't
+       check for negative pid on Windows NT/9[58].
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 2b45793..8694b38 100644 (file)
@@ -104,6 +104,9 @@ call_process_cleanup (Lisp_Object fdpid)
 {
   int fd = XINT (Fcar (fdpid));
   int pid = XINT (Fcdr (fdpid));
+#ifdef WINDOWSNT
+  HANDLE pHandle;
+#endif
 
   if (!call_process_exited &&
       EMACS_KILLPG (pid, SIGINT) == 0)
@@ -114,7 +117,17 @@ call_process_cleanup (Lisp_Object fdpid)
     /* #### "c-G" -- need non-consing Single-key-description */
     message ("Waiting for process to die...(type C-g again to kill it instantly)");
 
+#ifdef WINDOWSNT
+    pHandle = OpenProcess(PROCESS_ALL_ACCESS, 0, pid);
+    if (pHandle == NULL)
+      {
+       warn_when_safe (Qprocess, Qwarning,
+                       "cannot open process (PID %d) for cleanup", pid);
+      }
+    wait_for_termination (pHandle);
+#else
     wait_for_termination (pid);
+#endif
 
     /* "Discard" the unwind protect.  */
     XCAR (fdpid) = Qnil;
@@ -170,6 +183,9 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you
   Lisp_Object infile, buffer, current_dir, display, path;
   int fd[2];
   int filefd;
+#ifdef WINDOWSNT
+  HANDLE pHandle;
+#endif
   int pid;
   char buf[16384];
   char *bufptr = buf;
@@ -359,6 +375,23 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you
 #ifdef WINDOWSNT
     pid = child_setup (filefd, fd1, fd_error, new_argv,
                        (char *) XSTRING_DATA (current_dir));
+    if (!INTP (buffer))
+      {
+       /* OpenProcess() as soon after child_setup as possible.  It's too
+          late once the process terminated. */
+       pHandle = OpenProcess(PROCESS_ALL_ACCESS, 0, pid);
+#if 0
+       if (pHandle == NULL)
+         {
+           /* #### seems to cause crash in unbind_to(...) below. APA */
+           warn_when_safe (Qprocess, Qwarning,
+                           "cannot open process to wait for");
+         }
+#endif
+      }
+    /* Close STDERR into the parent process.  We no longer need it. */
+    if (fd_error >= 0)
+      close (fd_error);
 #else  /* not WINDOWSNT */
     pid = fork ();
 
@@ -394,12 +427,14 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you
   if (!NILP (fork_error))
     signal_error (Qfile_error, fork_error);
 
+#ifndef WINDOWSNT
   if (pid < 0)
     {
       if (fd[0] >= 0)
        close (fd[0]);
       report_file_error ("Doing fork", Qnil);
     }
+#endif
 
   if (INTP (buffer))
     {
@@ -507,7 +542,11 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you
 
     QUIT;
     /* Wait for it to terminate, unless it already has.  */
+#ifdef WINDOWSNT
+    wait_for_termination (pHandle);
+#else
     wait_for_termination (pid);
+#endif
 
     /* Don't kill any children that the subprocess may have left behind
        when exiting.  */
index e44ca97..384b1e5 100644 (file)
@@ -931,7 +931,7 @@ reorganize_hash_table (Lisp_Hash_Table *ht)
 static void
 enlarge_hash_table (Lisp_Hash_Table *ht)
 {
-  size_t new_size = 
+  size_t new_size =
     hash_table_size ((size_t) ((double) ht->size * ht->rehash_size));
   resize_hash_table (ht, new_size);
 }
index adc0b0c..266505d 100644 (file)
@@ -437,7 +437,7 @@ union magic_data
 
 struct Lisp_Timeout
 {
-  struct lcrecord_header header; 
+  struct lcrecord_header header;
   int id; /* Id we use to identify the timeout over its lifetime */
   int interval_id; /* Id for this particular interval; this may
                      be different each time the timeout is
index 2755ad8..2814f49 100644 (file)
@@ -258,7 +258,7 @@ EXFUN (Fget_face, 1);
 
 extern Lisp_Object Qstrikethru, Vbuilt_in_face_specifiers, Vdefault_face;
 extern Lisp_Object Vleft_margin_face, Vpointer_face, Vright_margin_face;
-extern Lisp_Object Vtext_cursor_face, Vvertical_divider_face; 
+extern Lisp_Object Vtext_cursor_face, Vvertical_divider_face;
 extern Lisp_Object Vtoolbar_face, Vgui_element_face, Vwidget_face;
 
 void mark_all_faces_as_clean (void);
index 2bf225e..4ced792 100644 (file)
@@ -571,8 +571,7 @@ add_coding_system_to_list_mapper (Lisp_Object key, Lisp_Object value,
     (struct coding_system_list_closure *) coding_system_list_closure;
   Lisp_Object *coding_system_list = cscl->coding_system_list;
 
-  *coding_system_list = Fcons (XCODING_SYSTEM (value)->name,
-                              *coding_system_list);
+  *coding_system_list = Fcons (key, *coding_system_list);
   return 0;
 }
 
index 514c058..015cd00 100644 (file)
@@ -4333,5 +4333,9 @@ This variable affects the built-in functions only on Windows,
 on other platforms, it is initialized so that Lisp code can find out
 what the normal separator is.
 */ );
-  Vdirectory_sep_char = make_char ('/');
+#ifdef WINDOWSNT
+  Vdirectory_sep_char = make_char ('\\');
+#else
+   Vdirectory_sep_char = make_char ('/');
+#endif
 }
index b52eae9..bdd751d 100644 (file)
@@ -81,7 +81,6 @@ Boston, MA 02111-1307, USA.  */
 
 #ifdef THIS_IS_X11R6
 #include <X11/IntrinsicP.h>
-#include <X11/Xaw/XawImP.h>
 #endif
 
 #ifndef XIM_XLIB
@@ -323,9 +322,6 @@ XIM_init_frame (struct frame *f)
   static XtResource resources[] =
   {
     /*  name              class          represent'n   field    default value */
-#ifdef THIS_IS_X11R6
-    res(XtNinputMethod,   XtCInputMethod, XtRString,   inputmethod, (XtPointer) NULL),
-#endif
     res(XtNximStyles,     XtCXimStyles,  XtRXimStyles, styles,  (XtPointer) DefaultXIMStyles),
     res(XtNfontSet,       XtCFontSet,    XtRFontSet,   fontset, (XtPointer) XtDefaultFontSet),
     res(XtNximForeground, XtCForeground, XtRPixel,     fg,      (XtPointer) XtDefaultForeground),
index 35a4b89..0dc5e05 100644 (file)
@@ -237,7 +237,7 @@ extern int gc_in_progress;
 
     XD_LO_LINK
   Link in a linked list of objects of the same type.
-  
+
     XD_OPAQUE_PTR
   Pointer to undumpable data.  Must be NULL when dumping.
 
index b8abdfc..a338ad1 100644 (file)
--- a/src/nas.c
+++ b/src/nas.c
@@ -146,10 +146,18 @@ init_play (
 #else
           char *server
 #endif
+          );
+char *
+init_play (
+#ifdef XTOOLKIT
+          Display *display
+#else
+          char *server
+#endif
           )
 {
   char *err_message;
-  SIGTYPE (*old_sigpipe) ();
+  SIGTYPE (*old_sigpipe) (int);
 
 #ifdef XTOOLKIT
   char * server = DisplayString (display);
@@ -223,7 +231,7 @@ init_play (
   return NULL;
 }
 
-void
+static void
 close_down_play (void)
 
 {
@@ -238,7 +246,7 @@ close_down_play (void)
  \********************************************************************/
 
 static void
-doneCB (AuServer       *aud,
+doneCB (AuServer       *auserver,
        AuEventHandlerRec *handler,
        AuEvent        *ev,
        AuPointer       data)
@@ -274,23 +282,23 @@ do_caching_play (Sound s,
 
   if (list == NULL)
     {
-      unsigned char *my_buf;
+      AuPointer my_buf;
 
       if (buf==NULL)
        {
-         if ((my_buf=malloc (SoundNumBytes (s)))==NULL)
+         if ((my_buf= (AuPointer) malloc (SoundNumBytes (s)))==NULL)
            {
              return;
            }
 
-         if (SoundReadFile (my_buf, SoundNumBytes (s), s) != SoundNumBytes (s))
+         if (SoundReadFile ((char *) my_buf, SoundNumBytes (s), s) != SoundNumBytes (s))
            {
              free (my_buf);
              return;
            }
        }
       else
-       my_buf=buf;
+       my_buf = (AuPointer) buf;
 
       id = AuSoundCreateBucketFromData (aud, 
                                        s,
@@ -322,6 +330,7 @@ do_caching_play (Sound s,
 #endif /* CACHE_SOUNDS */
 
 
+void wait_for_sounds (void);
 void 
 wait_for_sounds (void)
 
@@ -335,11 +344,12 @@ wait_for_sounds (void)
     }
 }
 
+int play_sound_file (char *sound_file, int volume);
 int
 play_sound_file (char *sound_file,
                 int volume)
 {
-  SIGTYPE (*old_sigpipe) ();
+  SIGTYPE (*old_sigpipe) (int);
 
 #ifdef ROBUST_PLAY
   old_sigpipe=signal (SIGPIPE, sigpipe_handle);
@@ -427,6 +437,7 @@ play_sound_file (char *sound_file,
   return 1;
 }
 
+int play_sound_data (unsigned char *data, int length, int volume);
 int
 play_sound_data (unsigned char *data,
                 int length, 
@@ -434,7 +445,7 @@ play_sound_data (unsigned char *data,
 {
   Sound s;
   int offset;
-  SIGTYPE (*old_sigpipe) ();
+  SIGTYPE (*old_sigpipe) (int);
 
 #if !defined (XTEVENTS)
   AuEvent         ev;
@@ -613,11 +624,11 @@ CatchErrorAndJump (AuServer *old_aud,
 /* Create a name from the sound. */
 
 static char *
-NameFromData (CONST unsigned char *buf,
+NameFromData (CONST char *buf,
              int len)
 
 {
-  unsigned char name[9];
+  char name[9];
   int i;
   char *s;
 
@@ -642,11 +653,11 @@ NameFromData (CONST unsigned char *buf,
 
   if (i==8)
     {
-      strcpy (s=malloc (10), name);
+      strcpy (s = (char *) malloc (10), name);
     }
   else 
     {
-      strcpy (s=malloc (15), "short sound");
+      strcpy (s = (char *) malloc (15), "short sound");
     }
 
   return s;
@@ -729,15 +740,15 @@ SndOpenDataForReading (CONST char *data,
 /* These functions here are for faking file I/O from buffer. */
 
 /* The "file" position */
-static int file_posn;
+static size_t file_posn;
 /* The length of the "file" */
-static int file_len;
+static size_t file_len;
 /* The actual "file" data. */
-CONST static char* file_data;
+static CONST void* file_data;
 
 /* Like fopen, but for a buffer in memory */
 static void
-dopen(CONST char* data, int length)
+dopen (CONST void* data, size_t length)
 {
    file_data = data;
    file_len = length;
@@ -746,15 +757,13 @@ dopen(CONST char* data, int length)
 
 /* Like fread, but for a buffer in memory */
 static int
-dread(char* buf, int size, int nitems)
+dread (void* buf, size_t size, size_t nitems)
 {
-  int nread;
-
-  nread = size * nitems;
+  size_t nread = size * nitems;
   
   if (file_posn + nread <= file_len)
     {
-      memcpy(buf, file_data + file_posn, size * nitems);
+      memcpy(buf, (char *) file_data + file_posn, size * nitems);
       file_posn += nread;
       return nitems;
     }
@@ -766,19 +775,17 @@ dread(char* buf, int size, int nitems)
 
 /* Like fgetc, but for a buffer in memory */
 static int
-dgetc()
+dgetc (void)
 {
-  int ch;
-  
   if (file_posn < file_len)
-    return file_data[file_posn++];
+    return ((char *)file_data)[file_posn++];
   else
     return -1;
 }
 
 /* Like fseek, but for a buffer in memory */
 static int
-dseek(long offset, int from)
+dseek (long offset, int from)
 {
   if (from == 0)
     file_posn = offset;
@@ -791,7 +798,7 @@ dseek(long offset, int from)
 }
 
 /* Like ftell, but for a buffer in memory */
-static int
+static long
 dtell()
 {
   return file_posn;
@@ -981,20 +988,20 @@ SoundOpenDataForReading (unsigned char *data,
   if (!(s = (Sound) malloc (sizeof (SoundRec))))
     return NULL;
 
-  if ((s->formatInfo = SndOpenDataForReading (data, length)) != NULL)
+  if ((s->formatInfo = SndOpenDataForReading ((char *) data, length)) != NULL)
     {
-      if (!(SoundFileInfo[SoundFileFormatSnd].toSound) (s))
+      if (!((int(*)(Sound))(SoundFileInfo[SoundFileFormatSnd].toSound)) (s))
        {
-         SndCloseFile (s->formatInfo);
+         SndCloseFile ((SndInfo *) (s->formatInfo));
          free (s);
          return NULL;
        }
     }
-  else if ((s->formatInfo = WaveOpenDataForReading (data, length)) != NULL)
+  else if ((s->formatInfo = WaveOpenDataForReading ((char *) data, length)) != NULL)
     {
-      if (!(SoundFileInfo[SoundFileFormatWave].toSound) (s))
+      if (!((int(*)(Sound))(SoundFileInfo[SoundFileFormatWave].toSound)) (s))
        {
-         WaveCloseFile (s->formatInfo);
+         WaveCloseFile ((WaveInfo *) (s->formatInfo));
          free (s);
          return NULL;
        }
@@ -1002,4 +1009,3 @@ SoundOpenDataForReading (unsigned char *data,
 
   return s;
 }
-
index 2fa0319..0c99c25 100644 (file)
--- a/src/nt.c
+++ b/src/nt.c
@@ -1315,6 +1315,40 @@ generate_inode_val (const char * name)
 
 #endif
 
+/* Since stat is encapsulated on Windows NT, we need to encapsulate
+   the equally broken fstat as well. */
+int
+fstat (int handle, struct stat *buffer)
+{
+  int ret;
+  BY_HANDLE_FILE_INFORMATION lpFileInfo;
+  /* Initialize values */
+  buffer->st_mode = 0;
+  buffer->st_size = 0;
+  buffer->st_dev = 0;
+  buffer->st_rdev = 0;
+  buffer->st_atime = 0;
+  buffer->st_ctime = 0;
+  buffer->st_mtime = 0;
+  buffer->st_nlink = 0;
+  ret = GetFileInformationByHandle((HANDLE) handle, &lpFileInfo);
+  if (!ret)
+    {
+      return -1;
+    }
+  else
+    {
+      buffer->st_mtime = convert_time (lpFileInfo.ftLastWriteTime);
+      buffer->st_atime = convert_time (lpFileInfo.ftLastAccessTime);
+      if (buffer->st_atime == 0) buffer->st_atime = buffer->st_mtime;
+      buffer->st_ctime = convert_time (lpFileInfo.ftCreationTime);
+      if (buffer->st_ctime == 0) buffer->st_ctime = buffer->st_mtime;
+      buffer->st_size = lpFileInfo.nFileSizeLow;
+      buffer->st_nlink = (short) lpFileInfo.nNumberOfLinks;
+      return 0;
+    }
+}
+
 /* MSVC stat function can't cope with UNC names and has other bugs, so
    replace it with our own.  This also allows us to calculate consistent
    inode values without hacks in the main Emacs code. */
index 45a7db3..1546a74 100644 (file)
@@ -445,16 +445,8 @@ create_child (CONST char *exe, char *cmdline, char *env,
   cp->procinfo.hThread=NULL;
   cp->procinfo.hProcess=NULL;
 
-  /* Hack for Windows 95, which assigns large (ie negative) pids */
-  if (cp->pid < 0)
-    cp->pid = -cp->pid;
-
   /* pid must fit in a Lisp_Int */
-#ifdef USE_UNION_TYPE
-  cp->pid = (cp->pid & ((1U << VALBITS) - 1));
-#else
-  cp->pid = (cp->pid & VALMASK);
-#endif
+
 
   *pPid = cp->pid;
   
index 0e3eb7d..1bdc703 100644 (file)
@@ -658,9 +658,7 @@ nt_create_process (struct Lisp_Process *p,
        kick_status_notify ();
       }
 
-    /* Hack to support Windows 95 negative pids */
-    return ((int)pi.dwProcessId < 0
-           ? -(int)pi.dwProcessId : (int)pi.dwProcessId);
+    return ((int)pi.dwProcessId);
   }
 }
 
@@ -719,7 +717,8 @@ nt_update_status_if_terminated (struct Lisp_Process* p)
 static void
 nt_send_process (Lisp_Object proc, struct lstream* lstream)
 {
-  struct Lisp_Process *p = XPROCESS (proc);
+  volatile Lisp_Object vol_proc = proc;
+  struct Lisp_Process *volatile p = XPROCESS (proc);
 
   /* use a reasonable-sized buffer (somewhere around the size of the
      stream buffer) so as to avoid inundating the stream with blocked
@@ -749,7 +748,7 @@ nt_send_process (Lisp_Object proc, struct lstream* lstream)
          p->core_dumped = 0;
          p->tick++;
          process_tick++;
-         deactivate_process (proc);
+         deactivate_process (*((Lisp_Object *) (&vol_proc)));
          error ("Broken pipe error sending to process %s; closed it",
                 XSTRING_DATA (p->name));
        }
@@ -890,6 +889,12 @@ get_internet_address (Lisp_Object host, struct sockaddr_in *address,
          /* Ok, got an answer */
          if (WSAGETASYNCERROR(msg.lParam) == NO_ERROR)
            success = 1;
+         else
+           {
+             warn_when_safe(Qstream, Qwarning,
+                            "cannot get IP address for host \"%s\"",
+                            XSTRING_DATA (host));
+           }
          goto done;
        }
       else if (msg.message == WM_TIMER && msg.wParam == SOCK_TIMER_ID)
@@ -980,7 +985,6 @@ nt_open_network_stream (Lisp_Object name, Lisp_Object host, Lisp_Object service,
   retval = connect (s, (struct sockaddr *) &address, sizeof (address));
   if (retval != NO_ERROR && WSAGetLastError() != WSAEWOULDBLOCK)
     goto connect_failed;
-
   /* Wait while connection is established */
   while (1)
     {
@@ -1023,6 +1027,10 @@ nt_open_network_stream (Lisp_Object name, Lisp_Object host, Lisp_Object service,
 
  connect_failed:  
   closesocket (s);
+  warn_when_safe(Qstream, Qwarning,
+                "failure to open network stream to host \"%s\" for service \"%s\"",
+                XSTRING_DATA (host),
+                XSTRING_DATA (service));
   report_file_error ("connection failed", list2 (host, name));
 }
 
index 37d88ea..04f2538 100644 (file)
@@ -97,7 +97,7 @@ typedef struct
 
    #### This should really be made smaller.
 */
-   
+
 typedef struct rune rune;
 struct rune
 {
@@ -121,12 +121,12 @@ struct rune
                                   this. */
                                 /* #### This isn't used as an rvalue anywhere!
                                    remove! */
-                                   
-  
+
+
   short xpos;                  /* horizontal starting position in pixels */
   short width;                 /* pixel width of rune */
-       
-  
+
+
   unsigned char cursor_type;   /* is this rune covered by the cursor? */
   unsigned char type;          /* type of rune object */
                                 /* We used to do bitfields here, but if I
index 023e038..f602178 100644 (file)
@@ -125,7 +125,8 @@ typedef int pid_t;
 /* XEmacs file I/O for DOS text files requires FILE_CODING */
 #define FILE_CODING
 
-#define DIRECTORY_SEP '\\'
+extern Lisp_Object Vdirectory_sep_char;
+#define DIRECTORY_SEP ((char)XCHARVAL(Vdirectory_sep_char))
 
 /* Define this to be the separator between devices and paths */
 #define DEVICE_SEP ':'
index c9fe1b0..09e21fb 100644 (file)
@@ -562,6 +562,9 @@ vars_of_sound (void)
 #ifdef HAVE_NAS_SOUND
   Fprovide (intern ("nas-sound"));
 #endif
+#ifdef HAVE_ESD_SOUND
+  Fprovide (intern ("esd-sound"));
+#endif
 
   DEFVAR_INT ("bell-volume", &bell_volume /*
 *How loud to be, from 0 to 100.
index 607d2e3..7f5486b 100644 (file)
@@ -234,8 +234,11 @@ wait_without_blocking (void)
 #endif /* NO_SUBPROCESSES */
 
 
-void
-wait_for_termination (int pid)
+#ifdef WINDOWSNT
+void wait_for_termination (HANDLE pHandle)
+#else
+void wait_for_termination (int pid)
+#endif
 {
   /* #### With the new improved SIGCHLD handling stuff, there is much
      less danger of race conditions and some of the comments below
@@ -345,6 +348,49 @@ wait_for_termination (int pid)
 
      Since implementations may add their own error indicators on top,
      we ignore it by default.  */
+#elif defined (WINDOWSNT)
+  int ret = 0, status = 0;
+  if (pHandle == NULL)
+    {
+      warn_when_safe (Qprocess, Qwarning, "Cannot wait for unknown process to terminate");
+      return;
+    }
+  do
+    {
+      QUIT;
+      ret = WaitForSingleObject(pHandle, 100);
+    }
+  while (ret == WAIT_TIMEOUT);
+  if (ret == WAIT_FAILED)
+    {
+      warn_when_safe (Qprocess, Qwarning, "waiting for process failed");
+    }
+  if (ret == WAIT_ABANDONED)
+    {
+      warn_when_safe (Qprocess, Qwarning,
+                     "process to wait for has been abandoned");
+    }
+  if (ret == WAIT_OBJECT_0)
+    {
+      ret = GetExitCodeProcess(pHandle, &status);
+      if (ret)
+       {
+         synch_process_alive = 0;
+         synch_process_retcode = status;
+       }
+      else
+       {
+         /* GetExitCodeProcess() didn't return a valid exit status,
+            nothing to do.  APA */
+         warn_when_safe (Qprocess, Qwarning,
+                         "failure to obtain process exit value");
+       }
+    }
+  if (pHandle != NULL && !CloseHandle(pHandle)) 
+    {
+      warn_when_safe (Qprocess, Qwarning,
+                     "failure to close unknown process");
+    }
 #elif defined (EMACS_BLOCK_SIGNAL) && !defined (BROKEN_WAIT_FOR_SIGNAL) && defined (SIGCHLD)
   while (1)
     {
@@ -376,7 +422,7 @@ wait_for_termination (int pid)
           Try defining BROKEN_WAIT_FOR_SIGNAL. */
        EMACS_WAIT_FOR_SIGNAL (SIGCHLD);
     }
-#else /* not HAVE_WAITPID and (not EMACS_BLOCK_SIGNAL or BROKEN_WAIT_FOR_SIGNAL) */
+#else /* not HAVE_WAITPID and not WINDOWSNT and (not EMACS_BLOCK_SIGNAL or BROKEN_WAIT_FOR_SIGNAL) */
   /* This approach is kind of cheesy but is guaranteed(?!) to work
      for all systems. */
   while (1)
@@ -578,7 +624,11 @@ sys_getpid (void)
 static void
 sys_subshell (void)
 {
+#ifdef WINDOWSNT
+  HANDLE pid;
+#else
   int pid;
+#endif
   struct save_signal saved_handlers[5];
   Lisp_Object dir;
   unsigned char *str = 0;
@@ -617,7 +667,7 @@ sys_subshell (void)
  xyzzy:
 
 #ifdef WINDOWSNT
-  pid = -1;
+  pid = NULL;
 #else /* not WINDOWSNT */
 
   pid = fork ();
@@ -651,7 +701,7 @@ sys_subshell (void)
 #ifdef WINDOWSNT
       /* Waits for process completion */
       pid = _spawnlp (_P_WAIT, sh, sh, NULL);
-      if (pid == -1)
+      if (pid == NULL)
         write (1, "Can't execute subshell", 22);
 
 #else   /* not WINDOWSNT */
@@ -3038,6 +3088,15 @@ sys_readlink (CONST char *path, char *buf, size_t bufsiz)
 #endif /* ENCAPSULATE_READLINK */
 
 
+#ifdef ENCAPSULATE_FSTAT
+int
+sys_fstat (int fd, struct stat *buf)
+{
+  return fstat (fd, buf);
+}
+#endif /* ENCAPSULATE_FSTAT */
+
+
 #ifdef ENCAPSULATE_STAT
 int
 sys_stat (CONST char *path, struct stat *buf)
index 04432e9..e4c3296 100644 (file)
@@ -44,7 +44,12 @@ Bufbyte get_eof_char (int fd);
 
 /* Wait for subprocess with process id `pid' to terminate and
    make sure it will get eliminated (not remain forever as a zombie) */
+#ifdef WINDOWSNT
+#include <windows.h>
+void wait_for_termination (HANDLE pid);
+#else
 void wait_for_termination (int pid);
+#endif
 
 /* flush any pending output
  * (may flush input as well; it does not matter the way we use it)
index aee0223..3616ef6 100644 (file)
@@ -26,7 +26,7 @@ Boston, MA 02111-1307, USA.  */
 
 #ifdef SYSV_SYSTEM_DIR
 # include <dirent.h>
-#elif defined (NONSYSTEM_DIR_LIBRARY) 
+#elif defined (NONSYSTEM_DIR_LIBRARY)
 # include "ndir.h"
 #elif defined (MSDOS)
 # include <dirent.h>
index e421d79..cc8f2de 100644 (file)
@@ -380,6 +380,18 @@ int sys_readlink (CONST char *path, char *buf, size_t bufsiz);
 # define sys_readlink readlink
 #endif
 
+#ifdef ENCAPSULATE_FSTAT
+int sys_fstat (int fd, struct stat *buf);
+#endif
+#if defined (ENCAPSULATE_FSTAT) && !defined (DONT_ENCAPSULATE)
+# undef fstat
+/* Need to use arguments to avoid messing with struct stat */
+# define fstat(fd, buf) sys_fstat (fd, buf)
+#endif
+#if !defined (ENCAPSULATE_FSTAT) && defined (DONT_ENCAPSULATE)
+# define sys_fstat fstat
+#endif
+
 #ifdef ENCAPSULATE_STAT
 int sys_stat (CONST char *path, struct stat *buf);
 #endif
index a2c5b36..c72e0c5 100644 (file)
@@ -338,7 +338,7 @@ Boston, MA 02111-1307, USA.  */
    if we're run from sh. */
 #  define EMACS_SET_PROCESS_GROUP(pg)
 #elif defined(__MINGW32__)
-#  define EMACS_SEPARATE_PROCESS_GROUP() 
+#  define EMACS_SEPARATE_PROCESS_GROUP()
 #else
 /* Under NeXTstep, a process group of 0 is not the same as specifying
    your own process ID, so we go ahead and specify it explicitly. */
index 5265be8..d238bff 100644 (file)
@@ -1,3 +1,7 @@
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.24 is released.
+
 1999-12-07  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.23 is released.
index 53a3857..d9dac41 100644 (file)
@@ -2,8 +2,8 @@
 emacs_is_beta=t
 emacs_major_version=21
 emacs_minor_version=2
-emacs_beta_version=23
-xemacs_codename="Hebe"
+emacs_beta_version=24
+xemacs_codename="Hecate"
 infodock_major_version=4
 infodock_minor_version=0
 infodock_build_version=8