#!/bin/sh #### Patch script - GNU Emacs - version 20.6 to 20.7. #### This file contains patches to turn version 20.6 of GNU Emacs into #### 20.7. To apply them, cd to the top of the Emacs source tree, and #### then type 'sh '. #### After this script applies the patches, it will attempt to use an #### existing Emacs to recompile the changed Emacs Lisp files. (You may #### use the environment variable $emacs to specify the location of the #### binary, if it's not in your search path.) When this is finished, #### you can build the new Emacs version. #### We don't include patches for Info files since you can #### regenerate them from the Texinfo files that we do include. #### To update the changed info files, do #### (cd man; make) if [ "$0" = sh -o ! -f "$0" ]; then echo "use \`sh PATCHKIT', not \`sh &2 exit 1 fi if [ -d lisp ] ; then me=$0 elif [ -d emacs-20.6/lisp ] ; then cd emacs-20.6 case $0 in /*) me=$0;; *) me=../$0;; esac else (echo "$0: In order to apply this patch, the current directory" echo "must be the top of the Emacs distribution tree.") >&2 exit 1 fi ### moves and renames #none tail +66 $me | patch -p1 cd lisp for e in $emacs ../src/emacs emacs emacs20 emacs-20 ''; do if [ -n "$e" ]; then v=`$e --version /dev/null | sed -e 's/.* //' -e 's/\.[0-9]*$//'` case $v in 20.6*) break;; esac fi done if [ -z "$e" ]; then (echo "I can't find an Emacs to execute." echo "You'll have to byte-compile the lisp directory by hand.") >&2 exit 0 fi echo "byte compiling with $e (version $v)..." >&2 loadpath=${TMPDIR-/tmp}/$$.el trap "rm -f $loadpath; exit 1" 1 2 3 15 echo "(setq load-path (cons \"`pwd`\" load-path))" >$loadpath # First do the new files, and any older files that might need to be compiled # in a particular order. Then do the rest of the directory. list= for f in $list; do echo Compiling $f... $e -batch -l $loadpath -f batch-byte-compile $f done $e -batch -l $loadpath -f batch-byte-recompile-directory . rm $loadpath exit 0 diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/ChangeLog emacs-20.7/ChangeLog *** emacs-20.6/ChangeLog Sat Feb 26 11:17:01 2000 --- emacs-20.7/ChangeLog Mon Jun 12 21:37:55 2000 *************** *** 1,2 **** --- 1,14 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + + 2000-06-05 Gerd Moellmann + + * configure.in: Add powerpc*-*-linux-gnu*. + + 2000-05-20 NIIBE Yutaka + + * configure.in: Check for grandpt and getpt. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/README emacs-20.7/README *** emacs-20.6/README Sat Feb 26 11:33:56 2000 --- emacs-20.7/README Mon Jun 12 21:11:55 2000 *************** *** 1,3 **** ! This directory tree holds version 20.6 of GNU Emacs, the extensible, customizable, self-documenting real-time display editor. --- 1,3 ---- ! This directory tree holds version 20.7 of GNU Emacs, the extensible, customizable, self-documenting real-time display editor. diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/configure emacs-20.7/configure *** emacs-20.6/configure Sat Feb 26 13:07:06 2000 --- emacs-20.7/configure Mon Jun 12 22:05:56 2000 *************** case "${canonical}" in *** 1178,1181 **** --- 1178,1186 ---- ;; + ## Macintosh PowerPC + powerpc*-*-linux-gnu* ) + machine=macppc opsys=gnu-linux + ;; + ## Masscomp machines m68*-masscomp-rtu* ) *************** case ${with_gcc} in *** 1609,1613 **** set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1612: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1614,1618 ---- set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1617: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** if test -z "$CC"; then *** 1639,1643 **** set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1642: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1644,1648 ---- set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1647: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** fi *** 1690,1694 **** set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1693: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1695,1699 ---- set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:1698: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** fi *** 1722,1726 **** echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 ! echo "configure:1725: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c --- 1727,1731 ---- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 ! echo "configure:1730: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c *************** cross_compiling=$ac_cv_prog_cc_cross *** 1733,1742 **** cat > conftest.$ac_ext << EOF ! #line 1736 "configure" #include "confdefs.h" main(){return(0);} EOF ! if { (eval echo configure:1741: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. --- 1738,1747 ---- cat > conftest.$ac_ext << EOF ! #line 1741 "configure" #include "confdefs.h" main(){return(0);} EOF ! if { (eval echo configure:1746: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. *************** if test $ac_cv_prog_cc_works = no; then *** 1764,1773 **** fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 ! echo "configure:1767: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 ! echo "configure:1772: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1769,1778 ---- fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 ! echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 ! echo "configure:1777: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 1778,1782 **** #endif EOF ! if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1781: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else --- 1783,1787 ---- #endif EOF ! if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1786: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else *************** ac_save_CFLAGS="$CFLAGS" *** 1797,1801 **** CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 ! echo "configure:1800: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1802,1806 ---- CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 ! echo "configure:1805: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** fi *** 1877,1881 **** echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 ! echo "configure:1880: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 1882,1886 ---- echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 ! echo "configure:1885: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** fi *** 1898,1902 **** echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 ! echo "configure:1901: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then --- 1903,1907 ---- echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 ! echo "configure:1906: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then *************** else *** 1913,1917 **** # not just through cpp. cat > conftest.$ac_ext < --- 1918,1922 ---- # not just through cpp. cat > conftest.$ac_ext < *************** Syntax Error *** 1919,1923 **** EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:1922: \"$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 --- 1924,1928 ---- EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:1927: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then *************** else *** 1930,1934 **** CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < --- 1935,1939 ---- CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < *************** Syntax Error *** 1936,1940 **** EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:1939: \"$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 --- 1941,1945 ---- EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:1944: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then *************** else *** 1947,1951 **** CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < --- 1952,1956 ---- CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < *************** Syntax Error *** 1953,1957 **** EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:1956: \"$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 --- 1958,1962 ---- EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:1961: \"$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 *************** echo "$ac_t""$CPP" 1>&6 *** 1989,1993 **** # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ! echo "configure:1992: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then --- 1994,1998 ---- # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ! echo "configure:1997: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then *************** do *** 2046,2050 **** set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2049: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 2051,2055 ---- set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ! echo "configure:2054: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** test -n "$YACC" || YACC="yacc" *** 2078,2084 **** echo $ac_n "checking for AIX""... $ac_c" 1>&6 ! echo "configure:2081: checking for AIX" >&5 cat > conftest.$ac_ext <&6 ! echo "configure:2086: checking for AIX" >&5 cat > conftest.$ac_ext <&6 ! echo "configure:2109: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2119: \"$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 --- 2111,2125 ---- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:2114: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2124: \"$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 *************** done *** 2143,2152 **** echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 ! echo "configure:2146: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2148,2157 ---- echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 ! echo "configure:2151: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** else *** 2156,2160 **** EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2159: \"$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 --- 2161,2165 ---- EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2164: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then *************** if test $ac_cv_header_stdc = yes; then *** 2173,2177 **** # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < --- 2178,2182 ---- # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < *************** if test $ac_cv_header_stdc = yes; then *** 2191,2195 **** # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < --- 2196,2200 ---- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < *************** if test "$cross_compiling" = yes; then *** 2212,2216 **** else cat > conftest.$ac_ext < --- 2217,2221 ---- else cat > conftest.$ac_ext < *************** exit (0); } *** 2223,2227 **** EOF ! if { (eval echo configure:2226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : --- 2228,2232 ---- EOF ! if { (eval echo configure:2231: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : *************** fi *** 2247,2256 **** echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 ! echo "configure:2250: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2252,2261 ---- echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 ! echo "configure:2255: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** struct tm *tp; *** 2261,2265 **** ; return 0; } EOF ! if { (eval echo configure:2264: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes --- 2266,2270 ---- ; return 0; } EOF ! if { (eval echo configure:2269: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes *************** fi *** 2282,2291 **** echo $ac_n "checking for sys_siglist declaration in signal.h or unistd.h""... $ac_c" 1>&6 ! echo "configure:2285: checking for sys_siglist declaration in signal.h or unistd.h" >&5 if eval "test \"`echo '$''{'ac_cv_decl_sys_siglist'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2287,2296 ---- echo $ac_n "checking for sys_siglist declaration in signal.h or unistd.h""... $ac_c" 1>&6 ! echo "configure:2290: checking for sys_siglist declaration in signal.h or unistd.h" >&5 if eval "test \"`echo '$''{'ac_cv_decl_sys_siglist'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** char *msg = *(sys_siglist + 1); *** 2299,2303 **** ; return 0; } EOF ! if { (eval echo configure:2302: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_decl_sys_siglist=yes --- 2304,2308 ---- ; return 0; } EOF ! if { (eval echo configure:2307: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_decl_sys_siglist=yes *************** fi *** 2321,2330 **** echo $ac_n "checking for struct utimbuf""... $ac_c" 1>&6 ! echo "configure:2324: checking for struct utimbuf" >&5 if eval "test \"`echo '$''{'emacs_cv_struct_utimbuf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:2329: checking for struct utimbuf" >&5 if eval "test \"`echo '$''{'emacs_cv_struct_utimbuf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* emacs_cv_struct_utimbuf=yes --- 2350,2354 ---- ; return 0; } EOF ! if { (eval echo configure:2353: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* emacs_cv_struct_utimbuf=yes *************** fi *** 2366,2375 **** echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 ! echo "configure:2369: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2371,2380 ---- echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 ! echo "configure:2374: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** int i; *** 2388,2392 **** ; return 0; } EOF ! if { (eval echo configure:2391: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void --- 2393,2397 ---- ; return 0; } EOF ! if { (eval echo configure:2396: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void *************** EOF *** 2408,2417 **** echo $ac_n "checking for struct timeval""... $ac_c" 1>&6 ! echo "configure:2411: checking for struct timeval" >&5 if eval "test \"`echo '$''{'emacs_cv_struct_timeval'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:2416: checking for struct timeval" >&5 if eval "test \"`echo '$''{'emacs_cv_struct_timeval'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* emacs_cv_struct_timeval=yes --- 2434,2438 ---- ; return 0; } EOF ! if { (eval echo configure:2437: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* emacs_cv_struct_timeval=yes *************** fi *** 2451,2460 **** echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 ! echo "configure:2454: checking whether struct tm is in sys/time.h or time.h" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2456,2465 ---- echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 ! echo "configure:2459: checking whether struct tm is in sys/time.h or time.h" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** struct tm *tp; tp->tm_sec; *** 2464,2468 **** ; return 0; } EOF ! if { (eval echo configure:2467: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h --- 2469,2473 ---- ; return 0; } EOF ! if { (eval echo configure:2472: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h *************** fi *** 2485,2494 **** echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6 ! echo "configure:2488: checking for tm_zone in struct tm" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm_zone'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2490,2499 ---- echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6 ! echo "configure:2493: checking for tm_zone in struct tm" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm_zone'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** struct tm tm; tm.tm_zone; *** 2498,2502 **** ; return 0; } EOF ! if { (eval echo configure:2501: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm_zone=yes --- 2503,2507 ---- ; return 0; } EOF ! if { (eval echo configure:2506: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm_zone=yes *************** EOF *** 2518,2527 **** else echo $ac_n "checking for tzname""... $ac_c" 1>&6 ! echo "configure:2521: checking for tzname" >&5 if eval "test \"`echo '$''{'ac_cv_var_tzname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 2523,2532 ---- else echo $ac_n "checking for tzname""... $ac_c" 1>&6 ! echo "configure:2526: checking for tzname" >&5 if eval "test \"`echo '$''{'ac_cv_var_tzname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** atoi(*tzname); *** 2533,2537 **** ; return 0; } EOF ! if { (eval echo configure:2536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_var_tzname=yes --- 2538,2542 ---- ; return 0; } EOF ! if { (eval echo configure:2541: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_var_tzname=yes *************** fi *** 2556,2565 **** echo $ac_n "checking for working const""... $ac_c" 1>&6 ! echo "configure:2559: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:2564: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes --- 2615,2619 ---- ; return 0; } EOF ! if { (eval echo configure:2618: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes *************** fi *** 2632,2636 **** echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 ! echo "configure:2635: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then --- 2637,2641 ---- echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 ! echo "configure:2640: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then *************** fi *** 2660,2664 **** echo $ac_n "checking for long file names""... $ac_c" 1>&6 ! echo "configure:2663: checking for long file names" >&5 if eval "test \"`echo '$''{'ac_cv_sys_long_file_names'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 2665,2669 ---- echo $ac_n "checking for long file names""... $ac_c" 1>&6 ! echo "configure:2668: checking for long file names" >&5 if eval "test \"`echo '$''{'ac_cv_sys_long_file_names'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** fi *** 2711,2715 **** # --without-x overrides everything else, but does not touch the cache. echo $ac_n "checking for X""... $ac_c" 1>&6 ! echo "configure:2714: checking for X" >&5 # Check whether --with-x or --without-x was given. --- 2716,2720 ---- # --without-x overrides everything else, but does not touch the cache. echo $ac_n "checking for X""... $ac_c" 1>&6 ! echo "configure:2719: checking for X" >&5 # Check whether --with-x or --without-x was given. *************** if test "$ac_x_includes" = NO; then *** 2773,2782 **** # First, try using that file with no special directory specified. cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2781: \"$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 --- 2778,2787 ---- # First, try using that file with no special directory specified. cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:2786: \"$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 *************** if test "$ac_x_libraries" = NO; then *** 2847,2851 **** LIBS="-l$x_direct_test_library $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* LIBS="$ac_save_LIBS" --- 2859,2863 ---- ; return 0; } EOF ! if { (eval echo configure:2862: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* LIBS="$ac_save_LIBS" *************** echo "checking the machine- and system-d *** 3029,3033 **** - which libraries the lib-src programs will want, and - whether the GNU malloc routines are usable" 1>&6 ! echo "configure:3032: checking the machine- and system-dependent files to find out - which libraries the lib-src programs will want, and - whether the GNU malloc routines are usable" >&5 --- 3034,3038 ---- - which libraries the lib-src programs will want, and - whether the GNU malloc routines are usable" 1>&6 ! echo "configure:3037: checking the machine- and system-dependent files to find out - which libraries the lib-src programs will want, and - whether the GNU malloc routines are usable" >&5 *************** GNU_MALLOC=yes *** 3159,3168 **** doug_lea_malloc=yes echo $ac_n "checking for malloc_get_state""... $ac_c" 1>&6 ! echo "configure:3162: checking for malloc_get_state" >&5 if eval "test \"`echo '$''{'ac_cv_func_malloc_get_state'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:3167: checking for malloc_get_state" >&5 if eval "test \"`echo '$''{'ac_cv_func_malloc_get_state'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc_get_state=yes" --- 3192,3196 ---- ; return 0; } EOF ! if { (eval echo configure:3195: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc_get_state=yes" *************** fi *** 3208,3217 **** echo $ac_n "checking for malloc_set_state""... $ac_c" 1>&6 ! echo "configure:3211: checking for malloc_set_state" >&5 if eval "test \"`echo '$''{'ac_cv_func_malloc_set_state'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:3216: checking for malloc_set_state" >&5 if eval "test \"`echo '$''{'ac_cv_func_malloc_set_state'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc_set_state=yes" --- 3241,3245 ---- ; return 0; } EOF ! if { (eval echo configure:3244: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc_set_state=yes" *************** fi *** 3257,3266 **** echo $ac_n "checking whether __after_morecore_hook exists""... $ac_c" 1>&6 ! echo "configure:3260: checking whether __after_morecore_hook exists" >&5 if eval "test \"`echo '$''{'emacs_cv_var___after_morecore_hook'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:3265: checking whether __after_morecore_hook exists" >&5 if eval "test \"`echo '$''{'emacs_cv_var___after_morecore_hook'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_var___after_morecore_hook=yes --- 3274,3278 ---- ; return 0; } EOF ! if { (eval echo configure:3277: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_var___after_morecore_hook=yes *************** LIBS="$libsrc_libs $LIBS" *** 3319,3323 **** echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6 ! echo "configure:3322: checking for dnet_ntoa in -ldnet" >&5 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 3324,3328 ---- echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6 ! echo "configure:3327: checking for dnet_ntoa in -ldnet" >&5 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 3327,3331 **** LIBS="-ldnet $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 3343,3347 ---- ; return 0; } EOF ! if { (eval echo configure:3346: \"$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" *************** fi *** 3367,3371 **** echo $ac_n "checking for main in -lXbsd""... $ac_c" 1>&6 ! echo "configure:3370: checking for main in -lXbsd" >&5 ac_lib_var=`echo Xbsd'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 3372,3376 ---- echo $ac_n "checking for main in -lXbsd""... $ac_c" 1>&6 ! echo "configure:3375: checking for main in -lXbsd" >&5 ac_lib_var=`echo Xbsd'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 3375,3379 **** LIBS="-lXbsd $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 3387,3391 ---- ; return 0; } EOF ! if { (eval echo configure:3390: \"$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" *************** fi *** 3404,3408 **** echo $ac_n "checking for cma_open in -lpthreads""... $ac_c" 1>&6 ! echo "configure:3407: checking for cma_open in -lpthreads" >&5 ac_lib_var=`echo pthreads'_'cma_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 3409,3413 ---- echo $ac_n "checking for cma_open in -lpthreads""... $ac_c" 1>&6 ! echo "configure:3412: checking for cma_open in -lpthreads" >&5 ac_lib_var=`echo pthreads'_'cma_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 3412,3416 **** LIBS="-lpthreads $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 3428,3432 ---- ; return 0; } EOF ! if { (eval echo configure:3431: \"$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" *************** fi *** 3452,3456 **** echo $ac_n "checking for XFree86 in /usr/X386""... $ac_c" 1>&6 ! echo "configure:3455: checking for XFree86 in /usr/X386" >&5 if test -d /usr/X386/include; then HAVE_XFREE386=yes --- 3457,3461 ---- echo $ac_n "checking for XFree86 in /usr/X386""... $ac_c" 1>&6 ! echo "configure:3460: checking for XFree86 in /usr/X386" >&5 if test -d /usr/X386/include; then HAVE_XFREE386=yes *************** if test "${HAVE_X11}" = "yes"; then *** 3481,3487 **** if test "${opsys}" = "gnu-linux"; then echo $ac_n "checking whether X on GNU/Linux needs -b to link""... $ac_c" 1>&6 ! echo "configure:3484: checking whether X on GNU/Linux needs -b to link" >&5 cat > conftest.$ac_ext <&6 ! echo "configure:3489: checking whether X on GNU/Linux needs -b to link" >&5 cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* xlinux_first_failure=no --- 3495,3499 ---- ; return 0; } EOF ! if { (eval echo configure:3498: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* xlinux_first_failure=no *************** rm -f conftest* *** 3510,3514 **** LIBS="$LIBS -b i486-linuxaout" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* xlinux_second_failure=no --- 3522,3526 ---- ; return 0; } EOF ! if { (eval echo configure:3525: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* xlinux_second_failure=no *************** XScreenNumberOfScreen XSetWMProtocols *** 3547,3556 **** do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:3550: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:3555: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" --- 3580,3584 ---- ; return 0; } EOF ! if { (eval echo configure:3583: \"$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" *************** fi *** 3603,3612 **** if test "${window_system}" = "x11"; then echo $ac_n "checking X11 version 6""... $ac_c" 1>&6 ! echo "configure:3606: checking X11 version 6" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_version_6'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 3608,3617 ---- if test "${window_system}" = "x11"; then echo $ac_n "checking X11 version 6""... $ac_c" 1>&6 ! echo "configure:3611: checking X11 version 6" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_version_6'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** fail; *** 3618,3622 **** ; return 0; } EOF ! if { (eval echo configure:3621: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_version_6=yes --- 3623,3627 ---- ; return 0; } EOF ! if { (eval echo configure:3626: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_version_6=yes *************** fi *** 3643,3652 **** if test "${window_system}" = "x11"; then echo $ac_n "checking X11 version 5""... $ac_c" 1>&6 ! echo "configure:3646: checking X11 version 5" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_version_5'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 3648,3657 ---- if test "${window_system}" = "x11"; then echo $ac_n "checking X11 version 5""... $ac_c" 1>&6 ! echo "configure:3651: checking X11 version 5" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_version_5'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** fail; *** 3658,3662 **** ; return 0; } EOF ! if { (eval echo configure:3661: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_version_5=yes --- 3663,3667 ---- ; return 0; } EOF ! if { (eval echo configure:3666: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_version_5=yes *************** if test x"${USE_X_TOOLKIT}" = xmaybe; th *** 3686,3695 **** if test x"${HAVE_X11R5}" = xyes; then echo $ac_n "checking X11 version 5 with Xaw""... $ac_c" 1>&6 ! echo "configure:3689: checking X11 version 5 with Xaw" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_version_5_with_xaw'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:3694: checking X11 version 5 with Xaw" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_version_5_with_xaw'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_version_5_with_xaw=yes --- 3705,3709 ---- ; return 0; } EOF ! if { (eval echo configure:3708: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_version_5_with_xaw=yes *************** X_TOOLKIT_TYPE=$USE_X_TOOLKIT *** 3728,3737 **** if test "${USE_X_TOOLKIT}" != "none"; then echo $ac_n "checking X11 toolkit version""... $ac_c" 1>&6 ! echo "configure:3731: checking X11 toolkit version" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_toolkit_version_6'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 3733,3742 ---- if test "${USE_X_TOOLKIT}" != "none"; then echo $ac_n "checking X11 toolkit version""... $ac_c" 1>&6 ! echo "configure:3736: checking X11 toolkit version" >&5 if eval "test \"`echo '$''{'emacs_cv_x11_toolkit_version_6'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** fail; *** 3743,3747 **** ; return 0; } EOF ! if { (eval echo configure:3746: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_toolkit_version_6=yes --- 3748,3752 ---- ; return 0; } EOF ! if { (eval echo configure:3751: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_x11_toolkit_version_6=yes *************** EOF *** 3773,3777 **** fi echo $ac_n "checking for XmuConvertStandardSelection in -lXmu""... $ac_c" 1>&6 ! echo "configure:3776: checking for XmuConvertStandardSelection in -lXmu" >&5 ac_lib_var=`echo Xmu'_'XmuConvertStandardSelection | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 3778,3782 ---- fi echo $ac_n "checking for XmuConvertStandardSelection in -lXmu""... $ac_c" 1>&6 ! echo "configure:3781: checking for XmuConvertStandardSelection in -lXmu" >&5 ac_lib_var=`echo Xmu'_'XmuConvertStandardSelection | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 3781,3785 **** LIBS="-lXmu $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 3797,3801 ---- ; return 0; } EOF ! if { (eval echo configure:3800: \"$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" *************** fi *** 3824,3833 **** if test "${USE_X_TOOLKIT}" = "MOTIF"; then echo $ac_n "checking for Motif version 2.1""... $ac_c" 1>&6 ! echo "configure:3827: checking for Motif version 2.1" >&5 if eval "test \"`echo '$''{'emacs_cv_motif_version_2_1'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 3829,3838 ---- if test "${USE_X_TOOLKIT}" = "MOTIF"; then echo $ac_n "checking for Motif version 2.1""... $ac_c" 1>&6 ! echo "configure:3832: checking for Motif version 2.1" >&5 if eval "test \"`echo '$''{'emacs_cv_motif_version_2_1'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** Motif version prior to 2.1. *** 3840,3844 **** ; return 0; } EOF ! if { (eval echo configure:3843: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* emacs_cv_motif_version_2_1=yes --- 3845,3849 ---- ; return 0; } EOF ! if { (eval echo configure:3848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* emacs_cv_motif_version_2_1=yes *************** EOF *** 3860,3864 **** echo $ac_n "checking for XpCreateContext in -lXp""... $ac_c" 1>&6 ! echo "configure:3863: checking for XpCreateContext in -lXp" >&5 ac_lib_var=`echo Xp'_'XpCreateContext | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 3865,3869 ---- echo $ac_n "checking for XpCreateContext in -lXp""... $ac_c" 1>&6 ! echo "configure:3868: checking for XpCreateContext in -lXp" >&5 ac_lib_var=`echo Xp'_'XpCreateContext | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 3868,3872 **** LIBS="-lXp $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 3884,3888 ---- ; return 0; } EOF ! if { (eval echo configure:3887: \"$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" *************** fi *** 3911,3920 **** # If netdb.h doesn't declare h_errno, we must declare it by hand. echo $ac_n "checking whether netdb declares h_errno""... $ac_c" 1>&6 ! echo "configure:3914: checking whether netdb declares h_errno" >&5 if eval "test \"`echo '$''{'emacs_cv_netdb_declares_h_errno'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 3916,3925 ---- # If netdb.h doesn't declare h_errno, we must declare it by hand. echo $ac_n "checking whether netdb declares h_errno""... $ac_c" 1>&6 ! echo "configure:3919: checking whether netdb declares h_errno" >&5 if eval "test \"`echo '$''{'emacs_cv_netdb_declares_h_errno'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** return h_errno; *** 3923,3927 **** ; return 0; } EOF ! if { (eval echo configure:3926: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_netdb_declares_h_errno=yes --- 3928,3932 ---- ; return 0; } EOF ! if { (eval echo configure:3931: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_netdb_declares_h_errno=yes *************** fi *** 3946,3955 **** # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 ! echo "configure:3949: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < --- 3951,3960 ---- # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 ! echo "configure:3954: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < *************** char *p = alloca(2 * sizeof(int)); *** 3958,3962 **** ; return 0; } EOF ! if { (eval echo configure:3961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes --- 3963,3967 ---- ; return 0; } EOF ! if { (eval echo configure:3966: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes *************** fi *** 3979,3988 **** echo $ac_n "checking for alloca""... $ac_c" 1>&6 ! echo "configure:3982: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:3987: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes --- 4017,4021 ---- ; return 0; } EOF ! if { (eval echo configure:4020: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes *************** EOF *** 4044,4053 **** echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 ! echo "configure:4047: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4052: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4077: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4082: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" --- 4107,4111 ---- ; return 0; } EOF ! if { (eval echo configure:4110: \"$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" *************** fi *** 4129,4133 **** echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 ! echo "configure:4132: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 4134,4138 ---- echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 ! echo "configure:4137: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** else *** 4137,4141 **** else cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 --- 4161,4165 ---- } EOF ! if { (eval echo configure:4164: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 *************** fi *** 4181,4185 **** # On HPUX 9.01, -lm does not contain logb, so check for sqrt. echo $ac_n "checking for sqrt in -lm""... $ac_c" 1>&6 ! echo "configure:4184: checking for sqrt in -lm" >&5 ac_lib_var=`echo m'_'sqrt | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 4186,4190 ---- # On HPUX 9.01, -lm does not contain logb, so check for sqrt. echo $ac_n "checking for sqrt in -lm""... $ac_c" 1>&6 ! echo "configure:4189: checking for sqrt in -lm" >&5 ac_lib_var=`echo m'_'sqrt | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 4189,4193 **** LIBS="-lm $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 4205,4209 ---- ; return 0; } EOF ! if { (eval echo configure:4208: \"$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" *************** fi *** 4230,4234 **** # Check for mail-locking functions in a "mail" library echo $ac_n "checking for maillock in -lmail""... $ac_c" 1>&6 ! echo "configure:4233: checking for maillock in -lmail" >&5 ac_lib_var=`echo mail'_'maillock | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 4235,4239 ---- # Check for mail-locking functions in a "mail" library echo $ac_n "checking for maillock in -lmail""... $ac_c" 1>&6 ! echo "configure:4238: checking for maillock in -lmail" >&5 ac_lib_var=`echo mail'_'maillock | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 4238,4242 **** LIBS="-lmail $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 4254,4258 ---- ; return 0; } EOF ! if { (eval echo configure:4257: \"$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" *************** EOF *** 4271,4280 **** do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4274: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4279: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" --- 4304,4308 ---- ; return 0; } EOF ! if { (eval echo configure:4307: \"$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" *************** do *** 4327,4341 **** ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:4330: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4340: \"$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 --- 4332,4346 ---- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 ! echo "configure:4335: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4345: \"$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 *************** utimes setrlimit setpgid getcwd shutdown *** 4375,4384 **** do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4378: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4383: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* 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 $ac_func(); ! ! 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_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:4411: \"$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 ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! ! # UNIX98 PTYs. ! for ac_func in grantpt ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4440: checking for $ac_func" >&5 ! if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then ! echo $ac_n "(cached) $ac_c" 1>&6 ! else ! cat > conftest.$ac_ext < ! /* 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 $ac_func(); ! ! 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_$ac_func) || defined (__stub___$ac_func) ! choke me ! #else ! $ac_func(); ! #endif ! ! ; return 0; } ! EOF ! if { (eval echo configure:4468: \"$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 ! echo "configure: failed program was:" >&5 ! cat conftest.$ac_ext >&5 ! rm -rf conftest* ! eval "ac_cv_func_$ac_func=no" ! fi ! rm -f conftest* ! fi ! ! if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then ! echo "$ac_t""yes" 1>&6 ! ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` ! cat >> confdefs.h <&6 ! fi ! done ! ! ! # PTY-related GNU extensions. ! for ac_func in getpt ! do ! echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 ! echo "configure:4497: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" --- 4522,4526 ---- ; return 0; } EOF ! if { (eval echo configure:4525: \"$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" *************** done *** 4433,4437 **** # than to expect to find it in ncurses. echo $ac_n "checking for tparm in -lncurses""... $ac_c" 1>&6 ! echo "configure:4436: checking for tparm in -lncurses" >&5 ac_lib_var=`echo ncurses'_'tparm | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 4552,4556 ---- # than to expect to find it in ncurses. echo $ac_n "checking for tparm in -lncurses""... $ac_c" 1>&6 ! echo "configure:4555: checking for tparm in -lncurses" >&5 ac_lib_var=`echo ncurses'_'tparm | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 4441,4445 **** LIBS="-lncurses $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 4571,4575 ---- ; return 0; } EOF ! if { (eval echo configure:4574: \"$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" *************** fi *** 4483,4487 **** # to return localized messages. echo $ac_n "checking for dgettext in -lintl""... $ac_c" 1>&6 ! echo "configure:4486: checking for dgettext in -lintl" >&5 ac_lib_var=`echo intl'_'dgettext | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then --- 4602,4606 ---- # to return localized messages. echo $ac_n "checking for dgettext in -lintl""... $ac_c" 1>&6 ! echo "configure:4605: checking for dgettext in -lintl" >&5 ac_lib_var=`echo intl'_'dgettext | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then *************** else *** 4491,4495 **** LIBS="-lintl $LIBS" cat > conftest.$ac_ext < conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" --- 4621,4625 ---- ; return 0; } EOF ! if { (eval echo configure:4624: \"$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" *************** fi *** 4531,4535 **** echo $ac_n "checking whether localtime caches TZ""... $ac_c" 1>&6 ! echo "configure:4534: checking whether localtime caches TZ" >&5 if eval "test \"`echo '$''{'emacs_cv_localtime_cache'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 --- 4650,4654 ---- echo $ac_n "checking whether localtime caches TZ""... $ac_c" 1>&6 ! echo "configure:4653: checking whether localtime caches TZ" >&5 if eval "test \"`echo '$''{'emacs_cv_localtime_cache'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 *************** emacs_cv_localtime_cache=yes *** 4541,4545 **** else cat > conftest.$ac_ext < --- 4660,4664 ---- else cat > conftest.$ac_ext < *************** main() *** 4576,4580 **** } EOF ! if { (eval echo configure:4579: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then emacs_cv_localtime_cache=no --- 4695,4699 ---- } EOF ! if { (eval echo configure:4698: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then emacs_cv_localtime_cache=no *************** fi *** 4604,4613 **** if test "x$HAVE_TIMEVAL" = xyes; then echo $ac_n "checking whether gettimeofday can accept two arguments""... $ac_c" 1>&6 ! echo "configure:4607: checking whether gettimeofday can accept two arguments" >&5 if eval "test \"`echo '$''{'emacs_cv_gettimeofday_two_arguments'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4726: checking whether gettimeofday can accept two arguments" >&5 if eval "test \"`echo '$''{'emacs_cv_gettimeofday_two_arguments'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_gettimeofday_two_arguments=yes --- 4750,4754 ---- ; return 0; } EOF ! if { (eval echo configure:4753: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* emacs_cv_gettimeofday_two_arguments=yes *************** fi *** 4654,4663 **** ok_so_far=yes echo $ac_n "checking for socket""... $ac_c" 1>&6 ! echo "configure:4657: checking for socket" >&5 if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 ! echo "configure:4776: checking for socket" >&5 if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_socket=yes" --- 4801,4805 ---- ; return 0; } EOF ! if { (eval echo configure:4804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_socket=yes" *************** if test $ok_so_far = yes; then *** 4705,4719 **** ac_safe=`echo "netinet/in.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for netinet/in.h""... $ac_c" 1>&6 ! echo "configure:4708: checking for netinet/in.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4718: \"$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 --- 4824,4838 ---- ac_safe=`echo "netinet/in.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for netinet/in.h""... $ac_c" 1>&6 ! echo "configure:4827: checking for netinet/in.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4837: \"$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 *************** if test $ok_so_far = yes; then *** 4741,4755 **** ac_safe=`echo "arpa/inet.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for arpa/inet.h""... $ac_c" 1>&6 ! echo "configure:4744: checking for arpa/inet.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4754: \"$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 --- 4860,4874 ---- ac_safe=`echo "arpa/inet.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for arpa/inet.h""... $ac_c" 1>&6 ! echo "configure:4863: checking for arpa/inet.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" ! { (eval echo configure:4873: \"$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 diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/configure.in emacs-20.7/configure.in *** emacs-20.6/configure.in Sat Feb 26 13:07:02 2000 --- emacs-20.7/configure.in Mon Jun 5 17:42:49 2000 *************** case "${canonical}" in *** 618,621 **** --- 618,626 ---- ;; + ## Macintosh PowerPC + powerpc*-*-linux-gnu* ) + machine=macppc opsys=gnu-linux + ;; + ## Masscomp machines m68*-masscomp-rtu* ) *************** random lrand48 bcopy bcmp logb frexp fmo *** 1636,1639 **** --- 1641,1650 ---- strerror fpathconf select mktime euidaccess getpagesize tzset setlocale \ utimes setrlimit setpgid getcwd shutdown strftime) + + # UNIX98 PTYs. + AC_CHECK_FUNCS(grantpt) + + # PTY-related GNU extensions. + AC_CHECK_FUNCS(getpt) # Check this now, so that we will NOT find the above functions in ncurses. diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/etc/ChangeLog emacs-20.7/etc/ChangeLog *** emacs-20.6/etc/ChangeLog Sat Feb 26 11:17:21 2000 --- emacs-20.7/etc/ChangeLog Mon Jun 12 21:38:57 2000 *************** *** 1,2 **** --- 1,6 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/etc/NEWS emacs-20.7/etc/NEWS *** emacs-20.6/etc/NEWS Sat Feb 26 17:59:26 2000 --- emacs-20.7/etc/NEWS Mon Jun 5 17:44:45 2000 *************** *** 1,8 **** ! GNU Emacs NEWS -- history of user-visible changes. 23 Jan 1999 ! Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. See the end for copying conditions. Please send Emacs bug reports to bug-gnu-emacs@gnu.org. For older news, see the file ONEWS. * Emacs 20.6 is a bug-fix release with one user-visible change --- 1,27 ---- ! GNU Emacs NEWS -- history of user-visible changes. 25 May 2000 ! Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. See the end for copying conditions. Please send Emacs bug reports to bug-gnu-emacs@gnu.org. For older news, see the file ONEWS. + + * Emacs 20.7 is a bug-fix release with few user-visible changes + + ** It is now possible to use CCL-based coding systems for keyboard + input. + + ** ange-ftp now handles FTP security extensions, like Kerberos. + + ** Rmail has been extended to recognize more forms of digest messages. + + ** Now, most coding systems set in keyboard coding system work not + only for character input, but also in incremental search. The + exceptions are such coding systems that handle 2-byte character sets + (e.g euc-kr, euc-jp) and that use ISO's escape sequence + (e.g. iso-2022-jp). They are ignored in incremental search. + + ** Support for Macintosh PowerPC-based machines running GNU/Linux has + been added. + * Emacs 20.6 is a bug-fix release with one user-visible change diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/etc/PROBLEMS emacs-20.7/etc/PROBLEMS *** emacs-20.6/etc/PROBLEMS Wed Dec 1 09:19:31 1999 --- emacs-20.7/etc/PROBLEMS Mon May 29 15:43:12 2000 *************** This file describes various problems tha *** 2,5 **** --- 2,10 ---- in compiling, installing and running GNU Emacs. + * Segfauls on startup on AIX 4. + + When Emacs segfaults on startup, and you've built it with the IBM xlc + compiler or GCC, please try to compile it with `cc' instead. + * Error "conflicting types for `initstate'" compiling with GCC on Irix 6. diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/etc/TUTORIAL emacs-20.7/etc/TUTORIAL *** emacs-20.6/etc/TUTORIAL Tue Feb 9 09:57:21 1999 --- emacs-20.7/etc/TUTORIAL Fri Jun 2 13:57:44 2000 *************** top of the file is on the screen, it wil *** 700,703 **** --- 700,706 ---- the screen, the mode line says --All--. + The L and digits indicate position in another way: they give the + current line number of point. + The stars near the front mean that you have made changes to the text. Right after you visit or save a file, that part of the mode line shows *************** a command character or sequence; then Em *** 949,953 **** description of the command. ! >> Type C-h c Control-p. The message should be something like --- 952,956 ---- description of the command. ! >> Type C-h c C-p. The message should be something like *************** EDIT or ALT key) v are also allowed *** 965,969 **** To get more information about a command, use C-h k instead of C-h c. ! >> Type C-h k Control-p. This displays the documentation of the function, as well as its --- 968,972 ---- To get more information about a command, use C-h k instead of C-h c. ! >> Type C-h k C-p. This displays the documentation of the function, as well as its diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/info/info emacs-20.7/info/info *** emacs-20.6/info/info Fri Apr 9 01:27:02 1999 --- emacs-20.7/info/info Tue May 30 22:12:26 2000 *************** Another `n' command now would take you t *** 175,179 **** n again to return here. ! This all probably seems insultingly simple so far, but *do not* be led into skimming. Things will get more complicated soon. Also, do not try a new command until you are told it is time to. Otherwise, you --- 174,178 ---- n again to return here. ! This all probably seems insultingly simple so far, but _do not_ be led into skimming. Things will get more complicated soon. Also, do not try a new command until you are told it is time to. Otherwise, you *************** not anything above the top until you hav *** 207,211 **** When you type the space, the two lines that were at the bottom of the screen appear at the top, followed by more lines. Delete takes the ! two lines from the top and moves them to the bottom, *usually*, but if there are not a full screen's worth of lines above them they may not make it all the way to the bottom. --- 206,210 ---- When you type the space, the two lines that were at the bottom of the screen appear at the top, followed by more lines. Delete takes the ! two lines from the top and moves them to the bottom, _usually_, but if there are not a full screen's worth of lines above them they may not make it all the way to the bottom. *************** both `Foo'. *** 306,311 **** m command is not available. ! The command to go to one of the subnodes is `m'--but *do not do it ! yet!* Before you use `m', you must understand the difference between commands and arguments. So far, you have learned several commands that do not need arguments. When you type one, Info processes it and is --- 305,310 ---- m command is not available. ! The command to go to one of the subnodes is `m'--but _do not do it ! yet!_ Before you use `m', you must understand the difference between commands and arguments. So far, you have learned several commands that do not need arguments. When you type one, Info processes it and is *************** other hand, is usually used to "stay on *** 396,400 **** You can go back to the node `Help-M' by typing the command `u' for ! "Up". That puts you at the *front* of the node--to get back to where you were reading you have to type some s. --- 395,399 ---- You can go back to the node `Help-M' by typing the command `u' for ! "Up". That puts you at the _front_ of the node--to get back to where you were reading you have to type some s. *************** back to `Help-M'. *** 426,430 **** Then follow directions again and you will end up back here. ! Note the difference between `l' and `p': `l' moves to where *you* last were, whereas `p' always moves to the node which the header says is the `Previous' node (from this node, to `Help-M'). --- 425,429 ---- Then follow directions again and you will end up back here. ! Note the difference between `l' and `p': `l' moves to where _you_ last were, whereas `p' always moves to the node which the header says is the `Previous' node (from this node, to `Help-M'). *************** nodes that exist. *** 436,440 **** >> Try doing a `d', then do an l to return here (yes, ! *do* return). Sometimes, in Info documentation, you will see a cross reference. --- 435,439 ---- >> Try doing a `d', then do an l to return here (yes, ! _do_ return). Sometimes, in Info documentation, you will see a cross reference. *************** Info for Experts *** 509,513 **** This chapter describes various advanced Info commands, and how to write an Info as distinct from a Texinfo file. (However, in most ! cases, writing a Texinfo file is better, since you can use it *both* to generate an Info file and to make a printed manual. *Note Overview of Texinfo: (texinfo)Top.) --- 508,512 ---- This chapter describes various advanced Info commands, and how to write an Info as distinct from a Texinfo file. (However, in most ! cases, writing a Texinfo file is better, since you can use it _both_ to generate an Info file and to make a printed manual. *Note Overview of Texinfo: (texinfo)Top.) *************** this node has one but you cannot see it) *** 603,608 **** <^_>, a <^L>, or the end of file. Note: If you put in a <^L> to end a new node, be sure that there is a <^_> after it to start the next one, ! since <^L> cannot *start* a node. Also, a nicer way to make a node ! boundary be a page boundary as well is to put a <^L> *right after* the <^_>. --- 602,607 ---- <^_>, a <^L>, or the end of file. Note: If you put in a <^L> to end a new node, be sure that there is a <^_> after it to start the next one, ! since <^L> cannot _start_ a node. Also, a nicer way to make a node ! boundary be a page boundary as well is to put a <^L> _right after_ the <^_>. *************** to see them all need not keep revisiting *** 688,692 **** The Info Directory is simply the menu of the node `(dir)Top'--that is, node `Top' in file `.../info/dir'. You can put new entries in that ! menu just like any other menu. The Info Directory is *not* the same as the file directory called `info'. It happens that many of Info's files live on that file directory, but they do not have to; and files on that --- 687,691 ---- The Info Directory is simply the menu of the node `(dir)Top'--that is, node `Top' in file `.../info/dir'. You can put new entries in that ! menu just like any other menu. The Info Directory is _not_ the same as the file directory called `info'. It happens that many of Info's files live on that file directory, but they do not have to; and files on that *************** directory are not automatically listed i *** 694,698 **** Also, although the Info node graph is claimed to be a "hierarchy", ! in fact it can be *any* directed graph. Shared structures and pointer cycles are perfectly possible, and can be used if they are appropriate to the meaning to be expressed. There is no need for all the nodes in --- 693,697 ---- Also, although the Info node graph is claimed to be a "hierarchy", ! in fact it can be _any_ directed graph. Shared structures and pointer cycles are perfectly possible, and can be used if they are appropriate to the meaning to be expressed. There is no need for all the nodes in *************** Creating Cross References *** 713,717 **** item which must go at the front of a line. A cross reference looks like a menu item except that it has `*note' instead of `*'. It ! *cannot* be terminated by a `)', because `)''s are so often part of node names. If you wish to enclose a cross reference in parentheses, terminate it with a period first. Here are two examples of cross --- 712,716 ---- item which must go at the front of a line. A cross reference looks like a menu item except that it has `*note' instead of `*'. It ! _cannot_ be terminated by a `)', because `)''s are so often part of node names. If you wish to enclose a cross reference in parentheses, terminate it with a period first. Here are two examples of cross *************** Setting Variables: (emacs)Examining. *** 801,805 **** `Info-directory-list' The list of directories to search for Info files. Each element is ! a string (directory name) or `nil' (try default directory). `Info-directory' --- 800,812 ---- `Info-directory-list' The list of directories to search for Info files. Each element is ! a string (directory name) or `nil' (try default directory). If not ! initialized Info uses the environment variable `INFOPATH' to ! initialize it, or `Info-default-directory-list' if there is no ! `INFOPATH' variable in the environment. ! ! `Info-additional-directory-list' ! A list of additional directories to search for Info documentation ! files. These directories are not searched for merging the `dir' ! file. `Info-directory' *************** executed that many times; for example, a *** 962,966 **** `next-line' causes the cursor to move down 4 lines. With a negative numeric argument, the motion is reversed; an argument of -4 given to ! the `next-line' command would cause the cursor to move *up* 4 lines. `C-n' (`next-line') --- 969,973 ---- `next-line' causes the cursor to move down 4 lines. With a negative numeric argument, the motion is reversed; an argument of -4 given to ! the `next-line' command would cause the cursor to move _up_ 4 lines. `C-n' (`next-line') *************** items. *** 1285,1289 **** selects that menu item, and places its node in the current window. For convenience, there is one exception; pressing `0' selects the ! *last* item in the node's menu. `0' (`last-menu-item') --- 1292,1296 ---- selects that menu item, and places its node in the current window. For convenience, there is one exception; pressing `0' selects the ! _last_ item in the node's menu. `0' (`last-menu-item') *************** Window Commands *** 1389,1393 **** It can be convenient to view more than one node at a time. To allow this, Info can display more than one "window". Each window has its own ! mode line (*note The Mode Line::.) and history of nodes viewed in that window (*note `history-node': Node Commands.). --- 1396,1400 ---- It can be convenient to view more than one node at a time. To allow this, Info can display more than one "window". Each window has its own ! mode line (*note The Mode Line::) and history of nodes viewed in that window (*note `history-node': Node Commands.). *************** environment and info file reading manner *** 1679,1683 **** available when reading the variable name; often, completion is available when reading the value to give to the variable, but that ! depends on the variable itself. If a variable does *not* supply multiple choices to complete over, it expects a numeric value. --- 1686,1690 ---- available when reading the variable name; often, completion is available when reading the value to give to the variable, but that ! depends on the variable itself. If a variable does _not_ supply multiple choices to complete over, it expects a numeric value. *************** environment and info file reading manner *** 1708,1712 **** window. There are exceptions to the automatic tiling; specifically, the windows `*Completions*' and `*Footnotes*' are ! *not* resized through automatic tiling; they remain their original size. --- 1715,1719 ---- window. There are exceptions to the automatic tiling; specifically, the windows `*Completions*' and `*Footnotes*' are ! _not_ resized through automatic tiling; they remain their original size. *************** environment and info file reading manner *** 1791,1830 ****  Tag Table: ! Node: Top1013 ! Node: Getting Started1718 ! Node: Help-Small-Screen2529 ! Node: Help4265 ! Node: Help-P5382 ! Node: Help-^L6229 ! Node: Help-M9305 ! Node: Help-FOO15110 ! Node: Help-Adv15838 ! Node: Help-Cross18488 ! Node: Help-Q19124 ! Node: Advanced Info19743 ! Node: Expert20715 ! Node: Add23363 ! Node: Menus26717 ! Node: Cross-refs29586 ! Node: Tags30283 ! Node: Checking31590 ! Node: Emacs Info Variables32538 ! Node: Create an Info File33522 ! Node: Using Stand-alone Info34056 ! Node: Options35333 ! Node: Cursor Commands38523 ! Node: Scrolling Commands41188 ! Node: Node Commands43673 ! Node: Searching Commands47681 ! Node: Xref Commands49296 ! Node: Parts of an Xref49899 ! Node: Selecting Xrefs51829 ! Node: Window Commands53412 ! Node: The Mode Line54318 ! Node: Basic Windows55955 ! Node: The Echo Area58469 ! Node: Printing Nodes62648 ! Node: Miscellaneous Commands63302 ! Node: Variables66520  End Tag Table --- 1798,1839 ----  Tag Table: ! Node: Top987 ! Node: Getting Started1692 ! Node: Help-Small-Screen2503 ! Node: Help4239 ! Node: Help-P5356 ! Node: Help-^L6203 ! Node: Help-M9279 ! Node: Help-FOO15084 ! Node: Help-Adv15812 ! Node: Help-Cross18462 ! Node: Help-Q19098 ! Node: Advanced Info19717 ! Node: Expert20689 ! Node: Add23337 ! Node: Menus26691 ! Node: Cross-refs29560 ! Node: Tags30257 ! Node: Checking31564 ! Node: Emacs Info Variables32512 ! Node: Create an Info File33869 ! Node: Using Stand-alone Info34403 ! Node: Options35680 ! Ref: Options-Footnote-138679 ! Node: Cursor Commands38870 ! Ref: Cursor Commands-Footnote-141384 ! Node: Scrolling Commands41535 ! Node: Node Commands44020 ! Node: Searching Commands48028 ! Node: Xref Commands49643 ! Node: Parts of an Xref50246 ! Node: Selecting Xrefs52176 ! Node: Window Commands53759 ! Node: The Mode Line54665 ! Node: Basic Windows56302 ! Node: The Echo Area58815 ! Node: Printing Nodes62994 ! Node: Miscellaneous Commands63648 ! Node: Variables66866  End Tag Table diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lib-src/ChangeLog emacs-20.7/lib-src/ChangeLog *** emacs-20.6/lib-src/ChangeLog Sat Feb 26 11:18:39 2000 --- emacs-20.7/lib-src/ChangeLog Mon Jun 12 21:39:35 2000 *************** *** 1,2 **** --- 1,6 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/ChangeLog emacs-20.7/lisp/ChangeLog *** emacs-20.6/lisp/ChangeLog Sat Feb 26 11:15:31 2000 --- emacs-20.7/lisp/ChangeLog Mon Jun 12 21:39:59 2000 *************** *** 1,2 **** --- 1,128 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + + 2000-06-07 Kenichi Handa + + * textmodes/fill.el (fill-find-break-point): Check the validity of + charset. + + 2000-06-05 Andrew Innes + + * browse-url.el (browse-url-filename-alist) [windows-nt, ms-dos]: + Conditionalize last change for DOS/Windows only. + + * browse-url.el (browse-url-of-buffer): Add comment for last change. + + 2000-06-02 Andrew Innes + + * browse-url.el (browse-url-of-buffer): Ensure that file-name ends + with .htm or .html, otherwise browse-url-of-file fails on Windows. + + 2000-06-01 Andrew Innes + + * browse-url.el (browse-url-filename-alist): Support Windows-style + filenames with drive specifiers. + + * arc-mode.el (archive-zip-use-pkzip) [windows-nt]: Don't use + pkzip on Windows by default, as InfoZIP works better. + + 2000-05-31 Kenichi Handa + + * isearch.el (isearch-printing-char): Don't test for `cpXXX'. + + 2000-05-30 Andrew Innes + + * w32-fns.el (isearch-mode-map): Ignore language-change events in + isearch. + + 2000-05-30 Kenichi Handa + + * isearch.el (isearch-forward): Extend doc string. + + 2000-05-30 Gerd Moellmann + + * tmm.el (tmm-prompt): Recognize menu item definitions of the for + `(menu-item ...)' when looking for the position of DEFAULT-ITEM. + + * paths.el (Info-default-directory-list): Doc fix. + + 2000-05-29 Gerd Moellmann + + * dabbrev.el (dabbrev-expand): Don't display messages in the + echo area if the minibuffer window is active. + + 2000-05-29 Kenichi Handa + + * isearch.el (isearch-printing-char): If in Encoded Kbd mode, + decode the character by the current keyboard coding system. + + 2000-05-24 Gerd Moellmann + + * mail/rmail.el (rmail-retry-failure): Always unprune the header + after calling rmail-beginning-of-message. + + 2000-05-23 Gerd Moellmann + + * progmodes/sh-script.el (sh-ancestor-alist): Add `bash2'. + + * files.el (interpreter-mode-alist): Add `bash2'. + + 2000-05-20 Kenichi Handa + + * international/ccl.el (ccl-compile-write-string): Make STR + unibyte. + (ccl-compile-write-repeat): If ARG is string, make it unibyte. + + 2000-05-18 Espen Skoglund + + * pascal.el (pascal-indent-alist) (pascal-indent-comment): Changed + the indent-comment function to just return the appropriate indent. + + 2000-05-16 Kenichi Handa + + * international/encoded-kb.el: Be sure to update minor-mode-alist + and minor-mode-map-alist. + (encoded-kbd-self-insert-iso2022-8bit): Handle ISO's single shift + codes SS2 and SS3 correctly. + (encoded-kbd-self-insert-ccl): New function. + (encoded-kbd-setup-keymap): New function. + (encoded-kbd-mode): Handle CCL based coding system. Setup keymap + by calling encoded-kbd-setup-keymap. + + 2000-05-12 Gerd Moellmann + + * ange-ftp.el (ange-ftp-skip-msgs): Include 500 code.for + handling FTP security extensions. + + 2000-05-05 Gerd Moellmann + + * mail/undigest.el (undigestify-rmail-message): Recognize end + of digest differently. + + 2000-05-02 Gerd Moellmann + + * simple.el (kill-region): Bind both undo-strong-limit and + undo-limit. Add in the values of the global bindings. + + * language/european.el (iso-latin-4): Fix typo. + + * textmodes/texinfmt.el (texinfo-format-xref): Don't try to insert + nil. + + 2000-05-02 Eli Zaretskii + + * ediff.el (ediff-buffers-internal): Bind ediff-job-name to the + job-name argument when writing buffers to temporary files. + + * ediff-util.el (ediff-make-temp-file): Bind + coding-system-for-write to no-conversion if we are comparing + buffers (as opposed to files). + + * ediff-diff.el (ediff-exec-process): If we are comparing buffers, + bind coding-system-for-read to no-conversion. On DOS and Windows, + when comparing 2 buffers, add --binary to the switches passed to + Diff. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/ange-ftp.el emacs-20.7/lisp/ange-ftp.el *** emacs-20.6/lisp/ange-ftp.el Mon Feb 21 23:30:30 2000 --- emacs-20.7/lisp/ange-ftp.el Fri May 12 13:48:18 2000 *************** parenthesized expressions in REGEXP for *** 670,673 **** --- 670,678 ---- ;; when it gets the 550 line, as it should. + ;; RFC2228 "FTP Security Extensions" defines extensions to the FTP + ;; protocol which involve the client requesting particular + ;; authentication methods (typically) at connection establishment. Non + ;; security-aware FTP servers should respond to this with a 500 code, + ;; which we ignore. (defcustom ange-ftp-skip-msgs (concat "^200 \\(PORT\\|Port\\) \\|^331 \\|^150 \\|^350 \\|^[0-9]+ bytes \\|" *************** parenthesized expressions in REGEXP for *** 675,678 **** --- 680,684 ---- "^Data connection \\|" "^local:\\|^Trying\\|^125 \\|^550-\\|^221 .*oodbye\\|" + "^500 .*AUTH \\(KERBEROS\\|GSSAPI\\)\\|^KERBEROS\\|" "^227 .*[Pp]assive") "*Regular expression matching ftp messages that can be ignored." diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/arc-mode.el emacs-20.7/lisp/arc-mode.el *** emacs-20.6/lisp/arc-mode.el Mon Feb 22 16:54:02 1999 --- emacs-20.7/lisp/arc-mode.el Fri Jun 2 13:20:29 2000 *************** Archive and member name will be added." *** 210,214 **** ;; Zip archive configuration ! (defcustom archive-zip-use-pkzip (memq system-type '(ms-dos windows-nt)) "*If non-nil then pkzip option are used instead of zip options. Only set to true for msdog systems!" --- 210,214 ---- ;; Zip archive configuration ! (defcustom archive-zip-use-pkzip (eq system-type 'ms-dos) "*If non-nil then pkzip option are used instead of zip options. Only set to true for msdog systems!" diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/browse-url.el emacs-20.7/lisp/browse-url.el *** emacs-20.6/lisp/browse-url.el Sat Jan 29 12:51:56 2000 --- emacs-20.7/lisp/browse-url.el Tue Jun 6 11:55:22 2000 *************** commands reverses the effect of this var *** 318,327 **** (defcustom browse-url-filename-alist ! '(("^/\\(ftp@\\|anonymous@\\)?\\([^:]+\\):/*" . "ftp://\\2/") ;; The above loses the username to avoid the browser prompting for ;; it in anonymous cases. If it's not anonymous the next regexp ;; applies. ("^/\\([^:@]+@\\)?\\([^:]+\\):/*" . "ftp://\\1\\2/") ! ("^/+" . "file:/")) "An alist of (REGEXP . STRING) pairs used by `browse-url-of-file'. Any substring of a filename matching one of the REGEXPs is replaced by --- 318,330 ---- (defcustom browse-url-filename-alist ! `(("^/\\(ftp@\\|anonymous@\\)?\\([^:]+\\):/*" . "ftp://\\2/") ;; The above loses the username to avoid the browser prompting for ;; it in anonymous cases. If it's not anonymous the next regexp ;; applies. ("^/\\([^:@]+@\\)?\\([^:]+\\):/*" . "ftp://\\1\\2/") ! ;; Support DOS/Windows filenames on those platforms. ! ,@(if (memq system-type '(windows-nt ms-dos)) ! '(("^\\([a-zA-Z]:\\)[\\/]" . "file:\\1/"))) ! ("^/" . "file:/")) "An alist of (REGEXP . STRING) pairs used by `browse-url-of-file'. Any substring of a filename matching one of the REGEXPs is replaced by *************** narrowed." *** 555,565 **** (or buffer-file-name (and (boundp 'dired-directory) dired-directory))))) ! (or file-name (progn (or browse-url-temp-file-name (setq browse-url-temp-file-name (convert-standard-filename ! (make-temp-name ! (expand-file-name "burl" browse-url-temp-dir))))) (setq file-name browse-url-temp-file-name) (write-region (point-min) (point-max) file-name nil 'no-message))) --- 558,573 ---- (or buffer-file-name (and (boundp 'dired-directory) dired-directory))))) ! ;; On Windows, files will only be displayed if the name ends with ! ;; .htm or .html. So go through a suitably named temp file if ! ;; necessary to ensure this. ! (or (and file-name (string-match "\.[hH][tT][mM][lL]?$" file-name)) (progn (or browse-url-temp-file-name (setq browse-url-temp-file-name (convert-standard-filename ! (concat ! (make-temp-name ! (expand-file-name "burl" browse-url-temp-dir)) ! ".html")))) (setq file-name browse-url-temp-file-name) (write-region (point-min) (point-max) file-name nil 'no-message))) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/dabbrev.el emacs-20.7/lisp/dabbrev.el *** emacs-20.6/lisp/dabbrev.el Wed Sep 23 23:56:46 1998 --- emacs-20.7/lisp/dabbrev.el Mon May 29 17:54:44 2000 *************** See also `dabbrev-abbrev-char-regexp' an *** 543,547 **** (if old " further" "") abbrev)) (t ! (if (not (eq dabbrev--last-buffer dabbrev--last-buffer-found)) (progn (message "Expansion found in '%s'" --- 543,548 ---- (if old " further" "") abbrev)) (t ! (if (not (or (eq dabbrev--last-buffer dabbrev--last-buffer-found) ! (minibuffer-window-active-p (selected-window)))) (progn (message "Expansion found in '%s'" diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/ediff-diff.el emacs-20.7/lisp/ediff-diff.el *** emacs-20.6/lisp/ediff-diff.el Wed Jun 23 00:44:52 1999 --- emacs-20.7/lisp/ediff-diff.el Tue May 2 14:46:59 2000 *************** one optional arguments, diff-number to r *** 1084,1089 **** (setq args (delete "" (delq nil args))) ; delete nil and "" from arguments (unwind-protect ! (let ((directory default-directory) ! proc) (save-excursion (set-buffer buffer) --- 1084,1093 ---- (setq args (delete "" (delq nil args))) ; delete nil and "" from arguments (unwind-protect ! (let* ((directory default-directory) ! (job-name (symbol-name ediff-job-name)) ! (buf-job (string-match "buffer" job-name)) ! (coding-system-for-read ! (if buf-job 'no-conversion coding-system-for-read)) ! proc) (save-excursion (set-buffer buffer) *************** one optional arguments, diff-number to r *** 1101,1105 **** ;; In DOS, must synchronize because DOS doesn't have ;; asynchronous processes. ! (apply 'call-process program nil buffer nil args) ;; On other systems, do it asynchronously. (setq proc (get-buffer-process buffer)) --- 1105,1117 ---- ;; In DOS, must synchronize because DOS doesn't have ;; asynchronous processes. ! (progn ! (if (and buf-job ! (memq system-type '(ms-dos windows-nt windows-95)) ! ;; FIXME: diff3 doesn't accept --binary, so 3-way ! ;; comparisons on DOS/Windows might fail for ! ;; buffers with non-ASCII text. ! (not (string-match "buffers3" job-name))) ! (setq args (append args '("--binary")))) ! (apply 'call-process program nil buffer nil args)) ;; On other systems, do it asynchronously. (setq proc (get-buffer-process buffer)) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/ediff-util.el emacs-20.7/lisp/ediff-util.el *** emacs-20.6/lisp/ediff-util.el Tue Nov 10 12:22:29 1998 --- emacs-20.7/lisp/ediff-util.el Tue May 2 14:46:59 2000 *************** Hit \\[ediff-recenter] to reset the wind *** 2934,2944 **** ;; create the file (ediff-with-current-buffer buff ! (write-region (if start start (point-min)) ! (if end end (point-max)) ! f ! nil ; don't append---erase ! 'no-message) ! (set-file-modes f ediff-temp-file-mode) ! (expand-file-name f)))) ;; Quote metacharacters (using \) when executing diff in Unix, but not in --- 2934,2948 ---- ;; create the file (ediff-with-current-buffer buff ! (let ((coding-system-for-write ! (if (string-match "buffer" (symbol-name ediff-job-name)) ! 'no-conversion ! coding-system-for-write))) ! (write-region (if start start (point-min)) ! (if end end (point-max)) ! f ! nil ; don't append---erase ! 'no-message) ! (set-file-modes f ediff-temp-file-mode) ! (expand-file-name f))))) ;; Quote metacharacters (using \) when executing diff in Unix, but not in diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/ediff.el emacs-20.7/lisp/ediff.el *** emacs-20.6/lisp/ediff.el Sat May 30 16:32:09 1998 --- emacs-20.7/lisp/ediff.el Tue May 2 14:46:59 2000 *************** *** 421,429 **** (if (stringp buf-C-file-name) (setq buf-C-file-name (file-name-nondirectory buf-C-file-name))) ! ! (setq file-A (ediff-make-temp-file buf-A buf-A-file-name) ! file-B (ediff-make-temp-file buf-B buf-B-file-name)) ! (if buf-C-is-alive ! (setq file-C (ediff-make-temp-file buf-C buf-C-file-name))) (ediff-setup (get-buffer buf-A) file-A --- 421,430 ---- (if (stringp buf-C-file-name) (setq buf-C-file-name (file-name-nondirectory buf-C-file-name))) ! ! (let ((ediff-job-name job-name)) ! (setq file-A (ediff-make-temp-file buf-A buf-A-file-name) ! file-B (ediff-make-temp-file buf-B buf-B-file-name)) ! (if buf-C-is-alive ! (setq file-C (ediff-make-temp-file buf-C buf-C-file-name)))) (ediff-setup (get-buffer buf-A) file-A diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/faces.el emacs-20.7/lisp/faces.el *** emacs-20.6/lisp/faces.el Tue Apr 6 21:56:38 1999 --- emacs-20.7/lisp/faces.el Mon May 29 13:30:03 2000 *************** selected frame." *** 1214,1222 **** (while (and plist (not (eq (car plist) property))) (setq plist (cdr (cdr plist)))) ! (eq (funcall function face frame) ! (if plist ! (nth 1 plist) ! (or defaultval ! (funcall function 'default frame))))) (defun face-spec-match-p (face spec &optional frame) --- 1214,1222 ---- (while (and plist (not (eq (car plist) property))) (setq plist (cdr (cdr plist)))) ! (equal (funcall function face frame) ! (if plist ! (nth 1 plist) ! (or defaultval ! (funcall function 'default frame))))) (defun face-spec-match-p (face spec &optional frame) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/files.el emacs-20.7/lisp/files.el *** emacs-20.6/lisp/files.el Thu Oct 21 23:32:02 1999 --- emacs-20.7/lisp/files.el Tue May 23 13:17:39 2000 *************** REGEXP and search the list again for ano *** 1379,1382 **** --- 1379,1383 ---- ("ash" . sh-mode) ("bash" . sh-mode) + ("bash2" . sh-mode) ("csh" . sh-mode) ("dtksh" . sh-mode) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/international/ccl.el emacs-20.7/lisp/international/ccl.el *** emacs-20.6/lisp/international/ccl.el Sat Jan 23 03:16:20 1999 --- emacs-20.7/lisp/international/ccl.el Sat May 20 13:57:06 2000 *************** *** 517,520 **** --- 517,521 ---- ;; Compile WRITE statement with string argument. (defun ccl-compile-write-string (str) + (setq str (string-as-unibyte str)) (let ((len (length str))) (ccl-embed-code 'write-const-string 1 len) *************** *** 728,731 **** --- 729,733 ---- (ccl-embed-data arg)) ((stringp arg) + (setq arg (string-as-unibyte arg)) (let ((len (length arg)) (i 0)) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/international/encoded-kb.el emacs-20.7/lisp/international/encoded-kb.el *** emacs-20.6/lisp/international/encoded-kb.el Mon Aug 2 03:12:32 1999 --- emacs-20.7/lisp/international/encoded-kb.el Thu May 18 14:58:42 2000 *************** *** 25,46 **** (put 'encoded-kbd-mode 'permanent-local t) ! (or (assq 'encoded-kbd-mode minor-mode-alist) (setq minor-mode-alist ! (cons '(encoded-kbd-mode " Encoded-kbd") minor-mode-alist))) ! (defvar encoded-kbd-mode-map ! (let ((map (make-sparse-keymap)) ! (i 128)) ! (define-key map "\e" 'encoded-kbd-iso2022-esc-prefix) ! (while (< i 256) ! (define-key map (vector i) 'encoded-kbd-handle-8bit) ! (setq i (1+ i))) ! map) "Keymap for Encoded-kbd minor mode.") ! (or (assq 'encoded-kbd-mode minor-mode-map-alist) (setq minor-mode-map-alist (cons (cons 'encoded-kbd-mode encoded-kbd-mode-map) ! minor-mode-map-alist))) ;; Subsidiary keymaps for handling ISO2022 escape sequences. --- 25,44 ---- (put 'encoded-kbd-mode 'permanent-local t) ! (let ((slot (assq 'encoded-kbd-mode minor-mode-alist)) ! (name " Encoded-kbd")) ! (if slot ! (setcar (cdr slot) name) (setq minor-mode-alist ! (cons '(encoded-kbd-mode " Encoded-kbd") minor-mode-alist)))) ! (defconst encoded-kbd-mode-map (make-sparse-keymap) "Keymap for Encoded-kbd minor mode.") ! (let ((slot (assq 'encoded-kbd-mode minor-mode-map-alist))) ! (if slot ! (setcdr slot encoded-kbd-mode-map) (setq minor-mode-map-alist (cons (cons 'encoded-kbd-mode encoded-kbd-mode-map) ! minor-mode-map-alist)))) ;; Subsidiary keymaps for handling ISO2022 escape sequences. *************** *** 103,117 **** (defvar encoded-kbd-coding nil) ! ;; Keep information of designation state of ISO2022 encoding. This is ! ;; a vector of character sets currently designated to each graphic ! ;; registers (0..3). (defvar encoded-kbd-iso2022-designations nil) (put 'encoded-kbd-iso2022-designations 'permanent-local t) ! ;; Keep information of invocation state of ISO2022 encoding. This is ! ;; a vector of graphic register numbers currently invoked to each ! ;; graphic plane (0..1), the third element is a single shifted graphic ! ;; register number. (defvar encoded-kbd-iso2022-invocations nil) --- 101,116 ---- (defvar encoded-kbd-coding nil) ! ;; Keep information of designation state of ISO2022 encoding. When ! ;; Encoded-kbd mode is on, this is set to a vector of length 4, the ! ;; elements are character sets currently designated to graphic ! ;; registers 0 thru 3. (defvar encoded-kbd-iso2022-designations nil) (put 'encoded-kbd-iso2022-designations 'permanent-local t) ! ;; Keep information of invocation state of ISO2022 encoding. When ! ;; Encoded-kbd mode is on, this is set to a vector of length 3, ! ;; graphic register numbers currently invoked to graphic plane 1 and ! ;; 2, and a single shifted graphic register number. (defvar encoded-kbd-iso2022-invocations nil) *************** The following key sequence may cause mul *** 204,207 **** --- 203,212 ---- (defun encoded-kbd-self-insert-iso2022-8bit () (interactive) + (cond + ((= last-command-char ?\216) ; SS2 (Single Shift 2) + (aset encoded-kbd-iso2022-invocations 2 2)) + ((= last-command-char ?\217) ; SS3 (Single Shift 3) + (aset encoded-kbd-iso2022-invocations 2 3)) + (t (let* ((charset (aref encoded-kbd-iso2022-designations (or (aref encoded-kbd-iso2022-invocations 2) *************** The following key sequence may cause mul *** 209,215 **** (char (if (= (charset-dimension charset) 1) (make-char charset last-command-char) ! (make-char charset last-command-char (read-char-exclusive))))) (aset encoded-kbd-iso2022-invocations 2 nil) ! (setq unread-command-events (cons char unread-command-events)))) (defun encoded-kbd-self-insert-sjis () --- 214,221 ---- (char (if (= (charset-dimension charset) 1) (make-char charset last-command-char) ! (make-char charset last-command-char ! (read-char-exclusive))))) (aset encoded-kbd-iso2022-invocations 2 nil) ! (setq unread-command-events (cons char unread-command-events)))))) (defun encoded-kbd-self-insert-sjis () *************** The following key sequence may cause mul *** 227,230 **** --- 233,296 ---- (setq unread-command-events (cons char unread-command-events)))) + (defun encoded-kbd-self-insert-ccl () + (interactive) + (let ((str (char-to-string last-command-char)) + (coding (keyboard-coding-system))) + (setq str (decode-coding-string str coding)) + (setq unread-command-events + (append (string-to-list str) unread-command-events)))) + + (defun encoded-kbd-setup-keymap (coding) + ;; At first, reset the keymap. + (setcdr encoded-kbd-mode-map nil) + ;; Then setup the keymap according to the keyboard coding system. + (cond + ((eq encoded-kbd-coding 'sjis) + (let ((i 128)) + (while (< i 256) + (define-key encoded-kbd-mode-map + (vector i) 'encoded-kbd-self-insert-sjis) + (setq i (1+ i))))) + + ((eq encoded-kbd-coding 'big5) + (let ((i 161)) + (while (< i 255) + (define-key encoded-kbd-mode-map + (vector i) 'encoded-kbd-self-insert-big5) + (setq i (1+ i))))) + + ((eq encoded-kbd-coding 'iso2022-7) + (define-key encoded-kbd-mode-map "\e" 'encoded-kbd-iso2022-esc-prefix)) + + ((eq encoded-kbd-coding 'iso2022-8) + (define-key encoded-kbd-mode-map + (vector ?\216) 'encoded-kbd-self-insert-iso2022-8bit) + (define-key encoded-kbd-mode-map + (vector ?\217) 'encoded-kbd-self-insert-iso2022-8bit) + (let ((i 160)) + (while (< i 256) + (define-key encoded-kbd-mode-map + (vector i) 'encoded-kbd-self-insert-iso2022-8bit) + (setq i (1+ i))))) + + ((eq encoded-kbd-coding 'ccl) + (let ((valid-codes (or (coding-system-get coding 'valid-codes) + '((128 255)))) + elt from to) + (while valid-codes + (setq elt (car valid-codes) valid-codes (cdr valid-codes)) + (if (consp elt) + (setq from (car elt) to (cdr elt)) + (setq from (setq to elt))) + (while (<= from to) + (if (>= from 128) + (define-key encoded-kbd-mode-map + (vector from) 'encoded-kbd-self-insert-ccl)) + (setq from (1+ from)))))) + + (t + (error "Invalid value in encoded-kbd-coding: %s" encoded-kbd-coding)))) + + ;; Input mode at the time Encoded-kbd mode is turned on is saved here. (defvar saved-input-mode nil) *************** as a multilingual text encoded in a codi *** 289,296 **** --- 355,369 ---- (setq encoded-kbd-coding 'big5)) + ((= (coding-system-type coding) 4) ; CCL based coding + (set-input-mode + (nth 0 saved-input-mode) (nth 1 saved-input-mode) + 'use-8th-bit (nth 3 saved-input-mode)) + (setq encoded-kbd-coding 'ccl)) + (t (setq encoded-kbd-mode nil) (error "Coding-system `%s' is not supported in Encoded-kbd mode" (keyboard-coding-system)))) + (encoded-kbd-setup-keymap coding) (run-hooks 'encoded-kbd-mode-hook)))) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/isearch.el emacs-20.7/lisp/isearch.el *** emacs-20.6/lisp/isearch.el Mon Jul 5 18:39:46 1999 --- emacs-20.7/lisp/isearch.el Wed May 31 13:43:30 2000 *************** The following non-printing keys are boun *** 427,430 **** --- 427,432 ---- Type \\[isearch-delete-char] to cancel characters from end of search string. Type \\[isearch-exit] to exit, leaving point at location found. + If you have not yet typed any characters, \\[isearch-exit] will start + nonincremental search. Type LFD (C-j) to match end of line. Type \\[isearch-repeat-forward] to search again forward,\ *************** Obsolete." *** 1225,1229 **** (>= char ?\200) (<= char ?\377)) ! (isearch-process-search-char (unibyte-char-to-multibyte char)) (if current-input-method (isearch-process-search-multibyte-characters char) --- 1227,1237 ---- (>= char ?\200) (<= char ?\377)) ! (let ((coding (keyboard-coding-system))) ! (if coding ! (setq char (aref (decode-coding-string (char-to-string char) ! coding) ! 0)) ! (setq char (unibyte-char-to-multibyte char))) ! (isearch-process-search-char char)) (if current-input-method (isearch-process-search-multibyte-characters char) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/language/cyrillic.el emacs-20.7/lisp/language/cyrillic.el *** emacs-20.6/lisp/language/cyrillic.el Fri Oct 1 03:56:29 1999 --- emacs-20.7/lisp/language/cyrillic.el Mon Jun 5 14:19:57 2000 *************** *** 88,92 **** (if (eq (car split) 'cyrillic-iso8859-5) (aset table (logior (nth 1 split) 128) i) ! (if (/= ch 32) (aset table ch i)))) (setq i (1+ i))) --- 88,92 ---- (if (eq (car split) 'cyrillic-iso8859-5) (aset table (logior (nth 1 split) 128) i) ! (if (< ch 128) (aset table ch i)))) (setq i (1+ i))) *************** *** 188,192 **** (if (eq (car split) 'cyrillic-iso8859-5) (aset table (logior (nth 1 split) 128) i) ! (if (/= ch 32) (aset table ch i)))) (setq i (1+ i))) --- 188,192 ---- (if (eq (car split) 'cyrillic-iso8859-5) (aset table (logior (nth 1 split) 128) i) ! (if (< ch 128) (aset table ch i)))) (setq i (1+ i))) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/language/european.el emacs-20.7/lisp/language/european.el *** emacs-20.6/lisp/language/european.el Mon Sep 20 04:19:25 1999 --- emacs-20.7/lisp/language/european.el Tue May 2 14:43:00 2000 *************** These languages are supported with the L *** 155,159 **** nil nil nil nil nil nil nil) '((safe-charsets ascii latin-iso8859-4) ! (mime-charset . iso-8895-4))) (define-coding-system-alias 'iso-8859-4 'iso-latin-4) --- 155,159 ---- nil nil nil nil nil nil nil) '((safe-charsets ascii latin-iso8859-4) ! (mime-charset . iso-8859-4))) (define-coding-system-alias 'iso-8859-4 'iso-latin-4) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/mail/rmail.el emacs-20.7/lisp/mail/rmail.el *** emacs-20.6/lisp/mail/rmail.el Thu Feb 3 18:46:10 2000 --- emacs-20.7/lisp/mail/rmail.el Wed May 24 16:01:23 2000 *************** specifying headers which should not be c *** 3062,3067 **** ;; Narrow down to just the quoted original message (rmail-beginning-of-message) ! (if pruned ! (rmail-toggle-header 0)) (let* ((case-fold-search t) (top (point)) --- 3062,3066 ---- ;; Narrow down to just the quoted original message (rmail-beginning-of-message) ! (rmail-toggle-header 0) (let* ((case-fold-search t) (top (point)) *************** specifying headers which should not be c *** 3156,3161 **** (set-buffer rmail-this-buffer) (rmail-beginning-of-message)))) ! (if pruned ! (rmail-toggle-header)))) (defun rmail-summary-exists () --- 3155,3159 ---- (set-buffer rmail-this-buffer) (rmail-beginning-of-message)))) ! (rmail-toggle-header (if pruned 1 0)))) (defun rmail-summary-exists () diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/mail/undigest.el emacs-20.7/lisp/mail/undigest.el *** emacs-20.6/lisp/mail/undigest.el Fri Dec 26 11:43:45 1997 --- emacs-20.7/lisp/mail/undigest.el Fri May 5 13:58:31 2000 *************** Leaves original message, deleted, before *** 83,88 **** "\\(\n------*\\)*")) (setq found t))) ! (if (not found) ! (error "Message is not a digest--no end line")))) (re-search-forward (concat "^" (make-string 55 ?-) "-*\n*")) (replace-match "\^_\^L\n0, unseen,,\n*** EOOH ***\n") --- 83,97 ---- "\\(\n------*\\)*")) (setq found t))) ! (unless found ! ;; Maybe it doesn't have the word "Digest". ! (goto-char (point-max)) ! (skip-chars-backward " \t\n") ! (while (and (> (point) start) (not found)) ! (forward-line -1) ! (if (looking-at (concat "End of.*\n" ! (regexp-quote "*") "*")) ! (setq found t)))) ! (unless found ! (error "Message is not a digest--no end line")))) (re-search-forward (concat "^" (make-string 55 ?-) "-*\n*")) (replace-match "\^_\^L\n0, unseen,,\n*** EOOH ***\n") diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/paths.el emacs-20.7/lisp/paths.el *** emacs-20.6/lisp/paths.el Tue Jan 26 19:54:23 1999 --- emacs-20.7/lisp/paths.el Tue May 30 22:12:00 2000 *************** Once Info is started, the list of direct *** 64,68 **** comes from the variable `Info-directory-list'. This variable `Info-default-directory-list' is used as the default ! for initializing `Info-directory-list' when Info is started.") (defvar news-path --- 64,69 ---- comes from the variable `Info-directory-list'. This variable `Info-default-directory-list' is used as the default ! for initializing `Info-directory-list' when Info is started, unless ! the environment variable INFOPATH is set.") (defvar news-path diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/progmodes/pascal.el emacs-20.7/lisp/progmodes/pascal.el *** emacs-20.6/lisp/progmodes/pascal.el Thu Feb 17 14:25:26 2000 --- emacs-20.7/lisp/progmodes/pascal.el Thu May 18 16:02:29 2000 *************** *** 1,7 **** ;;; pascal.el --- major mode for editing pascal source in Emacs ! ;; Copyright (C) 1993, 94, 95, 96, 97, 98, 1999 Free Software Foundation, Inc. ! ;; Author: Espen Skoglund ;; Keywords: languages --- 1,7 ---- ;;; pascal.el --- major mode for editing pascal source in Emacs ! ;; Copyright (C) 1993, 94, 95, 96, 97, 98, 1999, 2000 Free Software Foundation, Inc. ! ;; Author: Espen Skoglund ;; Keywords: languages *************** on the line which ends a function or pro *** 785,789 **** (declaration . (+ ind pascal-indent-level)) (paramlist . (pascal-indent-paramlist t)) ! (comment . (pascal-indent-comment t)) (defun . ind) (contexp . ind) (unknown . ind) (string . 0) (progbeg . 0))) --- 785,789 ---- (declaration . (+ ind pascal-indent-level)) (paramlist . (pascal-indent-paramlist t)) ! (comment . (pascal-indent-comment)) (defun . ind) (contexp . ind) (unknown . ind) (string . 0) (progbeg . 0))) *************** Do not count labels, case-statements or *** 956,969 **** (current-column))) ! (defun pascal-indent-comment (&optional arg) ! "Indent current line as comment. ! If optional arg is non-nil, just return the ! column number the line should be indented to." ! (let* ((stcol (save-excursion ! (re-search-backward "(\\*\\|{" nil t) ! (1+ (current-column))))) ! (if arg stcol ! (delete-horizontal-space) ! (indent-to stcol)))) (defun pascal-indent-case () --- 956,966 ---- (current-column))) ! (defun pascal-indent-comment () ! "Return indent for current comment." ! (save-excursion ! (re-search-backward "\\((\\*\\)\\|{" nil t) ! (if (match-beginning 1) ! (1+ (current-column)) ! (current-column)))) (defun pascal-indent-case () diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/progmodes/sh-script.el emacs-20.7/lisp/progmodes/sh-script.el *** emacs-20.6/lisp/progmodes/sh-script.el Thu Jul 1 02:43:29 1999 --- emacs-20.7/lisp/progmodes/sh-script.el Tue May 23 13:17:39 2000 *************** *** 68,71 **** --- 68,72 ---- '((ash . sh) (bash . jsh) + (bash2 . jsh) (dtksh . ksh) (es . rc) *************** sh Bourne Shell *** 116,119 **** --- 117,121 ---- ;; for the time being '((ksh . ksh88) + (bash2 . bash) (sh5 . sh))) "*Alist for transforming shell names to what they really are. diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/simple.el emacs-20.7/lisp/simple.el *** emacs-20.6/lisp/simple.el Thu Oct 21 23:33:29 1999 --- emacs-20.7/lisp/simple.el Tue May 2 14:36:41 2000 *************** to make one entry in the kill ring." *** 1747,1751 **** (condition-case nil ;; Don't let the undo list be truncated before we can even access it. ! (let ((undo-strong-limit (+ (- (max beg end) (min beg end)) 100)) (old-list buffer-undo-list) tail --- 1747,1753 ---- (condition-case nil ;; Don't let the undo list be truncated before we can even access it. ! (let ((undo-strong-limit (+ (- (max beg end) (min beg end)) ! 100 undo-strong-limit)) ! (undo-limit (+ (- (max beg end) (min beg end)) 100 undo-limit)) (old-list buffer-undo-list) tail diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/textmodes/fill.el emacs-20.7/lisp/textmodes/fill.el *** emacs-20.6/lisp/textmodes/fill.el Fri Mar 12 19:48:09 1999 --- emacs-20.7/lisp/textmodes/fill.el Wed Jun 7 11:07:39 2000 *************** If the charset has no such property, do *** 297,301 **** (if (eq charset 'composition) (setq charset (char-charset (composite-char-component ch 0))))) ! (setq func (get-charset-property charset 'fill-find-break-point-function)) (if (and func (fboundp func)) (funcall func limit)))) --- 297,303 ---- (if (eq charset 'composition) (setq charset (char-charset (composite-char-component ch 0))))) ! (if (charsetp charset) ! (setq func ! (get-charset-property charset 'fill-find-break-point-function))) (if (and func (fboundp func)) (funcall func limit)))) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/textmodes/texinfmt.el emacs-20.7/lisp/textmodes/texinfmt.el *** emacs-20.6/lisp/textmodes/texinfmt.el Sat May 29 21:21:06 1999 --- emacs-20.7/lisp/textmodes/texinfmt.el Tue May 2 14:44:49 2000 *************** Leave point after argument." *** 1213,1217 **** (if (nth 3 args) (insert "(" (nth 3 args) ")")) ! (insert (car args)))))) (put 'pxref 'texinfo-format 'texinfo-format-pxref) --- 1213,1217 ---- (if (nth 3 args) (insert "(" (nth 3 args) ")")) ! (and (car args) (insert (car args))))))) (put 'pxref 'texinfo-format 'texinfo-format-pxref) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/tmm.el emacs-20.7/lisp/tmm.el *** emacs-20.6/lisp/tmm.el Sun Jun 14 20:36:00 1998 --- emacs-20.7/lisp/tmm.el Tue May 30 13:39:31 2000 *************** Its value should be an event that has a *** 194,198 **** ;; that actually constitute menu bar items. (if (and (consp (car tail)) ! (stringp (car-safe (cdr (car tail))))) (setq index-of-default (1+ index-of-default))) (setq tail (cdr tail))))) --- 194,199 ---- ;; that actually constitute menu bar items. (if (and (consp (car tail)) ! (or (stringp (car-safe (cdr (car tail)))) ! (eq (car-safe (cdr (car tail))) 'menu-item))) (setq index-of-default (1+ index-of-default))) (setq tail (cdr tail))))) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/version.el emacs-20.7/lisp/version.el *** emacs-20.6/lisp/version.el Sat Feb 26 11:32:27 2000 --- emacs-20.7/lisp/version.el Mon Jun 12 21:11:29 2000 *************** *** 25,29 **** ;;; Code: ! (defconst emacs-version "20.6" "\ Version numbers of this version of Emacs.") --- 25,29 ---- ;;; Code: ! (defconst emacs-version "20.7" "\ Version numbers of this version of Emacs.") diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lisp/w32-fns.el emacs-20.7/lisp/w32-fns.el *** emacs-20.6/lisp/w32-fns.el Sun May 2 11:42:17 1999 --- emacs-20.7/lisp/w32-fns.el Wed May 31 13:23:25 2000 *************** *** 40,43 **** --- 40,46 ---- (define-key function-key-map [C-M-backspace] [\C-\M-delete]) + ;; Ignore language-change events in isearch. + (define-key isearch-mode-map [language-change] nil) + ;; Ignore case on file-name completion (setq completion-ignore-case t) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/lwlib/ChangeLog emacs-20.7/lwlib/ChangeLog *** emacs-20.6/lwlib/ChangeLog Sat Feb 26 11:19:04 2000 --- emacs-20.7/lwlib/ChangeLog Mon Jun 12 21:39:22 2000 *************** *** 1,2 **** --- 1,6 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/man/ChangeLog emacs-20.7/man/ChangeLog *** emacs-20.6/man/ChangeLog Sat Feb 26 11:19:14 2000 --- emacs-20.7/man/ChangeLog Mon Jun 12 21:38:29 2000 *************** *** 1,2 **** --- 1,11 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + + 2000-05-30 Gerd Moellmann + + * info.texi: Clarify description of Info-directory-list, + add description of Info-additional-directory-list. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/man/emacs.texi emacs-20.7/man/emacs.texi *** emacs-20.6/man/emacs.texi Sat Feb 26 11:34:35 2000 --- emacs-20.7/man/emacs.texi Mon Jun 12 21:12:20 2000 *************** *** 9,13 **** @c The edition number appears in several places in this file This is the thirteenth edition of the @cite{GNU Emacs Manual}, ! updated for Emacs version 20.6. @c Please REMEMBER to update edition number in *three* places in this file. --- 9,13 ---- @c The edition number appears in several places in this file This is the thirteenth edition of the @cite{GNU Emacs Manual}, ! updated for Emacs version 20.7. @c Please REMEMBER to update edition number in *three* places in this file. *************** original English. *** 72,76 **** @center @titlefont{GNU Emacs Manual} @sp 4 ! @center Thirteenth Edition, Updated for Emacs Version 20.6 @sp 5 @center Richard Stallman --- 72,76 ---- @center @titlefont{GNU Emacs Manual} @sp 4 ! @center Thirteenth Edition, Updated for Emacs Version 20.7 @sp 5 @center Richard Stallman *************** Copyright @copyright{} 1985, 1986, 1987, *** 81,85 **** @sp 2 Thirteenth Edition @* ! Updated for Emacs Version 20.6, @* February 1999 --- 81,85 ---- @sp 2 Thirteenth Edition @* ! Updated for Emacs Version 20.7, @* February 1999 *************** Cover art by Etienne Suvasa. *** 119,123 **** Emacs is the extensible, customizable, self-documenting real-time display editor. This Info file describes how to edit with Emacs and ! some of how to customize it; it corresponds to GNU Emacs version 20.6. For information on extending Emacs, see @ref{,Emacs Lisp,, elisp, The Emacs Lisp Reference Manual}. --- 119,123 ---- Emacs is the extensible, customizable, self-documenting real-time display editor. This Info file describes how to edit with Emacs and ! some of how to customize it; it corresponds to GNU Emacs version 20.7. For information on extending Emacs, see @ref{,Emacs Lisp,, elisp, The Emacs Lisp Reference Manual}. diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/man/info.texi emacs-20.7/man/info.texi *** emacs-20.6/man/info.texi Wed Apr 7 00:48:00 1999 --- emacs-20.7/man/info.texi Tue May 30 22:04:18 2000 *************** selected. *** 939,947 **** @item Info-directory-list The list of directories to search for Info files. Each element is a ! string (directory name) or @code{nil} (try default directory). @item Info-directory The standard directory for Info documentation files. Only used when the function @code{Info-directory} is called. @end table --- 939,955 ---- @item Info-directory-list The list of directories to search for Info files. Each element is a ! string (directory name) or @code{nil} (try default directory). If not ! initialized Info uses the environment variable @env{INFOPATH} to ! initialize it, or @code{Info-default-directory-list} if there is no ! @env{INFOPATH} variable in the environment. ! ! @item Info-additional-directory-list ! A list of additional directories to search for Info documentation files. ! These directories are not searched for merging the @file{dir} file. @item Info-directory The standard directory for Info documentation files. Only used when the function @code{Info-directory} is called. + @end table diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/msdos/ChangeLog emacs-20.7/msdos/ChangeLog *** emacs-20.6/msdos/ChangeLog Sat Feb 26 11:19:24 2000 --- emacs-20.7/msdos/ChangeLog Mon Jun 12 21:38:16 2000 *************** *** 1,2 **** --- 1,6 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/nt/ChangeLog emacs-20.7/nt/ChangeLog *** emacs-20.6/nt/ChangeLog Wed Feb 23 15:04:01 2000 --- emacs-20.7/nt/ChangeLog Mon Jun 12 21:39:13 2000 *************** *** 1,2 **** --- 1,12 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + + 2000-05-12 Jason Rumney + + * INSTALL: Remove point 5 and other references to emacs.bat. + Renumber following points. Add note in point 1 about emacs.bat + and debug.bat being removed. + 2000-02-20 Andrew Innes diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/nt/INSTALL emacs-20.7/nt/INSTALL *** emacs-20.6/nt/INSTALL Sat Sep 13 23:32:18 1997 --- emacs-20.7/nt/INSTALL Sat May 13 11:16:05 2000 *************** Configuring: *** 15,18 **** --- 15,26 ---- to set MSVCNT11 to be a non-zero value at the top of makefile.def.) + Previous versions also required the use of DOS batch files to set + environment variables before running or debugging Emacs. As of + 20.6, Emacs will default to sensible values if the environment + variables are not set, so these batch files are no longer included + with the distribution. Old emacs.bat and debug.bat files will + still work if you have a special need for them, provided the paths + are updated for this version of Emacs. + (2) Choose the directory into which Emacs will be installed, and edit makefile.def to define INSTALL_DIR to be this directory. *************** Building: *** 55,65 **** Installing: ! (5) Currently, Emacs requires a number of environment variables to be set ! for it to run correctly. A batch file, emacs.bat, is provided that ! sets these variables appropriately and then runs the executable ! (emacs.bat is generated using the definition of INSTALL_DIR in ! nt\makefile.def and the contents of nt\emacs.bat.in). ! ! (6) The install process will install the files necessary to run Emacs in INSTALL_DIR (which may be the directory in which it was built), and create a program manager/folder icon in a folder called GNU Emacs. --- 63,67 ---- Installing: ! (5) The install process will install the files necessary to run Emacs in INSTALL_DIR (which may be the directory in which it was built), and create a program manager/folder icon in a folder called GNU Emacs. *************** Installing: *** 70,74 **** or use the install.bat file. ! (7) Create the Emacs startup file. This file can be named either .emacs, as on Unix, or _emacs. Note that Emacs requires the environment variable HOME to be set in order for it to locate the startup file. --- 72,76 ---- or use the install.bat file. ! (6) Create the Emacs startup file. This file can be named either .emacs, as on Unix, or _emacs. Note that Emacs requires the environment variable HOME to be set in order for it to locate the startup file. *************** Installing: *** 76,80 **** Panel on NT, or in autoexec.bat on Win95. ! (8) Start up Emacs. The installation process should have run the addpm.exe program, which --- 78,82 ---- Panel on NT, or in autoexec.bat on Win95. ! (7) Start up Emacs. The installation process should have run the addpm.exe program, which *************** Installing: *** 91,119 **** folder or invoke runemacs.exe from a command prompt. - Another alternative for running Emacs is to use the emacs.bat batch - file in the bin directory (this was the traditional method of invoking - Emacs). Edit the emacs.bat file to change the emacs_dir environment - variable to point to the Emacs installation directory and invoke the - emacs.bat file to run Emacs. - - Note that, on Win95, you are likely to get "Out of environment space" - messages when invoking the emacs.bat batch file. The problem is that - the console process in which the script is executed runs out of memory - in which to set the Emacs environment variables. To get around this - problem, create a shortcut icon to the emacs.bat script. Then right - click on the icon and select Properties. In the dialog box that pops - up, select the Memory tab and then change the Environment memory - allocation from "Auto" to "1024". Close the dialog box and then - double click on the icon to start Emacs. - Debugging: ! (9) You should be able to debug Emacs using the MSVC debugger as you would ! any other program. To ensure that Emacs uses the lisp files associated ! with the source distribution that you are debugging, it is useful ! to set the Emacs environment variables to point Emacs to the ! source distribution. You can use the debug.bat batch file in this ! directory to setup the environment and invoke msdev on the ! emacs.exe executable. Emacs functions implemented in C use a naming convention that --- 93,100 ---- folder or invoke runemacs.exe from a command prompt. Debugging: ! (8) You should be able to debug Emacs using the MSVC debugger as you would ! any other program. Emacs functions implemented in C use a naming convention that diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/oldXMenu/ChangeLog emacs-20.7/oldXMenu/ChangeLog *** emacs-20.6/oldXMenu/ChangeLog Sat Feb 26 11:20:07 2000 --- emacs-20.7/oldXMenu/ChangeLog Mon Jun 12 21:39:28 2000 *************** *** 1,2 **** --- 1,6 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + 2000-02-26 Gerd Moellmann diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/ChangeLog emacs-20.7/src/ChangeLog *** emacs-20.6/src/ChangeLog Sat Feb 26 11:15:09 2000 --- emacs-20.7/src/ChangeLog Mon Jun 12 21:39:45 2000 *************** *** 1,2 **** --- 1,157 ---- + 2000-06-13 Gerd Moellmann + + * Version 20.7 released. + + 2000-06-01 Andrew Innes + + * w32proc.c (w32_executable_type): Determine whether program is a + GUI app. + (sys_spawnve): Tell create_child whether app is a GUI app. + (create_child): Don't hide window for GUI apps. + (syms_of_ntproc): Update docstring for w32-start-process-show-window. + + 2000-05-30 Andrew Innes + + * w32.c (sys_socket): Revert the previous fix, and use a better + approach for detecting when a socket cannot be made + non-inheritable by duplicating the handle. + + 2000-05-30 Dave Love + + * s/irix5-0.h (LD_SWITCH_SYSTEM): Don't define to `-G 0'. + (C_SWITCH_SYSTEM) [__GNUC__]: Put in #if 0. + + 2000-05-24 Gerd Moellmann + + * m/iris5d.h (UNEXEC): Use unexsgi. + + 2000-05-23 Kenichi Handa + + * xdisp.c (redisplay_window): Set startp_byte (not startp) to + ZV_BYTE. + + 2000-05-23 Andrew Innes + + * w32.c (sys_socket): To work around a problem with MS Proxy + winsock, don't attempt to make sockets non-inheritable if the + proxy winsock appears to be present. + + 2000-05-23 Gerd Moellmann + + * s/gnu-linux.h (setpgrp): Don't define it here because this + prevents compilation on GNU/Linux systems with glib 2.2. + + * callproc.c, emacs.c, sysdep.c (setpgrp) [HAVE_SETPGID]: Define + as setpgid. + + 2000-05-20 NIIBE Yutaka + + * s/gnu-linux.h (UNIX98_PTYS) [HAVE_GRANTPT]: Define. + (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_OPEN, PTY_TTY_NAME_SPRINTF) + [HAVE_GRANTPT]: Define. + (C_SWITCH_SYSTEM): Add -D_XOPEN_SOURCE. + + * sysdep.c (setup_pty): Treat case that UNIX98_PTYS is defined + like SYSV_PTYS. + + * config.in (HAVE_GRANDPT, HAVE_GETPT): New defines. + + * process.c (toplevel) [UNIX98_PTYS]: Include stdlib.h. + + 2000-05-20 Gerd Moellmann + + * buffer.c (Fbury_buffer): Avoid trouble from burying a killed + buffer. + + * keyboard.c (lispy_mouse_names): Variable removed. + (Vlispy_mouse_stem): New variable. + (syms_of_keyboard): Initialize Vlispy_mouse_stem. + (make_lispy_event) : Don't abort + for any mouse button number. Increase size of mouse_syms and + button_down_location as needed. Call modify_event_symbol with + different arguments. + (make_lispy_event) [USE_TOOLKIT_SCROLL_BARS]: + Call modify_event_symbol with different arguments. + (make_lispy_event) [WINDOWSNT]: Don't abort + for any button number. Call modify_event_symbol with different + arguments. + (modify_event_symbol): Rename NAME_ALIST to NAME_ALIST_OR_STEM. + Accept a string for NAME_ALIST_OR_STEM. + + * fns.c (larger_vector): New function. + + * keyboard.c (Fclear_this_command_keys): Clear recent_keys + vector, too. + + 2000-05-16 Gerd Moellmann + + * frame.c (frames_bury_buffer): Don't add a buffer to the frame's + buffer list that wasn't selected in that frame. + + * filelock.c (get_boot_time): To obtain an 8 char file name, use a + 2 char prefix, and call make_temp_name with second arg non-zero. + + * fileio.c (make_temp_name): New function, extracted from + Fmake_temp_name. + (Fmake_temp_name): Use it. + + 2000-05-15 Gerd Moellmann + + * unexelf.c, m/iris4d.h, m/iris5d.h: Use most current development + versions. + + 2000-05-12 Jason Rumney + + * w32bdf.c (w32_BDF_TextOut): Change bytelen arg to char_len + as used by callers. + + * w32term.c (dumpglyphs): Fill background if character goes + higher or lower than normal. W32_TEXTOUT outputs chars not + bytes. Handle bdf fonts when getting width of composite chars + component. Allow for multibyte first glyph in composite char. + + 2000-05-11 Jason Rumney + + * w32menu.c (w32_menu_show): Call ENCODE_SYSTEM for item_name + and descrip. + + 2000-05-11 Andrew Innes + + * w32.c (sys_socket): Check return value of DuplicateHandle, + try to use original socket if it fails. + + 2000-05-11 Kenichi Handa + + * coding.c (code_convert_string): GCPRO str before calling + temp_output_buffer_setup. + + 2000-05-05 Gerd Moellmann + + * insdel.c (insert_from_buffer_1): Adjust FROM position by number + of inserted characters when BUF equals the current buffer, and PT + is in front of or equal to FROM. + + 2000-05-04 Andrew Innes + + * w32fns.c (w32_wnd_proc) : Reduce the maximum + tracking limits to fit within the Windows 9x 16-bit limit. + + 2000-05-02 Gerd Moellmann + + * eval.c (Fsignal): If lisp_eval_depth or spepdl_size are near + to the limits, increase the limits. + + * s/openbsd.h (LIBS_TERMCAP): Undefine. + + * process.c (send_process): Remove local variable `procname' that + might become invalid when a GC happens. Instead, access the + process name slot directly. + + * s/freebsd.h (LIBS_TERMCAP): Define only for __FreeBSD_version + <= 400000. + + * sysdep.c (read_intput_waiting): Add prototype. + (read_input_waiting): Call read_socket_hook with 4 arguments. + 2000-02-26 Gerd Moellmann *************** *** 50,54 **** large as CODING_MODE_LAST_BLOCK requires. ! xxxxr2000-02-20 Dave Love * gmalloc.c: Don't define away `const'; config.h does that. --- 205,209 ---- large as CODING_MODE_LAST_BLOCK requires. ! 2000-02-20 Dave Love * gmalloc.c: Don't define away `const'; config.h does that. diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/buffer.c emacs-20.7/src/buffer.c *** emacs-20.6/src/buffer.c Tue Nov 23 14:16:38 1999 --- emacs-20.7/src/buffer.c Sat May 20 16:06:40 2000 *************** selected window if it is displayed there *** 1651,1665 **** /* Move buffer to the end of the buffer list. */ ! { ! register Lisp_Object aelt, link; ! aelt = Frassq (buffer, Vbuffer_alist); ! link = Fmemq (aelt, Vbuffer_alist); ! Vbuffer_alist = Fdelq (aelt, Vbuffer_alist); ! XCONS (link)->cdr = Qnil; ! Vbuffer_alist = nconc2 (Vbuffer_alist, link); ! } ! frames_bury_buffer (buffer); return Qnil; --- 1651,1666 ---- /* Move buffer to the end of the buffer list. */ ! if (!NILP (XBUFFER (buffer)->name)) ! { ! Lisp_Object aelt, link; ! aelt = Frassq (buffer, Vbuffer_alist); ! link = Fmemq (aelt, Vbuffer_alist); ! Vbuffer_alist = Fdelq (aelt, Vbuffer_alist); ! XCONS (link)->cdr = Qnil; ! Vbuffer_alist = nconc2 (Vbuffer_alist, link); ! frames_bury_buffer (buffer); ! } return Qnil; diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/callproc.c emacs-20.7/src/callproc.c *** emacs-20.6/src/callproc.c Thu Jul 8 00:38:56 1999 --- emacs-20.7/src/callproc.c Wed May 24 15:58:24 2000 *************** extern char **environ; *** 89,92 **** --- 89,98 ---- #endif + #ifdef HAVE_SETPGID + #if !defined (USG) || defined (BSD_PGRPS) + #define setpgrp setpgid + #endif + #endif + #define max(a, b) ((a) > (b) ? (a) : (b)) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/coding.c emacs-20.7/src/coding.c *** emacs-20.6/src/coding.c Sun Dec 5 12:59:52 1999 --- emacs-20.7/src/coding.c Thu May 11 17:08:46 2000 *************** code_convert_string (str, coding, encode *** 4692,4696 **** --- 4692,4698 ---- record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); + GCPRO1 (str); temp_output_buffer_setup (" *code-converting-work*"); + UNGCPRO; set_buffer_internal (XBUFFER (Vstandard_output)); if (encodep) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/config.in emacs-20.7/src/config.in *** emacs-20.6/src/config.in Mon Apr 26 07:19:44 1999 --- emacs-20.7/src/config.in Sat May 20 16:58:21 2000 *************** Boston, MA 02111-1307, USA. */ *** 235,238 **** --- 235,240 ---- #undef HAVE_SHUTDOWN #undef HAVE_STRFTIME + #undef HAVE_GRANTPT + #undef HAVE_GETPT #undef LOCALTIME_CACHE diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/emacs.c emacs-20.7/src/emacs.c *** emacs-20.6/src/emacs.c Wed Dec 1 13:03:43 1999 --- emacs-20.7/src/emacs.c Wed May 24 15:58:54 2000 *************** Boston, MA 02111-1307, USA. */ *** 54,57 **** --- 54,63 ---- #endif + #ifdef HAVE_SETPGID + #if !defined (USG) || defined (BSD_PGRPS) + #define setpgrp setpgid + #endif + #endif + #ifndef O_RDWR #define O_RDWR 2 diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/eval.c emacs-20.7/src/eval.c *** emacs-20.6/src/eval.c Sat Aug 14 04:29:01 1999 --- emacs-20.7/src/eval.c Tue May 2 15:33:57 2000 *************** See also the function `condition-case'." *** 1241,1244 **** --- 1241,1251 ---- { register Lisp_Object clause; + + if (lisp_eval_depth + 20 > max_lisp_eval_depth) + max_lisp_eval_depth = lisp_eval_depth + 20; + + if (specpdl_size + 40 > max_specpdl_size) + max_specpdl_size = specpdl_size + 40; + clause = find_handler_clause (handlerlist->handler, conditions, error_symbol, data, &debugger_value); diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/fileio.c emacs-20.7/src/fileio.c *** emacs-20.6/src/fileio.c Wed Feb 23 15:08:09 2000 --- emacs-20.7/src/fileio.c Tue May 16 13:02:13 2000 *************** static char make_temp_name_tbl[64] = *** 824,839 **** '4','5','6','7','8','9','-','_' }; static unsigned make_temp_name_count, make_temp_name_count_initialized_p; ! DEFUN ("make-temp-name", Fmake_temp_name, Smake_temp_name, 1, 1, 0, ! "Generate temporary file name (string) starting with PREFIX (a string).\n\ ! The Emacs process number forms part of the result,\n\ ! so there is no danger of generating a name being used by another process.\n\ ! \n\ ! In addition, this function makes an attempt to choose a name\n\ ! which has no existing file. To make this work,\n\ ! PREFIX should be an absolute file name.") ! (prefix) Lisp_Object prefix; { Lisp_Object val; --- 824,851 ---- '4','5','6','7','8','9','-','_' }; + static unsigned make_temp_name_count, make_temp_name_count_initialized_p; ! ! /* Value is a temporary file name starting with PREFIX, a string. ! ! The Emacs process number forms part of the result, so there is ! no danger of generating a name being used by another process. ! In addition, this function makes an attempt to choose a name ! which has no existing file. To make this work, PREFIX should be ! an absolute file name. ! ! BASE64_P non-zero means add the pid as 3 characters in base64 ! encoding. In this case, 6 characters will be added to PREFIX to ! form the file name. Otherwise, if Emacs is running on a system ! with long file names, add the pid as a decimal number. ! ! This function signals an error if no unique file name could be ! generated. */ ! ! Lisp_Object ! make_temp_name (prefix, base64_p) Lisp_Object prefix; + int base64_p; { Lisp_Object val; *************** PREFIX should be an absolute file name." *** 843,847 **** char pidbuf[20]; int pidlen; ! CHECK_STRING (prefix, 0); --- 855,859 ---- char pidbuf[20]; int pidlen; ! CHECK_STRING (prefix, 0); *************** PREFIX should be an absolute file name." *** 853,866 **** pid = (int) getpid (); #ifdef HAVE_LONG_FILE_NAMES ! sprintf (pidbuf, "%d", pid); ! pidlen = strlen (pidbuf); #else ! pidbuf[0] = make_temp_name_tbl[pid & 63], pid >>= 6; ! pidbuf[1] = make_temp_name_tbl[pid & 63], pid >>= 6; ! pidbuf[2] = make_temp_name_tbl[pid & 63], pid >>= 6; ! pidlen = 3; #endif ! len = XSTRING (prefix)->size; val = make_uninit_string (len + 3 + pidlen); --- 865,888 ---- pid = (int) getpid (); + if (base64_p) + { + pidbuf[0] = make_temp_name_tbl[pid & 63], pid >>= 6; + pidbuf[1] = make_temp_name_tbl[pid & 63], pid >>= 6; + pidbuf[2] = make_temp_name_tbl[pid & 63], pid >>= 6; + pidlen = 3; + } + else + { #ifdef HAVE_LONG_FILE_NAMES ! sprintf (pidbuf, "%d", pid); ! pidlen = strlen (pidbuf); #else ! pidbuf[0] = make_temp_name_tbl[pid & 63], pid >>= 6; ! pidbuf[1] = make_temp_name_tbl[pid & 63], pid >>= 6; ! pidbuf[2] = make_temp_name_tbl[pid & 63], pid >>= 6; ! pidlen = 3; #endif ! } ! len = XSTRING (prefix)->size; val = make_uninit_string (len + 3 + pidlen); *************** PREFIX should be an absolute file name." *** 924,927 **** --- 946,965 ---- return Qnil; } + + + DEFUN ("make-temp-name", Fmake_temp_name, Smake_temp_name, 1, 1, 0, + "Generate temporary file name (string) starting with PREFIX (a string).\n\ + The Emacs process number forms part of the result,\n\ + so there is no danger of generating a name being used by another process.\n\ + \n\ + In addition, this function makes an attempt to choose a name\n\ + which has no existing file. To make this work,\n\ + PREFIX should be an absolute file name.") + (prefix) + Lisp_Object prefix; + { + return make_temp_name (prefix, 0); + } + diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/filelock.c emacs-20.7/src/filelock.c *** emacs-20.6/src/filelock.c Sun Oct 17 12:11:50 1999 --- emacs-20.7/src/filelock.c Tue May 16 13:02:19 2000 *************** get_boot_time () *** 197,203 **** { Lisp_Object args[6]; ! tempname = Fexpand_file_name (build_string ("wtmp"), Vtemporary_file_directory); ! tempname = Fmake_temp_name (tempname); args[0] = Vshell_file_name; args[1] = Qnil; --- 197,209 ---- { Lisp_Object args[6]; ! ! /* The utmp functions on mescaline.gnu.org accept only ! file names up to 8 characters long. Choose a 2 ! character long prefix, and call make_temp_file with ! second arg non-zero, so that it will add not more ! than 6 characters to the prefix. */ ! tempname = Fexpand_file_name (build_string ("wt"), Vtemporary_file_directory); ! tempname = make_temp_name (tempname, 1); args[0] = Vshell_file_name; args[1] = Qnil; diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/fns.c emacs-20.7/src/fns.c *** emacs-20.6/src/fns.c Fri Oct 15 01:34:03 1999 --- emacs-20.7/src/fns.c Sat May 20 17:24:57 2000 *************** base64_decode_1 (from, to, length) *** 3176,3179 **** --- 3176,3207 ---- } } + + + /* Return a Lisp vector which has the same contents as VEC but has + size NEW_SIZE, NEW_SIZE >= VEC->size. Entries in the resulting + vector that are not copied from VEC are set to INIT. */ + + Lisp_Object + larger_vector (vec, new_size, init) + Lisp_Object vec; + int new_size; + Lisp_Object init; + { + struct Lisp_Vector *v; + int i, old_size; + + old_size = XVECTOR (vec)->size; + v = allocate_vectorlike (new_size); + v->size = new_size; + bcopy (XVECTOR (vec)->contents, v->contents, + old_size * sizeof *v->contents); + for (i = old_size; i < new_size; ++i) + v->contents[i] = init; + XSETVECTOR (vec, v); + return vec; + } + + + void diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/frame.c emacs-20.7/src/frame.c *** emacs-20.6/src/frame.c Mon Aug 2 02:16:45 1999 --- emacs-20.7/src/frame.c Tue May 16 13:45:02 2000 *************** frames_bury_buffer (buffer) *** 1777,1783 **** FOR_EACH_FRAME (tail, frame) { ! XFRAME (frame)->buffer_list ! = nconc2 (Fdelq (buffer, XFRAME (frame)->buffer_list), ! Fcons (buffer, Qnil)); } } --- 1777,1787 ---- FOR_EACH_FRAME (tail, frame) { ! struct frame *f = XFRAME (frame); ! Lisp_Object found; ! ! found = Fmemq (buffer, f->buffer_list); ! if (!NILP (found)) ! f->buffer_list = nconc2 (Fdelq (buffer, f->buffer_list), ! Fcons (buffer, Qnil)); } } diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/insdel.c emacs-20.7/src/insdel.c *** emacs-20.6/src/insdel.c Sun Dec 5 12:59:52 1999 --- emacs-20.7/src/insdel.c Fri May 5 14:01:25 2000 *************** insert_from_buffer_1 (buf, from, nchars, *** 1563,1567 **** intervals = BUF_INTERVALS (buf); if (outgoing_nbytes < BUF_Z_BYTE (buf) - BUF_BEG_BYTE (buf)) ! intervals = copy_intervals (intervals, from, nchars); /* Insert those intervals. */ --- 1563,1571 ---- intervals = BUF_INTERVALS (buf); if (outgoing_nbytes < BUF_Z_BYTE (buf) - BUF_BEG_BYTE (buf)) ! { ! if (buf == current_buffer && PT <= from) ! from += nchars; ! intervals = copy_intervals (intervals, from, nchars); ! } /* Insert those intervals. */ diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/keyboard.c emacs-20.7/src/keyboard.c *** emacs-20.6/src/keyboard.c Thu Nov 18 05:57:32 1999 --- emacs-20.7/src/keyboard.c Sat May 20 16:20:07 2000 *************** static char *iso_lispy_function_keys[] = *** 3918,3925 **** #endif /* not HAVE_NTGUI */ ! static char *lispy_mouse_names[] = ! { ! "mouse-1", "mouse-2", "mouse-3", "mouse-4", "mouse-5" ! }; #ifdef WINDOWSNT --- 3918,3922 ---- #endif /* not HAVE_NTGUI */ ! Lisp_Object Vlispy_mouse_stem; #ifdef WINDOWSNT *************** make_lispy_event (event) *** 4104,4110 **** Lisp_Object start_pos; - if (button < 0 || button >= NUM_MOUSE_BUTTONS) - abort (); - /* Build the position as appropriate for this mouse click. */ if (event->kind == mouse_click) --- 4101,4104 ---- *************** make_lispy_event (event) *** 4226,4229 **** --- 4220,4230 ---- } + if (button >= XVECTOR (button_down_location)->size) + { + button_down_location = larger_vector (button_down_location, + button + 1, Qnil); + mouse_syms = larger_vector (mouse_syms, button + 1, Qnil); + } + start_pos_ptr = &XVECTOR (button_down_location)->contents[button]; *************** make_lispy_event (event) *** 4315,4322 **** head = modify_event_symbol (button, event->modifiers, ! Qmouse_click, Qnil, ! lispy_mouse_names, &mouse_syms, ! (sizeof (lispy_mouse_names) ! / sizeof (lispy_mouse_names[0]))); if (event->modifiers & drag_modifier) return Fcons (head, --- 4316,4323 ---- head = modify_event_symbol (button, event->modifiers, ! Qmouse_click, Vlispy_mouse_stem, ! NULL, ! &mouse_syms, ! XVECTOR (mouse_syms)->size); if (event->modifiers & drag_modifier) return Fcons (head, *************** make_lispy_event (event) *** 4345,4351 **** Lisp_Object start_pos; - if (button < 0 || button >= NUM_MOUSE_BUTTONS) - abort (); - { Lisp_Object window; --- 4346,4349 ---- *************** make_lispy_event (event) *** 4374,4381 **** head = modify_event_symbol (button, event->modifiers, ! Qmouse_click, Qnil, ! lispy_mouse_names, &mouse_syms, ! (sizeof (lispy_mouse_names) ! / sizeof (lispy_mouse_names[0]))); return Fcons (head, Fcons (position, --- 4372,4379 ---- head = modify_event_symbol (button, event->modifiers, ! Qmouse_click, ! Vlispy_mouse_stem, ! NULL, &mouse_syms, ! XVECTOR (mouse_syms)->size); return Fcons (head, Fcons (position, *************** reorder_modifiers (symbol) *** 4951,4956 **** in the table. ! Alternatively, NAME_ALIST is an alist mapping codes into symbol names. ! NAME_ALIST is used if it is non-nil; otherwise NAME_TABLE is used. SYMBOL_TABLE should be a pointer to a Lisp_Object whose value will --- 4949,4957 ---- in the table. ! Alternatively, NAME_ALIST_OR_STEM is either an alist mapping codes ! into symbol names, or a string specifying a name stem used to ! contruct a symbol name or the form `STEM-N', where N is the decimal ! representation of SYMBOL_NUM. NAME_ALIST_OR_STEM is used if it is ! non-nil; otherwise NAME_TABLE is used. SYMBOL_TABLE should be a pointer to a Lisp_Object whose value will *************** reorder_modifiers (symbol) *** 4972,4981 **** static Lisp_Object ! modify_event_symbol (symbol_num, modifiers, symbol_kind, name_alist, name_table, symbol_table, table_size) int symbol_num; unsigned modifiers; Lisp_Object symbol_kind; ! Lisp_Object name_alist; char **name_table; Lisp_Object *symbol_table; --- 4973,4982 ---- static Lisp_Object ! modify_event_symbol (symbol_num, modifiers, symbol_kind, name_alist_or_stem, name_table, symbol_table, table_size) int symbol_num; unsigned modifiers; Lisp_Object symbol_kind; ! Lisp_Object name_alist_or_stem; char **name_table; Lisp_Object *symbol_table; *************** modify_event_symbol (symbol_num, modifie *** 5017,5022 **** { /* No; let's create it. */ ! if (!NILP (name_alist)) ! value = Fcdr_safe (Fassq (symbol_int, name_alist)); else if (name_table != 0 && name_table[symbol_num]) value = intern (name_table[symbol_num]); --- 5018,5031 ---- { /* No; let's create it. */ ! if (CONSP (name_alist_or_stem)) ! value = Fcdr_safe (Fassq (symbol_int, name_alist_or_stem)); ! else if (STRINGP (name_alist_or_stem)) ! { ! int len = STRING_BYTES (XSTRING (name_alist_or_stem)); ! char *buf = (char *) alloca (len + 50); ! sprintf (buf, "%s-%d", XSTRING (name_alist_or_stem)->data, ! XINT (symbol_int) + 1); ! value = intern (buf); ! } else if (name_table != 0 && name_table[symbol_num]) value = intern (name_table[symbol_num]); *************** appears in the echo area and in the valu *** 8319,8326 **** DEFUN ("clear-this-command-keys", Fclear_this_command_keys, Sclear_this_command_keys, 0, 0, 0, ! "Clear out the vector that `this-command-keys' returns.") () { this_command_key_count = 0; return Qnil; } --- 8328,8343 ---- DEFUN ("clear-this-command-keys", Fclear_this_command_keys, Sclear_this_command_keys, 0, 0, 0, ! "Clear out the vector that `this-command-keys' returns.\n\ ! Clear vector containing last 100 events.") () { + int i; + this_command_key_count = 0; + + for (i = 0; i < XVECTOR (recent_keys)->size; ++i) + XVECTOR (recent_keys)->contents[i] = Qnil; + total_keys = 0; + recent_keys_index = 0; return Qnil; } *************** void *** 8937,8940 **** --- 8954,8960 ---- syms_of_keyboard () { + Vlispy_mouse_stem = build_string ("mouse"); + staticpro (&Vlispy_mouse_stem); + staticpro (&item_properties); item_properties = Qnil; *************** syms_of_keyboard () *** 9080,9085 **** } ! button_down_location = Fmake_vector (make_number (NUM_MOUSE_BUTTONS), Qnil); staticpro (&button_down_location); { --- 9100,9107 ---- } ! button_down_location = Fmake_vector (make_number (1), Qnil); staticpro (&button_down_location); + mouse_syms = Fmake_vector (make_number (1), Qnil); + staticpro (&mouse_syms); { *************** syms_of_keyboard () *** 9116,9122 **** func_key_syms = Qnil; staticpro (&func_key_syms); - - mouse_syms = Qnil; - staticpro (&mouse_syms); #ifdef WINDOWSNT --- 9138,9141 ---- diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/m/iris4d.h emacs-20.7/src/m/iris4d.h *** emacs-20.6/src/m/iris4d.h Thu Dec 2 00:46:25 1999 --- emacs-20.7/src/m/iris4d.h Mon May 29 14:17:41 2000 *************** Boston, MA 02111-1307, USA. */ *** 195,199 **** #define C_SWITCH_MACHINE -32 #else ! #define C_SWITCH_MACHINE -n32 -G0 #endif #endif --- 195,199 ---- #define C_SWITCH_MACHINE -32 #else ! #define C_SWITCH_MACHINE -n32 #endif #endif diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/process.c emacs-20.7/src/process.c *** emacs-20.6/src/process.c Tue Feb 15 11:16:26 2000 --- emacs-20.7/src/process.c Tue May 23 21:10:16 2000 *************** Boston, MA 02111-1307, USA. */ *** 45,49 **** #endif ! #ifdef WINDOWSNT #include #include --- 45,53 ---- #endif ! #ifdef HAVE_SETPGID ! #define setpgrp setpgid ! #endif ! ! #if defined(WINDOWSNT) || defined(UNIX98_PTYS) #include #include *************** send_process (proc, buf, len, object) *** 3181,3185 **** /* Use volatile to protect variables from being clobbered by longjmp. */ int rv; - volatile unsigned char *procname = XSTRING (XPROCESS (proc)->name)->data; struct coding_system *coding; struct gcpro gcpro1; --- 3185,3188 ---- *************** send_process (proc, buf, len, object) *** 3196,3202 **** update_status (XPROCESS (proc)); if (! EQ (XPROCESS (proc)->status, Qrun)) ! error ("Process %s not running", procname); if (XINT (XPROCESS (proc)->outfd) < 0) ! error ("Output file descriptor of %s is closed", procname); coding = proc_encode_coding_system[XINT (XPROCESS (proc)->outfd)]; --- 3199,3207 ---- update_status (XPROCESS (proc)); if (! EQ (XPROCESS (proc)->status, Qrun)) ! error ("Process %s not running", ! XSTRING (XPROCESS (proc)->name)->data); if (XINT (XPROCESS (proc)->outfd) < 0) ! error ("Output file descriptor of %s is closed", ! XSTRING (XPROCESS (proc)->name)->data); coding = proc_encode_coding_system[XINT (XPROCESS (proc)->outfd)]; *************** send_process (proc, buf, len, object) *** 3412,3418 **** deactivate_process (proc); #ifdef VMS ! error ("Error writing to process %s; closed it", procname); #else ! error ("SIGPIPE raised on process %s; closed it", procname); #endif } --- 3417,3425 ---- deactivate_process (proc); #ifdef VMS ! error ("Error writing to process %s; closed it", ! XSTRING (XPROCESS (proc)->name)->data); #else ! error ("SIGPIPE raised on process %s; closed it", ! XSTRING (XPROCESS (proc)->name)->data); #endif } diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/s/freebsd.h emacs-20.7/src/s/freebsd.h *** emacs-20.6/src/s/freebsd.h Tue Feb 15 11:19:14 2000 --- emacs-20.7/src/s/freebsd.h Tue May 2 14:29:10 2000 *************** *** 44,48 **** --- 44,50 ---- #define LIBS_DEBUG #define LIBS_SYSTEM -lutil + #if __FreeBSD_version < 400000 #define LIBS_TERMCAP -ltermcap + #endif #define SYSV_SYSTEM_DIR diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/s/gnu-linux.h emacs-20.7/src/s/gnu-linux.h *** emacs-20.6/src/s/gnu-linux.h Wed Jan 26 14:28:40 2000 --- emacs-20.7/src/s/gnu-linux.h Tue May 23 21:08:59 2000 *************** Boston, MA 02111-1307, USA. */ *** 55,76 **** #endif /* NOT_C_CODE */ ! /* Letter to use in finding device name of first pty, ! if system supports pty's. 'p' means it is /dev/ptyp0 */ ! ! #define FIRST_PTY_LETTER 'p' ! ! /* ! * Define HAVE_TERMIOS if the system provides POSIX-style ! * functions and macros for terminal control. ! */ #define HAVE_TERMIOS ! /* ! * Define HAVE_PTYS if the system supports pty devices. ! */ #define HAVE_PTYS /* Uncomment this later when other problems are dealt with -mkj */ --- 55,110 ---- #endif /* NOT_C_CODE */ ! /* Define HAVE_TERMIOS if the system provides POSIX-style ! functions and macros for terminal control. */ #define HAVE_TERMIOS ! /* Define HAVE_PTYS if the system supports pty devices. */ #define HAVE_PTYS + #if defined HAVE_GRANTPT + #define UNIX98_PTYS + + /* Run only once. We need a `for'-loop because the code uses + `continue'. */ + + #define PTY_ITERATION for (i = 0; i < 1; i++) + + #ifdef HAVE_GETPT + #define PTY_NAME_SPRINTF + #define PTY_OPEN fd = getpt () + #else /* not HAVE_GETPT */ + #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx"); + #endif /* not HAVE_GETPT */ + + /* Note that grantpt and unlockpt may fork. We must block SIGCHLD to + prevent sigchld_handler from intercepting the child's death. */ + + #define PTY_TTY_NAME_SPRINTF \ + { \ + char *ptyname; \ + \ + sigblock (sigmask (SIGCHLD)); \ + if (grantpt (fd) == -1 || unlockpt (fd) == -1 \ + || !(ptyname = ptsname(fd))) \ + { \ + sigunblock (sigmask (SIGCHLD)); \ + close (fd); \ + return -1; \ + } \ + strncpy (pty_name, ptyname, sizeof (pty_name)); \ + pty_name[sizeof (pty_name) - 1] = 0; \ + sigunblock (sigmask (SIGCHLD)); \ + } + + #else /* not HAVE_GRANDPT */ + + /* Letter to use in finding device name of first pty, + if system supports pty's. 'p' means it is /dev/ptyp0 */ + + #define FIRST_PTY_LETTER 'p' + #endif /* not HAVE_GRANDPT */ + /* Uncomment this later when other problems are dealt with -mkj */ *************** Boston, MA 02111-1307, USA. */ *** 232,236 **** since libc-4.4.1. So -lipc was deleted. */ #define LIBS_SYSTEM ! #define C_SWITCH_SYSTEM -D_BSD_SOURCE #endif --- 266,270 ---- since libc-4.4.1. So -lipc was deleted. */ #define LIBS_SYSTEM ! #define C_SWITCH_SYSTEM -D_BSD_SOURCE -D_XOPEN_SOURCE #endif *************** Boston, MA 02111-1307, USA. */ *** 298,306 **** /* #define REGEXP_IN_LIBC */ ! /* Use BSD process groups, but use setpgid() instead of setpgrp() to ! actually set a process group. */ #define BSD_PGRPS - #define setpgrp(pid,pgid) setpgid(pid,pgid) /* Use mmap directly for allocating larger buffers. */ --- 332,338 ---- /* #define REGEXP_IN_LIBC */ ! /* Use BSD process groups. */ #define BSD_PGRPS /* Use mmap directly for allocating larger buffers. */ diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/s/irix5-0.h emacs-20.7/src/s/irix5-0.h *** emacs-20.6/src/s/irix5-0.h Thu Feb 17 13:24:19 2000 --- emacs-20.7/src/s/irix5-0.h Tue May 30 13:42:46 2000 *************** char *_getpty(); *** 100,110 **** #define PREFER_VSUSP - /* Because unexsgi.c cannot handle a ".sbss" section yet, we must - tell the linker to avoid making one. SGI's cc does this by - default, but GCC (at least 2.5.8 and 2.6.0) doesn't. */ - #if __GNUC__ == 2 && __GNUC_MINOR__ < 8 - #define LD_SWITCH_SYSTEM -G 0 - #endif - /* define MAIL_USE_FLOCK if the mailer uses flock to interlock access to /usr/spool/mail/$USER. --- 100,103 ---- *************** char *_getpty(); *** 115,120 **** --- 108,115 ---- /* use K&R C */ + #if 0 #ifndef __GNUC__ #define C_SWITCH_SYSTEM -cckr + #endif #endif diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/s/openbsd.h emacs-20.7/src/s/openbsd.h *** emacs-20.6/src/s/openbsd.h Sat Sep 6 21:33:09 1997 --- emacs-20.7/src/s/openbsd.h Tue May 2 14:41:43 2000 *************** *** 6,7 **** --- 6,9 ---- /* Get the rest of the stuff from that less-POSIX-conformant system */ #include "netbsd.h" + + #undef LIBS_TERMCAP diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/sysdep.c emacs-20.7/src/sysdep.c *** emacs-20.6/src/sysdep.c Wed Nov 4 11:44:59 1998 --- emacs-20.7/src/sysdep.c Wed May 24 15:59:14 2000 *************** extern int h_errno; *** 82,85 **** --- 82,91 ---- #endif + #ifdef HAVE_SETPGID + #if !defined (USG) || defined (BSD_PGRPS) + #define setpgrp setpgid + #endif + #endif + /* Get SI_SRPC_DOMAIN, if it is available. */ #ifdef HAVE_SYS_SYSTEMINFO_H *************** int input_fd; *** 246,249 **** --- 252,256 ---- void croak P_ ((char *)); + void read_input_waiting P_ ((void)); #ifdef AIXHFT *************** setup_pty (fd) *** 1844,1848 **** lose that way. -- cph */ #ifdef FIONBIO ! #ifdef SYSV_PTYS { int on = 1; --- 1851,1855 ---- lose that way. -- cph */ #ifdef FIONBIO ! #if defined(SYSV_PTYS) || defined(UNIX98_PTYS) { int on = 1; *************** read_input_waiting () *** 2604,2608 **** read_alarm_should_throw = 0; if (! setjmp (read_alarm_throw)) ! nread = (*read_socket_hook) (0, buf, 256, 1, 0); else nread = -1; --- 2611,2615 ---- read_alarm_should_throw = 0; if (! setjmp (read_alarm_throw)) ! nread = (*read_socket_hook) (0, buf, 256, 1); else nread = -1; diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/unexelf.c emacs-20.7/src/unexelf.c *** emacs-20.6/src/unexelf.c Fri Dec 3 10:09:21 1999 --- emacs-20.7/src/unexelf.c Mon May 15 10:14:02 2000 *************** *** 1,3 **** ! /* Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992 Free Software Foundation, Inc. --- 1,3 ---- ! /* Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992, 1999, 2000 Free Software Foundation, Inc. *************** what you give them. Help stamp out sof *** 53,61 **** * as required by the machine you are using. * - * Specifying zero for data_start means the boundary between text and data - * should not be the same as when the program was loaded. - * If NO_REMAP is defined, the argument data_start is ignored and the - * segment boundaries are never changed. - * * Bss_start indicates how much of the data segment is to be saved in the * a.out file and restored when the program is executed. It gives the lowest --- 53,56 ---- *************** what you give them. Help stamp out sof *** 67,73 **** * The new file is set up to start at entry_address. * - * If you make improvements I'd like to get them too. - * harpo!utah-cs!thomas, thomas@Utah-20 - * */ --- 62,65 ---- *************** Filesz Memsz Flags Alig *** 413,416 **** --- 405,415 ---- */ + #ifndef emacs + #define fatal(a, b, c) fprintf (stderr, a, b, c), exit (1) + #else + #include + extern void fatal (char *, ...); + #endif + #include #include *************** Filesz Memsz Flags Alig *** 430,434 **** #endif /* __sony_news && _SYSTYPE_SYSV */ #if __sgi ! #include /* for HDRR declaration */ #endif /* __sgi */ --- 429,433 ---- #endif /* __sony_news && _SYSTYPE_SYSV */ #if __sgi ! #include /* for HDRR declaration */ #endif /* __sgi */ *************** typedef struct { *** 479,502 **** # include ! # define PT_LOAD Elf_pt_load ! # define SHT_SYMTAB Elf_sht_symtab ! # define SHT_DYNSYM Elf_sht_dynsym ! # define SHT_NULL Elf_sht_null ! # define SHT_NOBITS Elf_sht_nobits ! # define SHT_REL Elf_sht_rel ! # define SHT_RELA Elf_sht_rela ! ! # define SHN_UNDEF Elf_eshn_undefined ! # define SHN_ABS Elf_eshn_absolute ! # define SHN_COMMON Elf_eshn_common ! ! /* ! * The magic of picking the right size types is handled by the ELFSIZE ! * definition above. ! */ ! # ifdef __STDC__ ! # define ElfW(type) Elf_##type ! # else ! # define ElfW(type) Elf_/**/type # endif --- 478,493 ---- # include ! # ifndef PT_LOAD ! # define PT_LOAD Elf_pt_load ! # define SHT_SYMTAB Elf_sht_symtab ! # define SHT_DYNSYM Elf_sht_dynsym ! # define SHT_NULL Elf_sht_null ! # define SHT_NOBITS Elf_sht_nobits ! # define SHT_REL Elf_sht_rel ! # define SHT_RELA Elf_sht_rela ! ! # define SHN_UNDEF Elf_eshn_undefined ! # define SHN_ABS Elf_eshn_absolute ! # define SHN_COMMON Elf_eshn_common # endif *************** typedef struct { *** 518,532 **** #ifndef ElfW # ifdef __STDC__ ! # define ElfW(type) Elf32_##type # else ! # define ElfW(type) Elf32_/**/type # endif ! #endif ! ! #ifndef emacs ! #define fatal(a, b, c) fprintf (stderr, a, b, c), exit (1) ! #else ! #include ! extern void fatal (char *, ...); #endif --- 509,524 ---- #ifndef ElfW # ifdef __STDC__ ! # define ElfBitsW(bits, type) Elf##bits##_##type # else ! # define ElfBitsW(bits, type) Elf/**/bits/**/_/**/type # endif ! # ifdef _LP64 ! # define ELFSIZE 64 ! # else ! # define ELFSIZE 32 ! # endif ! /* This macro expands `bits' before invoking ElfBitsW. */ ! # define ElfExpandBitsW(bits, type) ElfBitsW (bits, type) ! # define ElfW(type) ElfExpandBitsW (ELFSIZE, type) #endif *************** round_up (x, y) *** 589,592 **** --- 581,623 ---- } + /* Return the index of the section named NAME. + SECTION_NAMES, FILE_NAME and FILE_H give information + about the file we are looking in. + + If we don't find the section NAME, that is a fatal error + if NOERROR is 0; we return -1 if NOERROR is nonzero. */ + + static int + find_section (name, section_names, file_name, old_file_h, old_section_h, noerror) + char *name; + char *section_names; + char *file_name; + ElfW(Ehdr) *old_file_h; + ElfW(Shdr) *old_section_h; + int noerror; + { + int idx; + + for (idx = 1; idx < old_file_h->e_shnum; idx++) + { + #ifdef DEBUG + fprintf (stderr, "Looking for %s - found %s\n", name, + section_names + OLD_SECTION_H (idx).sh_name); + #endif + if (!strcmp (section_names + OLD_SECTION_H (idx).sh_name, + name)) + break; + } + if (idx == old_file_h->e_shnum) + { + if (noerror) + return -1; + else + fatal ("Can't find %s in %s.\n", name, file_name, 0); + } + + return idx; + } + /* **************************************************************** * unexec *************** unexec (new_name, old_name, data_start, *** 623,628 **** ElfW(Addr) new_data2_addr; ! int n, nn, old_bss_index, old_data_index, new_data2_index; ! int old_sbss_index, old_mdebug_index; struct stat stat_buf; --- 654,661 ---- ElfW(Addr) new_data2_addr; ! int n, nn; ! int old_bss_index, old_sbss_index; ! int old_data_index, new_data2_index; ! int old_mdebug_index; struct stat stat_buf; *************** unexec (new_name, old_name, data_start, *** 656,718 **** + OLD_SECTION_H (old_file_h->e_shstrndx).sh_offset; /* Find the old .bss section. Figure out parameters of the new * data2 and bss sections. */ ! for (old_bss_index = 1; old_bss_index < (int) old_file_h->e_shnum; ! old_bss_index++) ! { ! #ifdef DEBUG ! fprintf (stderr, "Looking for .bss - found %s\n", ! old_section_names + OLD_SECTION_H (old_bss_index).sh_name); ! #endif ! if (!strcmp (old_section_names + OLD_SECTION_H (old_bss_index).sh_name, ! ELF_BSS_SECTION_NAME)) ! break; ! } ! if (old_bss_index == old_file_h->e_shnum) ! fatal ("Can't find .bss in %s.\n", old_name, 0); ! for (old_sbss_index = 1; old_sbss_index < (int) old_file_h->e_shnum; ! old_sbss_index++) ! { ! #ifdef DEBUG ! fprintf (stderr, "Looking for .sbss - found %s\n", ! old_section_names + OLD_SECTION_H (old_sbss_index).sh_name); ! #endif ! if (!strcmp (old_section_names + OLD_SECTION_H (old_sbss_index).sh_name, ! ".sbss")) ! break; ! } ! if (old_sbss_index == old_file_h->e_shnum) ! { old_sbss_index = -1; ! old_bss_addr = OLD_SECTION_H(old_bss_index).sh_addr; ! old_bss_size = OLD_SECTION_H(old_bss_index).sh_size; ! new_data2_offset = OLD_SECTION_H(old_bss_index).sh_offset; new_data2_index = old_bss_index; } else { ! old_bss_addr = OLD_SECTION_H(old_sbss_index).sh_addr; ! old_bss_size = OLD_SECTION_H(old_bss_index).sh_size ! + OLD_SECTION_H(old_sbss_index).sh_size; ! new_data2_offset = OLD_SECTION_H(old_sbss_index).sh_offset; new_data2_index = old_sbss_index; } ! for (old_mdebug_index = 1; old_mdebug_index < (int) old_file_h->e_shnum; ! old_mdebug_index++) ! { ! #ifdef DEBUG ! fprintf (stderr, "Looking for .mdebug - found %s\n", ! old_section_names + OLD_SECTION_H (old_mdebug_index).sh_name); ! #endif ! if (!strcmp (old_section_names + OLD_SECTION_H (old_mdebug_index).sh_name, ! ".mdebug")) ! break; ! } ! if (old_mdebug_index == old_file_h->e_shnum) ! old_mdebug_index = 0; #if defined (emacs) || !defined (DEBUG) --- 689,729 ---- + OLD_SECTION_H (old_file_h->e_shstrndx).sh_offset; + /* Find the mdebug section, if any. */ + + old_mdebug_index = find_section (".mdebug", old_section_names, + old_name, old_file_h, old_section_h, 1); + /* Find the old .bss section. Figure out parameters of the new * data2 and bss sections. */ ! old_bss_index = find_section (".bss", old_section_names, ! old_name, old_file_h, old_section_h, 0); ! old_sbss_index = find_section (".sbss", old_section_names, ! old_name, old_file_h, old_section_h, 1); ! if (old_sbss_index != -1) ! if (OLD_SECTION_H (old_sbss_index).sh_type == SHT_PROGBITS) old_sbss_index = -1; ! ! if (old_sbss_index == -1) ! { ! old_bss_addr = OLD_SECTION_H (old_bss_index).sh_addr; ! old_bss_size = OLD_SECTION_H (old_bss_index).sh_size; new_data2_index = old_bss_index; } else { ! old_bss_addr = OLD_SECTION_H (old_sbss_index).sh_addr; ! old_bss_size = OLD_SECTION_H (old_bss_index).sh_size ! + OLD_SECTION_H (old_sbss_index).sh_size; new_data2_index = old_sbss_index; } ! /* Find the old .data section. Figure out parameters of ! the new data2 and bss sections. */ ! ! old_data_index = find_section (".data", old_section_names, ! old_name, old_file_h, old_section_h, 0); #if defined (emacs) || !defined (DEBUG) *************** unexec (new_name, old_name, data_start, *** 723,726 **** --- 734,739 ---- new_data2_addr = old_bss_addr; new_data2_size = new_bss_addr - old_bss_addr; + new_data2_offset = OLD_SECTION_H (old_data_index).sh_offset + + (new_data2_addr - OLD_SECTION_H (old_data_index).sh_addr); #ifdef DEBUG *************** unexec (new_name, old_name, data_start, *** 807,811 **** alignment = OLD_SECTION_H (old_bss_index).sh_addralign; ! #ifdef __mips /* According to r02kar@x4u2.desy.de (Karsten Kuenne) and oliva@gnu.org (Alexandre Oliva), on IRIX 5.2, we --- 820,824 ---- alignment = OLD_SECTION_H (old_bss_index).sh_addralign; ! #ifdef __sgi /* According to r02kar@x4u2.desy.de (Karsten Kuenne) and oliva@gnu.org (Alexandre Oliva), on IRIX 5.2, we *************** unexec (new_name, old_name, data_start, *** 813,817 **** when the executable doesn't have an sbss section. */ if (old_sbss_index != -1) ! #endif /* __mips */ if (NEW_PROGRAM_H (n).p_vaddr + NEW_PROGRAM_H (n).p_filesz > (old_sbss_index == -1 --- 826,830 ---- when the executable doesn't have an sbss section. */ if (old_sbss_index != -1) ! #endif /* __sgi */ if (NEW_PROGRAM_H (n).p_vaddr + NEW_PROGRAM_H (n).p_filesz > (old_sbss_index == -1 *************** unexec (new_name, old_name, data_start, *** 949,952 **** --- 962,974 ---- && NEW_SECTION_H (nn).sh_type != SHT_DYNSYM) PATCH_INDEX (NEW_SECTION_H (nn).sh_info); + + if (old_sbss_index != -1) + if (!strcmp (old_section_names + NEW_SECTION_H (nn).sh_name, ".sbss")) + { + NEW_SECTION_H (nn).sh_offset = + round_up (NEW_SECTION_H (nn).sh_offset, + NEW_SECTION_H (nn).sh_addralign); + NEW_SECTION_H (nn).sh_type = SHT_PROGBITS; + } /* Now, start to copy the content of sections. */ *************** unexec (new_name, old_name, data_start, *** 961,974 **** || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".sdata") - #ifdef __sgi || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".lit4") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".lit8") - #endif /* __sgi */ || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".sdata1") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ! ".data1")) src = (caddr_t) OLD_SECTION_H (n).sh_addr; else --- 983,996 ---- || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".sdata") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".lit4") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".lit8") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".sdata1") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ! ".data1") ! || !strcmp (old_section_names + NEW_SECTION_H (nn).sh_name, ! ".sbss")) src = (caddr_t) OLD_SECTION_H (n).sh_addr; else *************** unexec (new_name, old_name, data_start, *** 1000,1004 **** #if defined (__sony_news) && defined (_SYSTYPE_SYSV) ! if (NEW_SECTION_H (nn).sh_type == SHT_MIPS_DEBUG && old_mdebug_index) { int diff = NEW_SECTION_H(nn).sh_offset --- 1022,1027 ---- #if defined (__sony_news) && defined (_SYSTYPE_SYSV) ! if (NEW_SECTION_H (nn).sh_type == SHT_MIPS_DEBUG ! && old_mdebug_index != -1) { int diff = NEW_SECTION_H(nn).sh_offset *************** unexec (new_name, old_name, data_start, *** 1138,1147 **** || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), ".sdata") - #ifdef __sgi || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), ".lit4") || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), ".lit8") - #endif /* __sgi */ || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), ".sdata1") --- 1161,1168 ---- diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/w32.c emacs-20.7/src/w32.c *** emacs-20.6/src/w32.c Wed Feb 23 15:08:09 2000 --- emacs-20.7/src/w32.c Wed May 31 13:31:47 2000 *************** sys_socket(int af, int type, int protoco *** 2580,2590 **** /* setmode (fd, _O_BINARY); */ #else ! /* Make a non-inheritable copy of the socket handle. */ { - HANDLE parent; - HANDLE new_s = INVALID_HANDLE_VALUE; - - parent = GetCurrentProcess (); - /* Apparently there is a bug in NT 3.51 with some service packs, which prevents using DuplicateHandle to make a --- 2580,2588 ---- /* setmode (fd, _O_BINARY); */ #else ! /* Make a non-inheritable copy of the socket handle. Note ! that it is possible that sockets aren't actually kernel ! handles, which appears to be the case on Windows 9x when ! the MS Proxy winsock client is installed. */ { /* Apparently there is a bug in NT 3.51 with some service packs, which prevents using DuplicateHandle to make a *************** sys_socket(int af, int type, int protoco *** 2592,2612 **** hang). The work-around is to use SetHandleInformation instead if it is available and implemented. */ ! if (!pfn_SetHandleInformation ! || !pfn_SetHandleInformation ((HANDLE) s, ! HANDLE_FLAG_INHERIT, ! 0)) { ! DuplicateHandle (parent, ! (HANDLE) s, ! parent, ! &new_s, ! 0, ! FALSE, ! DUPLICATE_SAME_ACCESS); ! pfn_closesocket (s); ! s = (SOCKET) new_s; } - fd_info[fd].hnd = (HANDLE) s; } #endif --- 2590,2628 ---- hang). The work-around is to use SetHandleInformation instead if it is available and implemented. */ ! if (pfn_SetHandleInformation) { ! pfn_SetHandleInformation ((HANDLE) s, HANDLE_FLAG_INHERIT, 0); ! } ! else ! { ! HANDLE parent = GetCurrentProcess (); ! HANDLE new_s = INVALID_HANDLE_VALUE; ! ! if (DuplicateHandle (parent, ! (HANDLE) s, ! parent, ! &new_s, ! 0, ! FALSE, ! DUPLICATE_SAME_ACCESS)) ! { ! /* It is possible that DuplicateHandle succeeds even ! though the socket wasn't really a kernel handle, ! because a real handle has the same value. So ! test whether the new handle really is a socket. */ ! long nonblocking = 0; ! if (pfn_ioctlsocket ((SOCKET) new_s, FIONBIO, &nonblocking) == 0) ! { ! pfn_closesocket (s); ! s = (SOCKET) new_s; ! } ! else ! { ! CloseHandle (new_s); ! } ! } } } + fd_info[fd].hnd = (HANDLE) s; #endif diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/w32bdf.c emacs-20.7/src/w32bdf.c *** emacs-20.6/src/w32bdf.c Mon Jun 14 11:08:42 1999 --- emacs-20.7/src/w32bdf.c Sat May 13 11:14:18 2000 *************** get_bitmap_with_cache(bdffont *fontp, in *** 534,538 **** int w32_BDF_TextOut(bdffont *fontp, HDC hdc, int left, ! int top, unsigned char *text, int dim, int bytelen, int fixed_pitch_size) { --- 534,538 ---- int w32_BDF_TextOut(bdffont *fontp, HDC hdc, int left, ! int top, unsigned char *text, int dim, int char_len, int fixed_pitch_size) { *************** w32_BDF_TextOut(bdffont *fontp, HDC hdc, *** 546,549 **** --- 546,550 ---- UINT textalign; int flag = 0; + int bytelen = char_len * dim; hCompatDC = CreateCompatibleDC(hdc); diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/w32fns.c emacs-20.7/src/w32fns.c *** emacs-20.6/src/w32fns.c Fri Feb 25 20:49:01 2000 --- emacs-20.7/src/w32fns.c Thu May 4 23:05:49 2000 *************** w32_wnd_proc (hwnd, msg, wParam, lParam) *** 4482,4488 **** below the Minimum Tracking Size. */ ((LPMINMAXINFO) lParam)->ptMinTrackSize.y++; ! /* Hack to allow resizing the Emacs frame above the screen size */ ! ((LPMINMAXINFO) lParam)->ptMaxTrackSize.x = LONG_MAX; ! ((LPMINMAXINFO) lParam)->ptMaxTrackSize.y = LONG_MAX; return 0; --- 4482,4489 ---- below the Minimum Tracking Size. */ ((LPMINMAXINFO) lParam)->ptMinTrackSize.y++; ! /* Hack to allow resizing the Emacs frame above the screen size. ! Note that Windows 9x limits coordinates to 16-bits. */ ! ((LPMINMAXINFO) lParam)->ptMaxTrackSize.x = 32767; ! ((LPMINMAXINFO) lParam)->ptMaxTrackSize.y = 32767; return 0; diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/w32menu.c emacs-20.7/src/w32menu.c *** emacs-20.6/src/w32menu.c Wed Feb 23 15:08:09 2000 --- emacs-20.7/src/w32menu.c Thu May 11 17:11:10 2000 *************** w32_menu_show (f, x, y, for_click, keyma *** 1728,1731 **** --- 1728,1738 ---- def = XVECTOR (menu_items)->contents[i + MENU_ITEMS_ITEM_DEFINITION]; + #ifndef HAVE_MULTILINGUAL_MENU + if (STRING_MULTIBYTE (item_name)) + item_name = ENCODE_SYSTEM (item_name); + if (STRINGP (descrip) && STRING_MULTIBYTE (descrip)) + descrip = ENCODE_SYSTEM (descrip); + #endif + wv = xmalloc_widget_value (); if (prev_wv) diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/w32proc.c emacs-20.7/src/w32proc.c *** emacs-20.6/src/w32proc.c Wed Feb 16 12:43:15 2000 --- emacs-20.7/src/w32proc.c Fri Jun 2 13:21:39 2000 *************** static char * process_dir; *** 304,308 **** static BOOL ! create_child (char *exe, char *cmdline, char *env, int * pPid, child_process *cp) { --- 304,308 ---- static BOOL ! create_child (char *exe, char *cmdline, char *env, int is_gui_app, int * pPid, child_process *cp) { *************** create_child (char *exe, char *cmdline, *** 319,323 **** #ifdef HAVE_NTGUI ! if (NILP (Vw32_start_process_show_window)) start.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW; else --- 319,323 ---- #ifdef HAVE_NTGUI ! if (NILP (Vw32_start_process_show_window) && !is_gui_app) start.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW; else *************** get_result: *** 569,573 **** void ! w32_executable_type (char * filename, int * is_dos_app, int * is_cygnus_app) { file_data executable; --- 569,573 ---- void ! w32_executable_type (char * filename, int * is_dos_app, int * is_cygnus_app, int * is_gui_app) { file_data executable; *************** w32_executable_type (char * filename, in *** 577,580 **** --- 577,581 ---- *is_dos_app = FALSE; *is_cygnus_app = FALSE; + *is_gui_app = FALSE; if (!open_input_file (&executable, filename)) *************** w32_executable_type (char * filename, in *** 597,601 **** p = egetenv ("COMSPEC"); if (p) ! w32_executable_type (p, is_dos_app, is_cygnus_app); } else --- 598,602 ---- p = egetenv ("COMSPEC"); if (p) ! w32_executable_type (p, is_dos_app, is_cygnus_app, is_gui_app); } else *************** w32_executable_type (char * filename, in *** 649,652 **** --- 650,658 ---- } } + + /* Check whether app is marked as a console or windowed (aka + GUI) app. Accept Posix and OS2 subsytem apps as console + apps. */ + *is_gui_app = (nt_header->OptionalHeader.Subsystem == IMAGE_SUBSYSTEM_WINDOWS_GUI); } } *************** sys_spawnve (int mode, char *cmdname, ch *** 710,714 **** int pid; child_process *cp; ! int is_dos_app, is_cygnus_app; int do_quoting = 0; char escape_char; --- 716,720 ---- int pid; child_process *cp; ! int is_dos_app, is_cygnus_app, is_gui_app; int do_quoting = 0; char escape_char; *************** sys_spawnve (int mode, char *cmdname, ch *** 752,757 **** was compiled with the Cygnus GNU toolchain and hence relies on cygwin.dll to parse the command line - we use this to decide how to ! escape quote chars in command line args that must be quoted). */ ! w32_executable_type (cmdname, &is_dos_app, &is_cygnus_app); /* On Windows 95, if cmdname is a DOS app, we invoke a helper --- 758,766 ---- was compiled with the Cygnus GNU toolchain and hence relies on cygwin.dll to parse the command line - we use this to decide how to ! escape quote chars in command line args that must be quoted). ! ! Also determine whether it is a GUI app, so that we don't hide its ! initial window unless specifically requested. */ ! w32_executable_type (cmdname, &is_dos_app, &is_cygnus_app, &is_gui_app); /* On Windows 95, if cmdname is a DOS app, we invoke a helper *************** sys_spawnve (int mode, char *cmdname, ch *** 978,982 **** /* Now create the process. */ ! if (!create_child (cmdname, cmdline, env, &pid, cp)) { delete_child (cp); --- 987,991 ---- /* Now create the process. */ ! if (!create_child (cmdname, cmdline, env, is_gui_app, &pid, cp)) { delete_child (cp); *************** will be chosen based on the type of the *** 2140,2144 **** &Vw32_start_process_show_window, "When nil, new child processes hide their windows.\n\ ! When non-nil, they show their window in the method of their choice."); Vw32_start_process_show_window = Qnil; --- 2149,2154 ---- &Vw32_start_process_show_window, "When nil, new child processes hide their windows.\n\ ! When non-nil, they show their window in the method of their choice.\n\ ! This variable doesn't affect GUI applications, which will never be hidden."); Vw32_start_process_show_window = Qnil; diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/w32term.c emacs-20.7/src/w32term.c *** emacs-20.6/src/w32term.c Fri Jun 18 09:34:44 1999 --- emacs-20.7/src/w32term.c Sat May 13 11:14:24 2000 *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 939,943 **** else if (!font || font->bdf ! || FONT_HEIGHT (font) < line_height || FONT_WIDTH (font) < glyph_width || FONT_MAX_WIDTH (font) != FONT_WIDTH (font) --- 939,945 ---- else if (!font || font->bdf ! || FONT_BASE (font) < baseline ! || (FONT_HEIGHT (font) - FONT_BASE (font) ! < line_height - baseline) || FONT_WIDTH (font) < glyph_width || FONT_MAX_WIDTH (font) != FONT_WIDTH (font) *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1046,1050 **** { i = 0; ! W32_TEXTOUT (i, n_chars); } } --- 1048,1052 ---- { i = 0; ! W32_TEXTOUT (i, len); } } *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1058,1061 **** --- 1060,1064 ---- int char_width = 0; + i = 0; if (require_clipping) { *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1076,1080 **** int xoffset = 0; int yoffset = baseline; - int start = 0; if (default_ascent --- 1079,1082 ---- *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1087,1090 **** --- 1089,1093 ---- /* TODO: per char metrics for Truetype and BDF fonts. */ + else { highest = FONT_BASE (font) + 1; *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1096,1101 **** * FONT_WIDTH (FRAME_FONT (f))); - i = 1; - /* Truetype fonts often contain underhangs to handle composition characters. This works --- 1099,1102 ---- *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1103,1113 **** manually, so we need to compensate for this. */ ! if (print_via_unicode ? ! GetCharABCWidthsW (hdc, *x_2byte_buffer, ! *x_2byte_buffer, ! &char_placement) ! : GetCharABCWidths (hdc, *x_1byte_buffer, ! *x_1byte_buffer, ! &char_placement)) { char_width = char_placement.abcA --- 1104,1118 ---- manually, so we need to compensate for this. */ ! if (font->bdf) ! { ! char_width = FONT_WIDTH(font); ! } ! else if (print_via_unicode ? ! GetCharABCWidthsW (hdc, *x_2byte_buffer, ! *x_2byte_buffer, ! &char_placement) ! : GetCharABCWidths (hdc, *x_1byte_buffer, ! *x_1byte_buffer, ! &char_placement)) { char_width = char_placement.abcA *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1125,1133 **** /* Draw the first character at the normal position. */ ! W32_TEXTOUT (start, 1); gidx++; } - else - i = 0; for (; i < n_chars; gidx++) --- 1130,1136 ---- /* Draw the first character at the normal position. */ ! W32_TEXTOUT (i, 1); gidx++; } for (; i < n_chars; gidx++) *************** dumpglyphs (f, left, top, gp, n, hl, jus *** 1206,1216 **** manually, so we need to compensate for this. */ ! if (print_via_unicode ? ! GetCharABCWidthsW (hdc, *(x_2byte_buffer + i), ! *(x_2byte_buffer + i), ! &char_placement) ! : GetCharABCWidths (hdc, *(x_1byte_buffer + i), ! *(x_1byte_buffer + i), ! &char_placement)) { char_width = char_placement.abcA --- 1209,1223 ---- manually, so we need to compensate for this. */ ! if (font->bdf) ! { ! char_width = FONT_WIDTH (font); ! } ! else if (print_via_unicode ? ! GetCharABCWidthsW (hdc, *(x_2byte_buffer + i), ! *(x_2byte_buffer + i), ! &char_placement) ! : GetCharABCWidths (hdc, *(x_1byte_buffer + i), ! *(x_1byte_buffer + i), ! &char_placement)) { char_width = char_placement.abcA diff -2rcpP --exclude=info/* --exclude=*.elc --exclude=*.aux --exclude=*.cps --exclude=*.fns --exclude=*.kys --exclude=*.vrs emacs-20.6/src/xdisp.c emacs-20.7/src/xdisp.c *** emacs-20.6/src/xdisp.c Thu Feb 17 11:32:28 2000 --- emacs-20.7/src/xdisp.c Wed May 24 13:24:07 2000 *************** redisplay_window (window, just_this_one, *** 1992,1996 **** XSETFASTINT (w->last_overlay_modified, 0); if (startp < BEGV) startp = BEGV, startp_byte = BEGV_BYTE; ! if (startp > ZV) startp = ZV, startp = ZV_BYTE; try_window (window, startp); if (cursor_vpos < 0) --- 1992,1996 ---- XSETFASTINT (w->last_overlay_modified, 0); if (startp < BEGV) startp = BEGV, startp_byte = BEGV_BYTE; ! if (startp > ZV) startp = ZV, startp_byte = ZV_BYTE; try_window (window, startp); if (cursor_vpos < 0)