carbon2-commit: Automated merge with
file:/Sources/xemacs-21.5-checked-out
Aidan Kehoe
aidan-guest at alioth.debian.org
Sun Dec 30 10:27:35 EST 2007
changeset: 4369:df1f1f49ef702d66951ed0833cf160116c2b4e01
parent: 4368:63c25d1cbecf001ad5d3df335e95283d0a3d917d
parent: 4366:cc293ef846d240af187a523bb32eb5e26a083531
user: Aidan Kehoe <kehoea at parhasard.net>
date: Mon Dec 24 15:04:01 2007 +0100
files: src/ChangeLog tests/reproduce-bugs.el
description:
Automated merge with file:/Sources/xemacs-21.5-checked-out
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 .hgignore
--- a/.hgignore Mon Dec 24 15:02:36 2007 +0100
+++ b/.hgignore Mon Dec 24 15:04:01 2007 +0100
@@ -1,3 +1,47 @@
(^|/)CVS($|/)
(^|/)\.hg($|/)
(^|/)\.hgtags($|/)
+\.o$
+\.elc$
+~$
+\.orig$
+\.rej$
+(^|/)\#[^/]*\#$
+(^|/)\.\#[^/]*$
+info/.*\.info(-[0-9]+)?$
+^GNUmakefile$
+^Installation$
+^Makefile$
+^Makefile\.in$
+^autom4te\.cache
+^config\.(log|status)$
+^lib-src/DOC$
+^lib-src/(GNUmakefile|Makefile(\.in)?)$
+^lib-src/config\.values$
+^lib-src/(b2m|ctags|cvtmail|digest-doc|ellcc|etags|fakemail|gnuclient|gnuserv|hexl|insert-data-in-exec|make-docfile|make-dump-id|make-path|mmencode|movemail|ootags|profile|sorted-doc|wakeup|yow)$
+^lib-src/ellcc\.h$
+^lisp/(auto-autoloads|custom-load|finder-inf)\.el$
+^lisp/mule/(auto-autoloads|custom-load)\.el$
+^lwlib/(GNUmakefile|Makefile(\.in)?)$
+^lwlib/liblw\.a$
+^lwlib/config\.h$
+^modules/auto-autoloads\.el$
+^modules/ldap/(GNUmakefile|Makefile(\.in)?)$
+^modules/ldap/eldap\.ell$
+^modules/ldap/eldap_i\.c$
+^(xemacs|mule)-packages
+^etc/PROBLEMS$
+^src/(.dbxrc|.gdbinit)(\.in)?$
+^src/(GNUmakefile|Makefile(\.in)?)$
+^src/NEEDTODUMP$
+^src/config\.h$
+^src/dump-id\.c$
+^src/dump-size$
+^src/paths\.h$
+^src/sheap-adjust\.h$
+^src/temacs$
+^src/xemacs$
+^src/xemacs\.def(\.in)?$
+^src/xemacs\.dmp$
+^src/Emacs\.ad\.h$
+^etc/bundled-packages/.*\.tar\.gz$
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 ChangeLog
--- a/ChangeLog Mon Dec 24 15:02:36 2007 +0100
+++ b/ChangeLog Mon Dec 24 15:04:01 2007 +0100
@@ -1,3 +1,26 @@ 2007-08-27 Mike Sperber <mike at xemacs.o
+2007-12-23 Stephen J. Turnbull <stephen at xemacs.org>
+
+ * Makefile.in.in (mkpkgdir):
+ (check-available-packages):
+ (install-bootstrap-packages):
+ (install-nonmule-packages):
+ (install-all-packages):
+ New targets supporting bundled packages.
+
+ * .hgignore: Ignore tarballs in etc/bundled-packages/.
+
+2007-12-08 Jerry James <james at xemacs.org>
+
+ * config.guess:
+ * config.sub: Sync with the latest upstream versions.
+
+2007-12-12 Aidan Kehoe <kehoea at parhasard.net>
+
+ * configure.ac :
+ Check for FcConfigGetRescanInterval, FcConfigSetRescanInterval.
+ * configure :
+ Rebuild.
+
2007-08-27 Mike Sperber <mike at xemacs.org>
* configure.ac: Try to use pkg-config for finding Xft includes and
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 Makefile.in.in
--- a/Makefile.in.in Mon Dec 24 15:02:36 2007 +0100
+++ b/Makefile.in.in Mon Dec 24 15:04:01 2007 +0100
@@ -491,6 +491,48 @@ mkdir: FRC.mkdir
#endif
${sitelispdir}
+## Install bundled packages, if present.
+
+package_path = @LATE_PACKAGE_DIRECTORIES@
+pkgsrcdir = ${srcdir}/etc/bundled-packages
+
+## #### Probably we should add a rule for lib-src/make-path here.
+
+check-available-packages:
+ @if test -r ${pkgsrcdir}/bootstrap.tar.gz; \
+ then echo "To install a set of bootstrap packages, type:"; \
+ echo " make install-bootstrap-packages"; \
+ fi; \
+ if test -r ${pkgsrcdir}/xemacs-sumo.tar.gz; \
+ then echo "To install the full set of non-mule packages, type:"; \
+ echo " make install-nonmule-packages"; \
+ fi; \
+ if test -r ${pkgsrcdir}/xemacs-mule-sumo.tar.gz; \
+ then echo "To install the full set of packages with mule, type:"; \
+ echo " make install-all-packages"; \
+ fi;
+
+mkpkgdir: FRC.mkdir ${MAKEPATH}
+ @if test -z ${package_path}; \
+ then echo "not configured --with-late-packages; no place to install."; \
+ exit -1; \
+ elif test -e ${package_path}/xemacs-packages \
+ -o -e ${package_path}/mule-packages; \
+ then echo "${package_path} is installed; won't overwrite packages."; \
+ exit -1; \
+ fi
+ ${MAKEPATH} ${package_path};
+
+install-bootstrap-packages: mkpkgdir
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/bootstrap.tar.gz
+
+install-nonmule-packages: mkpkgdir
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/xemacs-sumo.tar.gz
+
+install-all-packages: mkpkgdir
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/xemacs-sumo.tar.gz; \
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/xemacs-mule-sumo.tar.gz
+
## Delete all the installed files that the `install' target would
## create (but not the noninstalled files such as `make all' would
## create).
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 config.guess
--- a/config.guess Mon Dec 24 15:02:36 2007 +0100
+++ b/config.guess Mon Dec 24 15:04:01 2007 +0100
@@ -1,9 +1,10 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
-
-timestamp='2005-02-10'
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+# Inc.
+
+timestamp='2007-12-05'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -17,12 +18,14 @@ timestamp='2005-02-10'
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+
# Originally written by Per Bothner <per at bothner.com>.
# Please send patches to <config-patches at gnu.org>. Submit a context
@@ -66,11 +69,11 @@ while test $# -gt 0 ; do
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
- echo "$timestamp" ; exit 0 ;;
+ echo "$timestamp" ; exit ;;
--version | -v )
- echo "$version" ; exit 0 ;;
+ echo "$version" ; exit ;;
--help | --h* | -h )
- echo "$usage"; exit 0 ;;
+ echo "$usage"; exit ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@@ -104,7 +107,7 @@ trap "exitcode=\$?; (rm -f \$tmpfiles 2>
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
@@ -123,7 +126,7 @@ case $CC_FOR_BUILD,$HOST_CC,$CC in
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ;'
+esac ; set_cc_for_build= ;'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi at noc.rutgers.edu 1994-08-24)
@@ -158,6 +161,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
+ sh5el) machine=sh5le-unknown ;;
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
@@ -196,55 +200,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
- exit 0 ;;
- amd64:OpenBSD:*:*)
- echo x86_64-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- amiga:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- cats:OpenBSD:*:*)
- echo arm-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- hp300:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- luna88k:OpenBSD:*:*)
- echo m88k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mac68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- macppc:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme88k:OpenBSD:*:*)
- echo m88k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvmeppc:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sgi:OpenBSD:*:*)
- echo mips64-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sun3:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:OpenBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+ exit ;;
*:ekkoBSD:*:*)
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
+ *:SolidBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+ exit ;;
macppc:MirBSD:*:*)
- echo powerppc-unknown-mirbsd${UNAME_RELEASE}
- exit 0 ;;
+ echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+ exit ;;
*:MirBSD:*:*)
echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
@@ -297,40 +269,43 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit 0 ;;
+ exit ;;
Alpha\ *:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# Should we change UNAME_MACHINE based on the output of uname instead
# of the specific Alpha model?
echo alpha-pc-interix
- exit 0 ;;
+ exit ;;
21064:Windows_NT:50:3)
echo alpha-dec-winnt3.5
- exit 0 ;;
+ exit ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
- exit 0;;
+ exit ;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
- exit 0 ;;
+ exit ;;
*:[Mm]orph[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-morphos
- exit 0 ;;
+ exit ;;
*:OS/390:*:*)
echo i370-ibm-openedition
- exit 0 ;;
+ exit ;;
*:z/VM:*:*)
echo s390-ibm-zvmoe
- exit 0 ;;
+ exit ;;
*:OS400:*:*)
echo powerpc-ibm-os400
- exit 0 ;;
+ exit ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
- exit 0;;
+ exit ;;
+ arm:riscos:*:*|arm:RISCOS:*:*)
+ echo arm-unknown-riscos
+ exit ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
- exit 0;;
+ exit ;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
@@ -338,32 +313,32 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
else
echo pyramid-pyramid-bsd
fi
- exit 0 ;;
+ exit ;;
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
- exit 0 ;;
+ exit ;;
DRS?6000:unix:4.0:6*)
echo sparc-icl-nx6
- exit 0 ;;
+ exit ;;
DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7 && exit 0 ;;
+ sparc) echo sparc-icl-nx7; exit ;;
esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ exit ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- i86pc:SunOS:5.*:*)
+ exit ;;
+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ exit ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ exit ;;
sun4*:SunOS:*:*)
case "`/usr/bin/arch -k`" in
Series*|S4*)
@@ -372,10 +347,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit 0 ;;
+ exit ;;
sun3*:SunOS:*:*)
echo m68k-sun-sunos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
@@ -387,10 +362,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
echo sparc-sun-sunos${UNAME_RELEASE}
;;
esac
- exit 0 ;;
+ exit ;;
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
@@ -401,40 +376,40 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
echo m68k-milan-mint${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
echo m68k-hades-mint${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
m68k:machten:*:*)
echo m68k-apple-machten${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
- exit 0 ;;
+ exit ;;
RISC*:ULTRIX:*:*)
echo mips-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
echo clipper-intergraph-clix${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
@@ -458,32 +433,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
exit (-1);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c \
- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
- && exit 0
+ $CC_FOR_BUILD -o $dummy $dummy.c &&
+ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+ SYSTEM_NAME=`$dummy $dummyarg` &&
+ { echo "$SYSTEM_NAME"; exit; }
echo mips-mips-riscos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
- exit 0 ;;
+ exit ;;
Motorola:*:4.3:PL8-*)
echo powerpc-harris-powermax
- exit 0 ;;
+ exit ;;
Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
echo powerpc-harris-powermax
- exit 0 ;;
+ exit ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
- exit 0 ;;
+ exit ;;
m88k:CX/UX:7*:*)
echo m88k-harris-cxux7
- exit 0 ;;
+ exit ;;
m88k:*:4*:R4*)
echo m88k-motorola-sysv4
- exit 0 ;;
+ exit ;;
m88k:*:3*:R3*)
echo m88k-motorola-sysv3
- exit 0 ;;
+ exit ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
@@ -499,29 +475,29 @@ EOF
else
echo i586-dg-dgux${UNAME_RELEASE}
fi
- exit 0 ;;
+ exit ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
- exit 0 ;;
+ exit ;;
M88*:*:R3*:*)
# Delta 88k system running SVR3
echo m88k-motorola-sysv3
- exit 0 ;;
+ exit ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
echo m88k-tektronix-sysv3
- exit 0 ;;
+ exit ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd
- exit 0 ;;
+ exit ;;
*:IRIX*:*:*)
echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit 0 ;;
+ exit ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i*86:AIX:*:*)
echo i386-ibm-aix
- exit 0 ;;
+ exit ;;
ia64:AIX:*:*)
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
@@ -529,7 +505,7 @@ EOF
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit 0 ;;
+ exit ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
eval $set_cc_for_build
@@ -544,14 +520,18 @@ EOF
exit(0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
- echo rs6000-ibm-aix3.2.5
+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+ then
+ echo "$SYSTEM_NAME"
+ else
+ echo rs6000-ibm-aix3.2.5
+ fi
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
else
echo rs6000-ibm-aix3.2
fi
- exit 0 ;;
+ exit ;;
*:AIX:*:[45])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
@@ -565,28 +545,28 @@ EOF
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit 0 ;;
+ exit ;;
*:AIX:*:*)
echo rs6000-ibm-aix
- exit 0 ;;
+ exit ;;
ibmrt:4.4BSD:*|romp-ibm:BSD:*)
echo romp-ibm-bsd4.4
- exit 0 ;;
+ exit ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit 0 ;; # report: romp-ibm BSD 4.3
+ exit ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
- exit 0 ;;
+ exit ;;
DPX/2?00:B.O.S.:*:*)
echo m68k-bull-sysv3
- exit 0 ;;
+ exit ;;
9000/[34]??:4.3bsd:1.*:*)
echo m68k-hp-bsd
- exit 0 ;;
+ exit ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4
- exit 0 ;;
+ exit ;;
9000/[34678]??:HP-UX:*:*)
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
case "${UNAME_MACHINE}" in
@@ -648,9 +628,19 @@ EOF
esac
if [ ${HP_ARCH} = "hppa2.0w" ]
then
- # avoid double evaluation of $set_cc_for_build
- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
+ eval $set_cc_for_build
+
+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
+ # generating 64-bit code. GNU and HP use different nomenclature:
+ #
+ # $ CC_FOR_BUILD=cc ./config.guess
+ # => hppa2.0w-hp-hpux11.23
+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+ # => hppa64-hp-hpux11.23
+
+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+ grep __LP64__ >/dev/null
then
HP_ARCH="hppa2.0w"
else
@@ -658,11 +648,11 @@ EOF
fi
fi
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit 0 ;;
+ exit ;;
ia64:HP-UX:*:*)
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
echo ia64-hp-hpux${HPUX_REV}
- exit 0 ;;
+ exit ;;
3050*:HI-UX:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
@@ -690,161 +680,189 @@ EOF
exit (0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
echo unknown-hitachi-hiuxwe2
- exit 0 ;;
+ exit ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
echo hppa1.1-hp-bsd
- exit 0 ;;
+ exit ;;
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
- exit 0 ;;
+ exit ;;
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
- exit 0 ;;
+ exit ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
echo hppa1.1-hp-osf
- exit 0 ;;
+ exit ;;
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
- exit 0 ;;
+ exit ;;
i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
echo ${UNAME_MACHINE}-unknown-osf1mk
else
echo ${UNAME_MACHINE}-unknown-osf1
fi
- exit 0 ;;
+ exit ;;
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
- exit 0 ;;
+ exit ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
- exit 0 ;;
+ exit ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
- exit 0 ;;
+ exit ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
- exit 0 ;;
+ exit ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
- exit 0 ;;
+ exit ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
- exit 0 ;;
+ exit ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
CRAY*T3E:*:*:*)
echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
CRAY*SV1:*:*:*)
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
*:UNICOS/mp:*:*)
echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit 0 ;;
+ exit ;;
5000:UNIX_System_V:4.*:*)
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit 0 ;;
+ exit ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
sparc*:BSD/OS:*:*)
echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:BSD/OS:*:*)
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:FreeBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit 0 ;;
+ case ${UNAME_MACHINE} in
+ pc98)
+ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ amd64)
+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ *)
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ esac
+ exit ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
- exit 0 ;;
- i*:MINGW*:*)
+ exit ;;
+ *:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
- exit 0 ;;
+ exit ;;
+ i*:windows32*:*)
+ # uname -m includes "-pc" on this system.
+ echo ${UNAME_MACHINE}-mingw32
+ exit ;;
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
- exit 0 ;;
- x86:Interix*:[34]*)
- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
- exit 0 ;;
+ exit ;;
+ *:Interix*:[3456]*)
+ case ${UNAME_MACHINE} in
+ x86)
+ echo i586-pc-interix${UNAME_RELEASE}
+ exit ;;
+ EM64T | authenticamd)
+ echo x86_64-unknown-interix${UNAME_RELEASE}
+ exit ;;
+ esac ;;
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo i${UNAME_MACHINE}-pc-mks
- exit 0 ;;
+ exit ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
# UNAME_MACHINE based on the output of uname instead of i386?
echo i586-pc-interix
- exit 0 ;;
+ exit ;;
i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin
- exit 0 ;;
- amd64:CYGWIN*:*:*)
+ exit ;;
+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
echo x86_64-unknown-cygwin
- exit 0 ;;
+ exit ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin
- exit 0 ;;
+ exit ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ exit ;;
*:GNU:*:*)
# the GNU system
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit 0 ;;
+ exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit 0 ;;
+ exit ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
- exit 0 ;;
+ exit ;;
arm*:Linux:*:*)
+ eval $set_cc_for_build
+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_EABI__
+ then
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ else
+ echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ fi
+ exit ;;
+ avr32*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
cris:Linux:*:*)
echo cris-axis-linux-gnu
- exit 0 ;;
+ exit ;;
crisv32:Linux:*:*)
echo crisv32-axis-linux-gnu
- exit 0 ;;
+ exit ;;
frv:Linux:*:*)
echo frv-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
m32r*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
mips:Linux:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
@@ -861,8 +879,12 @@ EOF
#endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^CPU/{
+ s: ::g
+ p
+ }'`"
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
;;
mips64:Linux:*:*)
eval $set_cc_for_build
@@ -880,15 +902,22 @@ EOF
#endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^CPU/{
+ s: ::g
+ p
+ }'`"
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
;;
+ or32:Linux:*:*)
+ echo or32-unknown-linux-gnu
+ exit ;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
ppc64:Linux:*:*)
echo powerpc64-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV5) UNAME_MACHINE=alphaev5 ;;
@@ -902,7 +931,7 @@ EOF
objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit 0 ;;
+ exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
@@ -910,25 +939,31 @@ EOF
PA8*) echo hppa2.0-unknown-linux-gnu ;;
*) echo hppa-unknown-linux-gnu ;;
esac
- exit 0 ;;
+ exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
echo hppa64-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux
- exit 0 ;;
+ exit ;;
sh64*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
sh*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
+ vax:Linux:*:*)
+ echo ${UNAME_MACHINE}-dec-linux-gnu
+ exit ;;
x86_64:Linux:*:*)
echo x86_64-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
+ xtensa*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
i*86:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
@@ -946,15 +981,15 @@ EOF
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit 0 ;;
+ exit ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit 0 ;;
+ exit ;;
"")
# Either a pre-BFD a.out linker (linux-gnuoldld) or
# one that does not give us useful --help.
echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
- exit 0 ;;
+ exit ;;
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
@@ -971,7 +1006,7 @@ EOF
LIBC=gnulibc1
# endif
#else
- #ifdef __INTEL_COMPILER
+ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
LIBC=gnu
#else
LIBC=gnuaout
@@ -981,16 +1016,23 @@ EOF
LIBC=dietlibc
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^LIBC/{
+ s: ::g
+ p
+ }'`"
+ test x"${LIBC}" != x && {
+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+ exit
+ }
+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
# sysname and nodename.
echo i386-sequent-sysv4
- exit 0 ;;
+ exit ;;
i*86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
@@ -998,27 +1040,27 @@ EOF
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit 0 ;;
+ exit ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
echo ${UNAME_MACHINE}-pc-os2-emx
- exit 0 ;;
+ exit ;;
i*86:XTS-300:*:STOP)
echo ${UNAME_MACHINE}-unknown-stop
- exit 0 ;;
+ exit ;;
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
- exit 0 ;;
- i*86:syllable:*:*)
+ exit ;;
+ i*86:syllable:*:*)
echo ${UNAME_MACHINE}-pc-syllable
- exit 0 ;;
+ exit ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
i*86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit 0 ;;
+ exit ;;
i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
@@ -1026,15 +1068,16 @@ EOF
else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi
- exit 0 ;;
- i*86:*:5:[78]*)
+ exit ;;
+ i*86:*:5:[678]*)
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit 0 ;;
+ exit ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
@@ -1052,73 +1095,73 @@ EOF
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
- exit 0 ;;
+ exit ;;
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
- exit 0 ;;
+ exit ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
- exit 0 ;;
+ exit ;;
paragon:*:*:*)
echo i860-intel-osf1
- exit 0 ;;
+ exit ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
fi
- exit 0 ;;
+ exit ;;
mini*:CTIX:SYS*5:*)
# "miniframe"
echo m68010-convergent-sysv
- exit 0 ;;
+ exit ;;
mc68k:UNIX:SYSTEM5:3.51m)
echo m68k-convergent-sysv
- exit 0 ;;
+ exit ;;
M680?0:D-NIX:5.3:*)
echo m68k-diab-dnix
- exit 0 ;;
+ exit ;;
M68*:*:R3V[5678]*:*)
- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4 && exit 0 ;;
+ && { echo i486-ncr-sysv4; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
- exit 0 ;;
+ exit ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
- exit 0 ;;
+ exit ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
- exit 0 ;;
+ exit ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1126,69 +1169,81 @@ EOF
else
echo ns32k-sni-sysv
fi
- exit 0 ;;
+ exit ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel at ccMail.Census.GOV>
echo i586-unisys-sysv4
- exit 0 ;;
+ exit ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes at openmarket.com>.
# How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4
- exit 0 ;;
+ exit ;;
*:*:*:FTX*)
# From seanf at swdc.stratus.com.
echo i860-stratus-sysv4
- exit 0 ;;
+ exit ;;
+ i*86:VOS:*:*)
+ # From Paul.Green at stratus.com.
+ echo ${UNAME_MACHINE}-stratus-vos
+ exit ;;
*:VOS:*:*)
# From Paul.Green at stratus.com.
echo hppa1.1-stratus-vos
- exit 0 ;;
+ exit ;;
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
- exit 0 ;;
+ exit ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
fi
- exit 0 ;;
+ exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
- exit 0 ;;
+ exit ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos
- exit 0 ;;
+ exit ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
- exit 0 ;;
+ exit ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
SX-6:SUPER-UX:*:*)
echo sx6-nec-superux${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
+ SX-7:SUPER-UX:*:*)
+ echo sx7-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-8:SUPER-UX:*:*)
+ echo sx8-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-8R:SUPER-UX:*:*)
+ echo sx8r-nec-superux${UNAME_RELEASE}
+ exit ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:Rhapsody:*:*)
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
case $UNAME_PROCESSOR in
- *86) UNAME_PROCESSOR=i686 ;;
unknown) UNAME_PROCESSOR=powerpc ;;
esac
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
if test "$UNAME_PROCESSOR" = "x86"; then
@@ -1196,25 +1251,25 @@ EOF
UNAME_MACHINE=pc
fi
echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:QNX:*:4*)
echo i386-pc-qnx
- exit 0 ;;
+ exit ;;
NSE-?:NONSTOP_KERNEL:*:*)
echo nse-tandem-nsk${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
- exit 0 ;;
+ exit ;;
BS2000:POSIX*:*:*)
echo bs2000-siemens-sysv
- exit 0 ;;
+ exit ;;
DS/*:UNIX_System_V:*:*)
echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
@@ -1225,41 +1280,47 @@ EOF
UNAME_MACHINE="$cputype"
fi
echo ${UNAME_MACHINE}-unknown-plan9
- exit 0 ;;
+ exit ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
- exit 0 ;;
+ exit ;;
*:TENEX:*:*)
echo pdp10-unknown-tenex
- exit 0 ;;
+ exit ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
echo pdp10-dec-tops20
- exit 0 ;;
+ exit ;;
XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
echo pdp10-xkl-tops20
- exit 0 ;;
+ exit ;;
*:TOPS-20:*:*)
echo pdp10-unknown-tops20
- exit 0 ;;
+ exit ;;
*:ITS:*:*)
echo pdp10-unknown-its
- exit 0 ;;
+ exit ;;
SEI:*:*:SEIUX)
echo mips-sei-seiux${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
*:DragonFly:*:*)
echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit 0 ;;
+ exit ;;
*:*VMS:*:*)
UNAME_MACHINE=`(uname -p) 2>/dev/null`
case "${UNAME_MACHINE}" in
- A*) echo alpha-dec-vms && exit 0 ;;
- I*) echo ia64-dec-vms && exit 0 ;;
- V*) echo vax-dec-vms && exit 0 ;;
+ A*) echo alpha-dec-vms ; exit ;;
+ I*) echo ia64-dec-vms ; exit ;;
+ V*) echo vax-dec-vms ; exit ;;
esac ;;
*:XENIX:*:SysV)
echo i386-pc-xenix
- exit 0 ;;
+ exit ;;
+ i*86:skyos:*:*)
+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+ exit ;;
+ i*86:rdos:*:*)
+ echo ${UNAME_MACHINE}-pc-rdos
+ exit ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1291,7 +1352,7 @@ main ()
#endif
#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix"); exit (0);
+ printf ("arm-acorn-riscix\n"); exit (0);
#endif
#if defined (hp300) && !defined (hpux)
@@ -1380,11 +1441,12 @@ main ()
}
EOF
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
# Apollos put the system type in the environment.
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
# Convex versions that predate uname can use getsysinfo(1)
@@ -1393,22 +1455,22 @@ then
case `getsysinfo -f cpu_type` in
c1*)
echo c1-convex-bsd
- exit 0 ;;
+ exit ;;
c2*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
- exit 0 ;;
+ exit ;;
c34*)
echo c34-convex-bsd
- exit 0 ;;
+ exit ;;
c38*)
echo c38-convex-bsd
- exit 0 ;;
+ exit ;;
c4*)
echo c4-convex-bsd
- exit 0 ;;
+ exit ;;
esac
fi
@@ -1419,7 +1481,9 @@ the operating system you are using. It i
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
- ftp://ftp.gnu.org/pub/gnu/config/
+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+and
+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
If the version you run ($0) is already up to date, please
send the following data and any information you think might be
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 config.sub
--- a/config.sub Mon Dec 24 15:02:36 2007 +0100
+++ b/config.sub Mon Dec 24 15:04:01 2007 +0100
@@ -1,9 +1,10 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
-
-timestamp='2005-02-10'
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+# Inc.
+
+timestamp='2007-12-05'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -21,13 +22,14 @@ timestamp='2005-02-10'
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
+#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+
# Please send patches to <config-patches at gnu.org>. Submit a context
# diff and a properly formatted ChangeLog entry.
@@ -83,11 +85,11 @@ while test $# -gt 0 ; do
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
- echo "$timestamp" ; exit 0 ;;
+ echo "$timestamp" ; exit ;;
--version | -v )
- echo "$version" ; exit 0 ;;
+ echo "$version" ; exit ;;
--help | --h* | -h )
- echo "$usage"; exit 0 ;;
+ echo "$usage"; exit ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@@ -99,7 +101,7 @@ while test $# -gt 0 ; do
*local*)
# First pass through any local machine types.
echo $1
- exit 0;;
+ exit ;;
* )
break ;;
@@ -118,8 +120,9 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
- kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+ storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -170,6 +173,10 @@ case $os in
-hiux*)
os=-hiuxwe2
;;
+ -sco6)
+ os=-sco5v6
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
-sco5)
os=-sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -183,6 +190,10 @@ case $os in
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2v[4-9]*)
+ # Don't forget version if it is 3.2v4 or newer.
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco5v6*)
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
@@ -230,14 +241,16 @@ case $basic_machine in
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+ | bfin \
| c4x | clipper \
| d10v | d30v | dlx | dsp16xx \
- | fr30 | frv \
+ | fido | fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
- | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
+ | m32c | m32r | m32rle | m68000 | m68k | m88k \
+ | maxq | mb | microblaze | mcore | mep \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
@@ -246,6 +259,7 @@ case $basic_machine in
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
+ | mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
| mipsisa64 | mipsisa64el \
@@ -254,20 +268,24 @@ case $basic_machine in
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
+ | mt \
| msp430 \
+ | nios | nios2 \
| ns16k | ns32k \
- | openrisc | or32 \
+ | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | score \
+ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
- | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
- | strongarm \
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+ | spu | strongarm \
| tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
| we32k \
- | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
+ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
@@ -277,6 +295,9 @@ case $basic_machine in
os=-none
;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+ ;;
+ ms1)
+ basic_machine=mt-unknown
;;
# We use `pc' rather than `unknown'
@@ -297,18 +318,18 @@ case $basic_machine in
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* \
- | bs2000-* \
+ | avr-* | avr32-* \
+ | bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
- | m32r-* | m32rle-* \
+ | m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | maxq-* | mcore-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
@@ -319,6 +340,7 @@ case $basic_machine in
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
+ | mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
| mipsisa64-* | mipsisa64el-* \
@@ -327,26 +349,33 @@ case $basic_machine in
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipstx39-* | mipstx39el-* \
| mmix-* \
+ | mt-* \
| msp430-* \
+ | nios-* | nios2-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
+ | sparclite-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
- | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa-* \
+ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+ | xstormy16-* | xtensa*-* \
| ymp-* \
| z8k-*)
+ ;;
+ # Recognize the basic CPU types without company name, with glob match.
+ xtensa*)
+ basic_machine=$basic_machine-unknown
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
@@ -418,6 +447,14 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
+ blackfin)
+ basic_machine=bfin-unknown
+ os=-linux
+ ;;
+ blackfin-*)
+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
c90)
basic_machine=c90-cray
os=-unicos
@@ -450,8 +487,8 @@ case $basic_machine in
basic_machine=craynv-cray
os=-unicosmp
;;
- cr16c)
- basic_machine=cr16c-unknown
+ cr16)
+ basic_machine=cr16-unknown
os=-elf
;;
crds | unos)
@@ -643,6 +680,14 @@ case $basic_machine in
basic_machine=m68k-isi
os=-sysv
;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ os=-linux
+ ;;
+ m68knommu-*)
+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
m88k-omron*)
basic_machine=m88k-omron
;;
@@ -658,6 +703,10 @@ case $basic_machine in
basic_machine=i386-pc
os=-mingw32
;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ os=-mingw32ce
+ ;;
miniframe)
basic_machine=m68000-convergent
;;
@@ -682,6 +731,9 @@ case $basic_machine in
msdos)
basic_machine=i386-pc
os=-msdos
+ ;;
+ ms1-*)
+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;;
mvs)
basic_machine=i370-ibm
@@ -758,9 +810,8 @@ case $basic_machine in
basic_machine=hppa1.1-oki
os=-proelf
;;
- or32 | or32-*)
+ openrisc | openrisc-*)
basic_machine=or32-unknown
- os=-coff
;;
os400)
basic_machine=powerpc-ibm
@@ -782,6 +833,14 @@ case $basic_machine in
basic_machine=i860-intel
os=-osf
;;
+ parisc)
+ basic_machine=hppa-unknown
+ os=-linux
+ ;;
+ parisc-*)
+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
pbd)
basic_machine=sparc-tti
;;
@@ -790,6 +849,12 @@ case $basic_machine in
;;
pc532 | pc532-*)
basic_machine=ns32k-pc532
+ ;;
+ pc98)
+ basic_machine=i386-pc
+ ;;
+ pc98-*)
+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
@@ -847,6 +912,10 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
+ rdos)
+ basic_machine=i386-pc
+ os=-rdos
+ ;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
@@ -873,6 +942,10 @@ case $basic_machine in
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
+ sde)
+ basic_machine=mipsisa32-sde
+ os=-elf
+ ;;
sei)
basic_machine=mips-sei
os=-seiux
@@ -883,6 +956,9 @@ case $basic_machine in
sh)
basic_machine=sh-hitachi
os=-hms
+ ;;
+ sh5el)
+ basic_machine=sh5le-unknown
;;
sh64)
basic_machine=sh64-unknown
@@ -1086,13 +1162,10 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
+ sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b)
+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
basic_machine=sparc-sun
;;
cydra)
@@ -1165,20 +1238,23 @@ case $os in
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+ | -openbsd* | -solidbsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+ | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1196,7 +1272,7 @@ case $os in
os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;;
-mac*)
@@ -1330,6 +1406,12 @@ else
# system, and we'll never get to this point.
case $basic_machine in
+ score-*)
+ os=-elf
+ ;;
+ spu-*)
+ os=-elf
+ ;;
*-acorn)
os=-riscix1.2
;;
@@ -1339,9 +1421,9 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
# This must come before the *-dec entry.
pdp10-*)
os=-tops20
@@ -1367,6 +1449,9 @@ case $basic_machine in
m68*-cisco)
os=-aout
;;
+ mep-*)
+ os=-elf
+ ;;
mips*-cisco)
os=-elf
;;
@@ -1384,6 +1469,9 @@ case $basic_machine in
;;
*-be)
os=-beos
+ ;;
+ *-haiku)
+ os=-haiku
;;
*-ibm)
os=-aix
@@ -1556,7 +1644,7 @@ esac
esac
echo $basic_machine$os
-exit 0
+exit
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 configure
--- a/configure Mon Dec 24 15:02:36 2007 +0100
+++ b/configure Mon Dec 24 15:04:01 2007 +0100
@@ -1521,7 +1521,7 @@ Run-time path-searching options
Specify location of last/legacy packages (instead of
default location; same as --with-legacy-packages).
--with-legacy-packages=DIR
- Specify location of late/legacy packages (instead of
+ Specify location of last/legacy packages (instead of
default location; same as --with-last-packages).
--with-package-path=PATH
Search path for package directories.
@@ -2842,7 +2842,7 @@ if test "${with_legacy_packages+set}" =
enableval="$with_legacy_packages"
withval="$with_legacy_packages"
cat >>confdefs.h <<\_ACEOF
-#define LATE_PACKAGE_DIRECTORIES_USER_DEFINED 1
+#define LAST_PACKAGE_DIRECTORIES_USER_DEFINED 1
_ACEOF
fi;
@@ -20122,6 +20122,195 @@ else
else
{ echo "Error:" "Unable to find libXft for --with-xft" >&2; exit 1; }
fi
+
+
+
+for ac_func in FcConfigGetRescanInterval
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* 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
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+for ac_func in FcConfigSetRescanInterval
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* 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
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
with_fontconfig=yes
cat >>confdefs.h <<\_ACEOF
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 configure.ac
--- a/configure.ac Mon Dec 24 15:02:36 2007 +0100
+++ b/configure.ac Mon Dec 24 15:04:01 2007 +0100
@@ -666,8 +666,8 @@ XE_MERGED_ARG([last-packages],
AS_HELP_STRING([--with-last-packages=DIR],[Specify location of last/legacy packages (instead of default location; same as --with-legacy-packages).]),
[AC_DEFINE(LAST_PACKAGE_DIRECTORIES_USER_DEFINED)], [])
XE_MERGED_ARG([legacy-packages],
- AS_HELP_STRING([--with-legacy-packages=DIR],[Specify location of late/legacy packages (instead of default location; same as --with-last-packages).]),
- [AC_DEFINE(LATE_PACKAGE_DIRECTORIES_USER_DEFINED)], [])
+ AS_HELP_STRING([--with-legacy-packages=DIR],[Specify location of last/legacy packages (instead of default location; same as --with-last-packages).]),
+ [AC_DEFINE(LAST_PACKAGE_DIRECTORIES_USER_DEFINED)], [])
XE_MERGED_ARG([package-path],
AS_HELP_STRING([--with-package-path=PATH],[Search path for package directories.]),
[AC_DEFINE(PACKAGE_PATH_USER_DEFINED)], [])
@@ -3532,6 +3532,9 @@ extern Bool XRegisterIMInstantiateCallba
[XE_DIE(["Unable to find libfontconfig for --with-xft"])])
AC_CHECK_LIB(Xft, XftFontOpen, XE_PREPEND(-lXft, libs_x),
[XE_DIE(["Unable to find libXft for --with-xft"])])
+
+ AC_CHECK_FUNCS(FcConfigGetRescanInterval)
+ AC_CHECK_FUNCS(FcConfigSetRescanInterval)
dnl #### detect fontconfig properly!!!!
with_fontconfig=yes
AC_DEFINE(HAVE_FONTCONFIG)
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 etc/ChangeLog
--- a/etc/ChangeLog Mon Dec 24 15:02:36 2007 +0100
+++ b/etc/ChangeLog Mon Dec 24 15:04:01 2007 +0100
@@ -1,3 +1,8 @@ 2007-11-22 Vin Shelton <acs at xemacs.org
+2007-12-23 Stephen J. Turnbull <stephen at xemacs.org>
+
+ * bundled-packages/README: Documentation for bundled packages.
+ * bundled-packages/test.sh: Test suite for bundled packages.
+
2007-11-22 Vin Shelton <acs at xemacs.org>
* photos/vin.png:
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/ChangeLog
--- a/lisp/ChangeLog Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/ChangeLog Mon Dec 24 15:04:01 2007 +0100
@@ -1,3 +1,72 @@ 2007-12-09 Aidan Kehoe <kehoea at parhasa
+2007-12-22 Stephen J. Turnbull <stephen at xemacs.org>
+
+ Factor out lists of operators specially treated by `make-autoload'.
+
+ * autoload.el (autoload-make-autoload-operators): New.
+ (autoload-make-autoload-complex-operators): New.
+ (make-autoload): Use them.
+
+2007-12-18 Mike Sperber <mike at xemacs.org>
+
+ * autoload.el (process-one-lisp-autoload): Insert <immediate> into
+ the section header for immediate autoloads, to make sure the
+ upstream doesn't think there aren't any autoloads at all.
+
+2007-12-19 Mike Sperber <mike at xemacs.org>
+
+ * startup.el (ask-about-user-init-file-migration-p): Factored out
+ check.
+ (maybe-migrate-user-init-file):
+ (migrate-user-init-file): Don't do a backup of ~/.emacs anymore.
+ Instead, make only a manual adjustment of the file, if at all,
+ i.e. don't go through customize magic anymore.
+ (unmigrate-user-init-file): Don't use customize to set
+ `load-home-init-file' anymore.
+ (set-load-home-init-file): Add; performs the modification
+ previously done through customize.
+ (unmigrate-user-init-file): Use `set-load-home-init-file' instead
+ of customize.
+ (command-line-1): Only wait for the first event if we're not going
+ to ask about migration.
+
+2007-12-18 Aidan Kehoe <kehoea at parhasard.net>
+
+ * help.el (describe-function-1):
+ Give details of bindings for commands, taking into account
+ global-window-system-map and global-tty-map when bindings differ
+ compared to the global map.
+
+2007-12-17 Aidan Kehoe <kehoea at parhasard.net>
+
+ * subr.el (integer-to-bit-vector): New.
+ * subr.el (bit-vector-to-integer): New.
+ Provide naive implementations using the Lisp reader for these.
+
+2007-12-14 Aidan Kehoe <kehoea at parhasard.net>
+
+ * process.el (substitute-env-vars):
+ Merge an example from GNU's docstring.
+ * process.el (setenv):
+ Pass nil as the default abbrev table to the #'read-from-minibuffer
+ call, instead of passing the current value of the variable. Bug
+ introduced by an incorrect sync from GNU by Ben; reported by
+ Thomas Mittelstaedt in 47626712.40609 at cadenas.de.
+
+ Document the #'set-time-zone-rule call when TZ is set. Push the
+ old value on to the beginning of setenv-history. (Both merged from
+ GNU.) Document that we don't do the coding-system frobbing at this
+ level that GNU does.
+
+ Provide a commented-out, sample implementation of GNU's
+ #'environment; document why I think we shouldn't include it.
+
+2007-12-11 Aidan Kehoe <kehoea at parhasard.net>
+
+ * mule/latin.el :
+ Specify tutorial-coding-system using dotted cons notation, since
+ it's not a list. Prevents an error in help-with-tutorial for these
+ languages.
+
2007-12-09 Aidan Kehoe <kehoea at parhasard.net>
* abbrev.el (write-abbrev-file):
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/autoload.el
--- a/lisp/autoload.el Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/autoload.el Mon Dec 24 15:04:01 2007 +0100
@@ -226,6 +226,20 @@ the section of autoloads for a file.")
;; Parsing the source file text.
;; Autoloads in C source differ from those in Lisp source.
+;; #### Eventually operators like defclass and defmethod (defined in an
+;; external package, EIEIO) may be factored out. Don't add operators here
+;; without discussing whether and how to do that on the developers' channel.
+(defvar autoload-make-autoload-operators
+ '(defun define-skeleton defmacro define-derived-mode define-generic-mode
+ easy-mmode-define-minor-mode easy-mmode-define-global-mode
+ define-minor-mode defun* defmacro* defclass defmethod)
+ "`defun'-like operators that use `autoload' to load the library.")
+
+(defvar autoload-make-autoload-complex-operators
+ '(easy-mmode-define-minor-mode easy-mmode-define-global-mode
+ define-minor-mode)
+ "`defun'-like operators to macroexpand before using `autoload'.")
+
(defun make-autoload (form file)
"Turn FORM into an autoload or defvar for source file FILE.
Returns nil if FORM is not a special autoload form (i.e. a function definition
@@ -233,8 +247,7 @@ or macro definition or a defcustom)."
(let ((car (car-safe form)) expand)
(cond
;; For complex cases, try again on the macro-expansion.
- ((and (memq car '(easy-mmode-define-global-mode
- easy-mmode-define-minor-mode define-minor-mode))
+ ((and (memq car autoload-make-autoload-complex-operators)
(setq expand (let ((load-file-name file)) (macroexpand form)))
(eq (car expand) 'progn)
(memq :autoload-end expand))
@@ -246,11 +259,7 @@ or macro definition or a defcustom)."
(cdr expand)))))
;; For special function-like operators, use the `autoload' function.
- ((memq car '(defun define-skeleton defmacro define-derived-mode
- define-generic-mode easy-mmode-define-minor-mode
- easy-mmode-define-global-mode
- define-minor-mode defun* defmacro*
- defclass defmethod)) ; from the EIEIO package
+ ((memq car autoload-make-autoload-operators)
(let* ((macrop (memq car '(defmacro defmacro*)))
(name (nth 1 form))
(body (nthcdr (get car 'doc-string-elt) form))
@@ -516,7 +525,8 @@ Updates AUTOLOADS-DONE and returns the n
(let ((begin (point)))
(forward-sexp)
(forward-line 1)
- (princ (buffer-substring begin (point)) outbuf)))
+ (princ (buffer-substring begin (point)) outbuf))
+ (setq autoloads-done (cons '<immediate> autoloads-done)))
(t
(princ (buffer-substring
(progn
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/help.el
--- a/lisp/help.el Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/help.el Mon Dec 24 15:04:01 2007 +0100
@@ -1484,7 +1484,53 @@ part of the documentation of internal su
(goto-char newp standard-output))
(unless (or (equal doc "")
(eq ?\n (aref doc (1- (length doc)))))
- (terpri)))))))))
+ (terpri)))
+ (when (commandp function)
+ (princ "\nInvoked with:\n")
+ (let ((global-binding
+ (where-is-internal function global-map))
+ (global-tty-binding
+ (where-is-internal function global-tty-map))
+ (global-window-system-binding
+ (where-is-internal function global-window-system-map)))
+ (if (or global-binding global-tty-binding
+ global-window-system-binding)
+ (if (and (equal global-binding
+ global-tty-binding)
+ (equal global-binding
+ global-window-system-binding))
+ (princ
+ (substitute-command-keys
+ (format "\n\\[%s]" function)))
+ (when (and global-window-system-binding
+ (not (equal global-window-system-binding
+ global-binding)))
+ (princ
+ (format
+ "\n%s\n -- under window systems\n"
+ (mapconcat #'key-description
+ global-window-system-binding
+ ", "))))
+ (when (and global-tty-binding
+ (not (equal global-tty-binding
+ global-binding)))
+ (princ
+ (format
+ "\n%s\n -- under TTYs\n"
+ (mapconcat #'key-description
+ global-tty-binding
+ ", "))))
+ (when global-binding
+ (princ
+ (format
+ "\n%s\n -- generally (that is, unless\
+ overridden by TTY- or
+ window-system-specific mappings)\n"
+ (mapconcat #'key-description
+ global-binding
+ ", ")))))
+ (princ (substitute-command-keys
+ (format "\n\\[%s]" function))))))))))))
;;; [Obnoxious, whining people who complain very LOUDLY on Usenet
;;; are binding this to keys.]
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/mule/latin.el
--- a/lisp/mule/latin.el Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/mule/latin.el Mon Dec 24 15:04:01 2007 +0100
@@ -907,7 +907,7 @@ Generic language environment for %s (%s)
(native-coding-system ,codesys)
,@(if locale `((locale . ,locale)))
,@(if tutorial `((tutorial . ,tutorial)
- (tutorial-coding-system ,codesys)))
+ (tutorial-coding-system . ,codesys)))
,@(if sample-text `((sample-text . ,sample-text)))
(input-method . ,(or input-method default-input))
(documentation . ,(format "\
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/process.el
--- a/lisp/process.el Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/process.el Mon Dec 24 15:04:01 2007 +0100
@@ -25,7 +25,7 @@
;; Boston, MA 02111-1307, USA.
;;; Synched up with: FSF 19.30, except for setenv/getenv (synched with FSF
-;;; 21.0.105).
+;;; 21.2.1).
;;; Authorship:
@@ -542,8 +542,10 @@ If it is also not t, RET does not exit i
`$FOO' where FOO is an environment variable name means to substitute
the value of that variable. The variable name should be terminated
with a character not a letter, digit or underscore; otherwise, enclose
-the entire variable name in braces. Use `$$' to insert a single
-dollar sign."
+the entire variable name in braces. For instance, in `ab$cd-x',
+`$cd' is treated as an environment variable.
+
+Use `$$' to insert a single dollar sign."
(let ((start 0))
(while (string-match
;; XEmacs change - FSF use their rx macro to generate this regexp
@@ -575,19 +577,40 @@ Interactively, the current value (if any
Interactively, the current value (if any) of the variable
appears at the front of the history list when you type in the new value.
-This function works by modifying `process-environment'."
+This function works by modifying `process-environment'.
+
+As a special case, setting variable `TZ' calls `set-time-zone-rule' as
+a side-effect."
(interactive
(if current-prefix-arg
(list (read-envvar-name "Clear environment variable: " 'exact) nil t)
- (let ((var (read-envvar-name "Set environment variable: " nil)))
+ (let* ((var (read-envvar-name "Set environment variable: " nil))
+ (value (getenv var)))
+ (when value
+ (push value setenv-history))
;; Here finally we specify the args to call setenv with.
(list var (read-from-minibuffer (format "Set %s to value: " var)
nil nil nil 'setenv-history
- (getenv var))))))
+ ;; XEmacs change; don't specify a
+ ;; default. (Nor an abbrev table.)
+ )))))
(if unset
(setq value nil)
(if substitute-env-vars
(setq value (substitute-env-vars value))))
+
+ ;; GNU fuck around with coding systems here. We do it at a much lower
+ ;; level; an equivalent of the following code of Handa's would be
+ ;; worthwhile here, though:
+
+; (let ((codings (find-coding-systems-string (concat variable value))))
+; (unless (or (eq 'undecided (car codings))
+; (memq (coding-system-base locale-coding-system) codings))
+; (error "Can't encode `%s=%s' with `locale-coding-system'"
+; variable (or value "")))))
+
+ ;; But then right now our find-coding-systems analogue is in packages.
+
(if (string-match "=" variable)
(error "Environment variable name `%s' contains `='" variable)
(let ((pattern (concat "\\`" (regexp-quote (concat variable "="))))
@@ -626,6 +649,25 @@ This function works by modifying `proces
; (message "%s" (if value value "Not set")))
; value))
+
+;; GNU have an #'environment function here, as of 2007-12-14. If someone
+;; actually uses it in the wild, this would suffice as an implementation:
+
+; (defun environment (&optional frame)
+; "Return a list of environment variables with their values.
+; Each entry in the list is a string of the form NAME=VALUE.
+;
+; Optional argument FRAME is ignored, for GNU compatibility.
+;
+; Non-ASCII characters look like Mojibake (that is, they are unreadable.)"
+; (loop
+; for entry in process-environment
+; collect (encode-coding-string entry 'native)))
+;
+
+;; but we shouldn't encourage that sort of ugliness and needless backwards
+;; incompatibility.
+
(provide 'env) ;; Yuck. Formerly the above were in env.el, which did this
;; provide.
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/startup.el
--- a/lisp/startup.el Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/startup.el Mon Dec 24 15:04:01 2007 +0100
@@ -849,12 +849,16 @@ the menubar)."
(or (find-user-init-directory-init-file init-directory)
(find-user-home-directory-init-file home-directory))))
+(defun ask-about-user-init-file-migration-p ()
+ "Check whether we want to ask the user if she wants to migrate the init file."
+ (and (not load-home-init-file)
+ (not (find-user-init-directory-init-file user-init-directory))
+ (stringp user-init-file)
+ (file-readable-p user-init-file)))
+
(defun maybe-migrate-user-init-file ()
"Ask user if she wants to migrate the init file(s) to new location."
- (if (and (not load-home-init-file)
- (not (find-user-init-directory-init-file user-init-directory))
- (stringp user-init-file)
- (file-readable-p user-init-file))
+ (if (ask-about-user-init-file-migration-p)
(if (with-output-to-temp-buffer (help-buffer-name nil)
(progn
(princ "XEmacs recommends that the initialization code in
@@ -881,7 +885,8 @@ perform the migration at any time with M
user-init-directory
"? "))))
- (let ((backup (migrate-user-init-file)))
+ (progn
+ (migrate-user-init-file)
(with-output-to-temp-buffer (help-buffer-name nil)
(progn
(princ "The initialization code has now been migrated to the ")
@@ -890,46 +895,63 @@ perform the migration at any time with M
For backwards compatibility with, for example, older versions of XEmacs,
XEmacs can create a special old-style .emacs file in your home
-directory which will load the relocated initialization code.")
- (if backup
- (progn
- (princ "\nMoreover, a backup of your old .emacs file was created as\n")
- (princ backup)
- (princ ".\n")))
+directory which will load the relocated initialization code.
+
+NOTE THAT THIS WILL OVERWRITE YOUR EXISTING .emacs FILE!")
(show-temp-buffer-in-current-frame standard-output)
(maybe-create-compatibility-dot-emacs))))
- (customize-save-variable 'load-home-init-file t))))
+ (set-load-home-init-file user-init-file t))))
(defun maybe-create-compatibility-dot-emacs ()
"Ask user if she wants to create a .emacs compatibility file."
- (if (yes-or-no-p-minibuf "Create compatibility .emacs? ")
+ (if (yes-or-no-p-minibuf "Create compatibility .emacs?")
(create-compatibility-dot-emacs)))
(defun migrate-user-init-file ()
- "Migrate the init file from the home directory.
-Return the name of backup file, if one was created."
+ "Migrate the init file from the home directory."
(interactive)
(if (not (file-exists-p user-init-directory))
(progn
(message "Creating %s directory..." user-init-directory)
(make-directory user-init-directory)))
(message "Migrating custom file...")
- (let* ((backup (concat user-init-file ".backup"))
- (backup-p
- (and (not (file-exists-p backup))
- (progn
- (copy-file user-init-file backup)
- t))))
- (customize-set-value 'load-home-init-file nil)
- (custom-migrate-custom-file (make-custom-file-name user-init-file
- 'force-new))
- (message "Moving init file...")
- (let ((new-user-init-file (expand-file-name user-init-file-base
- user-init-directory)))
- (rename-file user-init-file new-user-init-file)
- (setq user-init-file new-user-init-file))
- (message "Migration done.")
- (and backup-p backup)))
+ (set-load-home-init-file user-init-file nil)
+ (setq custom-file (make-custom-file-name user-init-file 'force-new))
+ (custom-save-all)
+ (message "Copying init file...")
+ (let ((new-user-init-file (expand-file-name user-init-file-base
+ user-init-directory)))
+ (copy-file user-init-file new-user-init-file)
+ (setq user-init-file new-user-init-file))
+ (message "Migration done."))
+
+(defun set-load-home-init-file (filename val)
+ "Put code in `filename' to set `load-home-init-file' to `val'.
+More precisely, remove the first `setq' form for `load-home-init-file',
+and replace it by (setq load-home-init-file t) if `val' is non-nil."
+ (save-excursion
+ (set-buffer (find-file-noselect filename))
+ (goto-char (point-min))
+ (condition-case nil
+ (block find-existing
+ (while (not (eobp))
+ (forward-sexp 1)
+ (backward-sexp 1)
+ (let* ((beginning (point))
+ (sexp (read (current-buffer))))
+ (if (and (consp sexp)
+ (consp (cdr sexp))
+ (eq 'setq (car sexp))
+ (eq 'load-home-init-file (cadr sexp)))
+ (progn
+ (forward-line 1)
+ (delete-region beginning (point))
+ (return-from find-existing nil))
+ (forward-sexp 1)))))
+ (error nil)) ; ignore if there are no sexprs in the file
+ (if val
+ (insert "(setq load-home-init-file t) ; don't load init file from ~/.xemacs/init.el\n"))
+ (save-buffer)))
(defun create-compatibility-dot-emacs ()
"Create .emacs compatibility file for migrated setup."
@@ -965,8 +987,9 @@ Return the name of backup file, if one w
(rename-file user-init-file target-file-name 'ok-if-already-exists)
(setq user-init-file target-file-name)
(let ((old-custom-file custom-file))
- (custom-migrate-custom-file target-file-name)
- (customize-save-variable 'load-home-init-file t)
+ (setq custom-file target-file-name)
+ (custom-save-all)
+ (set-load-home-init-file user-init-file t)
(delete-file old-custom-file))))
(defun load-user-init-file ()
@@ -1089,7 +1112,8 @@ a new format, when variables have change
;; Don't clobber a non-scratch buffer if init file
;; has selected it.
- (when (string= (buffer-name) "*scratch*")
+ (when (and (string= (buffer-name) "*scratch*")
+ (not (ask-about-user-init-file-migration-p)))
(unless (or inhibit-startup-message
(input-pending-p))
(let (tmout)
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 lisp/subr.el
--- a/lisp/subr.el Mon Dec 24 15:02:36 2007 +0100
+++ b/lisp/subr.el Mon Dec 24 15:04:01 2007 +0100
@@ -912,6 +912,26 @@ See also `equalp'."
;; foo-to-bar naming scheme, but CLtL2 has them, so they stay.
(define-function 'char-int 'char-to-int)
(define-function 'int-char 'int-to-char)
+
+;; XEmacs addition.
+(defun integer-to-bit-vector (integer &optional minlength)
+ "Return INTEGER converted to a bit vector.
+Optional argument MINLENGTH gives a minimum length for the returned vector.
+If MINLENGTH is not given, zero high-order bits will be ignored."
+ (check-argument-type #'integerp integer)
+ (setq minlength (or minlength 0))
+ (check-nonnegative-number minlength)
+ (read (format (format "#*%%0%db" minlength) integer)))
+
+;; XEmacs addition.
+(defun bit-vector-to-integer (bit-vector)
+ "Return BIT-VECTOR converted to an integer.
+If bignum support is available, BIT-VECTOR's length is unlimited.
+Otherwise the limit is the number of value bits in an Lisp integer. "
+ (check-argument-type #'bit-vector-p bit-vector)
+ (setq bit-vector (prin1-to-string bit-vector))
+ (aset bit-vector 1 ?b)
+ (read bit-vector))
(defun string-width (string)
"Return number of columns STRING occupies when displayed.
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 man/ChangeLog
--- a/man/ChangeLog Mon Dec 24 15:02:36 2007 +0100
+++ b/man/ChangeLog Mon Dec 24 15:04:01 2007 +0100
@@ -1,3 +1,12 @@ 2007-12-07 Ville Skyttä <scop at xemacs.o
+2007-12-17 Aidan Kehoe <kehoea at parhasard.net>
+
+ * lispref/strings.texi (Formatting Strings):
+ Document %b for binary output.
+
+2007-12-10 Ville Skyttä <scop at xemacs.org>
+
+ * internals/internals.texi: Spelling fixes.
+
2007-12-07 Ville Skyttä <scop at xemacs.org>
* beta.texi, emodules.texi, term.texi, termcap.texi, texinfo.texi,
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 man/internals/internals.texi
--- a/man/internals/internals.texi Mon Dec 24 15:02:36 2007 +0100
+++ b/man/internals/internals.texi Mon Dec 24 15:04:01 2007 +0100
@@ -947,21 +947,21 @@ Menus: Jamie Zawinski, someone at Lucid
@item
Scrollbars: Chuck Thompson, ??? (Lucid scrollbar)
@item
-Multi-device/device-independence work (console/device/etc methods): Ben Wing, prototype by chuck thompson
+Multi-device/device-independence work (console/device/etc methods): Ben Wing, prototype by Chuck Thompson
@item
Faces: first implementation, Jamie Zawinski; second, chuck; third, Ben Wing
@item
Fonts/colors: first implementation, Jamie Zawinski; further work, Ben Wing
@item
-Toolbars: implementation, chuck, much interface work, Ben Wing
- at item
-Gutters, tabs: andy piper
+Toolbars: implementation, Chuck, much interface work, Ben Wing
+ at item
+Gutters, tabs: Andy Piper
@end itemize
@item Device subsystems
@itemize @minus
@item
-X Windows: Jamie Zawinksi, Ben Wing, others
+X Windows: Jamie Zawinski, Ben Wing, others
@item
GTK: William Perry, Malcolm Purvis
@item
@@ -975,7 +975,7 @@ Cygwin: Andy Piper
@item Misc
@itemize @minus
@item
-Configure: initial porting from fsf, Chuck Thompson; conversion to autoconf 2, much rewriting, Martin Buchholz
+Configure: initial porting from FSF, Chuck Thompson; conversion to autoconf 2, much rewriting, Martin Buchholz
@item
Most initialization-related code: Ben Wing
@item
@@ -1023,7 +1023,7 @@ and has attempted to be the "face" of XE
and has attempted to be the "face" of XEmacs on the newsgroups and
mailing lists.
@item
-Steve Youngs, Ville Skytta, and now Norbert Koch have taken turns
+Steve Youngs, Ville Skyttä¬ and now Norbert Koch have taken turns
maintaining the packages.
@item
Vin Shelton maintains the stable releases.
@@ -1037,7 +1037,7 @@ Testing - #### Norbert, Adrian, ???
@table @asis
@item Jamie Zawinski, Eric Benson, Matthieu Devin, Harlan Sexton
-These were the early creators of Lucid Emacs, the predecessor of Xemacs.
+These were the early creators of Lucid Emacs, the predecessor of XEmacs.
Jamie Zawinski was the primary maintainer and coder for Lucid Emacs,
active between early 1991 and June 1994. He presided over versions 19.0
through 19.10, and then abruptly left for Netscape. He wrote the
@@ -1054,44 +1054,44 @@ Active 1991 to 1993, author of much of t
Active 1991 to 1993, author of much of the current Lisp object scheme,
including Lrecords and LC records (added this support in 1993 to allow
for 28-bit pointers, which had previously been restricted to 26 bits.)
-Moved the minibuffer and abbreve code into Lisp, worked on the keymap
-code and did the initial synching between Xemacs and the first released
+Moved the minibuffer and abbrev code into Lisp, worked on the keymap
+code and did the initial synching between XEmacs and the first released
version of GNU Emacs version 19 in mid-1993.
@item Martin Buchholz
-Active 1995 to 2001, maintainer of Xemacs late 1999 to ?, author of the
+Active 1995 to 2001, maintainer of XEmacs late 1999 to ?, author of the
current configure support, mini optimizations to the byte interpreter,
many improvements to the case changing code and many bug fixes to the
process and system-specific code, also general spell checking and code
cleanliness guru.
@item Steve Baur
-Maintainer of Xemacs 1996 to 1999, responsible for many improvements to
-the Xemacs development process, for example, creation of the review
-board and arranging for Xemacs to be placed under CVS. Author of the
+Maintainer of XEmacs 1996 to 1999, responsible for many improvements to
+the XEmacs development process, for example, creation of the review
+board and arranging for XEmacs to be placed under CVS. Author of the
package code.
@item Chuck Thompson
Active January 1993 to June 1996, author of the current and previous
-versions of the redisplay code and maintainer of Xemacs from mid-1994
-to mid-1996. Creator of XEMacs.org. Also wrote the scrollbar code, the
+versions of the redisplay code and maintainer of XEmacs from mid-1994
+to mid-1996. Creator of xemacs.org. Also wrote the scrollbar code, the
original configure support, and prototype versions of the toolbar and
device code.
@item Ben Wing
Active April 1993 to April 1996 and February 2000 to present. Chief
-coder for Xemacs between 1994 and 1996. Ben Wing was never the
-maintainer of Xemacs, and as a result, is the author of more of the
-Xemacs specific code in Xemacs than anyone else. Author of the mule
+coder for XEmacs between 1994 and 1996. Ben Wing was never the
+maintainer of XEmacs, and as a result, is the author of more of the
+XEmacs specific code in XEmacs than anyone else. Author of the mule
support (Extense code), the glis-phonetically spelled-and specifiers
code most of the toolbars, and device distraction code, the error
checking code, the Lstream code, the bit vector, char-table, and
range-table code, much of the current Xt code, much, much of the events
code (including most of the TTY event code), some of the phase code, and
-numerous other aspects of the code. Also author of most of the Xemacs
-documentation including the internals manual and the Xemacs editions to
+numerous other aspects of the code. Also author of most of the XEmacs
+documentation including the internals manual and the XEmacs editions to
the Lisp reference manual, and responsible for much of the synching
-between Xemacs and GNU Emacs.
+between XEmacs and GNU Emacs.
@item Kyle Jones
Author of the minimal tag bits support, which allows for 32-bit
@@ -1160,13 +1160,13 @@ structures.
@item alloca.c
Inherited a long time ago from a prerelease version of GNU Emacs 19,
-kept in sync with more recent versions very few changes from Xemacs.
+kept in sync with more recent versions very few changes from XEmacs.
Most changes consist of converting the code to ANSI C, and fixing up the
-includes at the top of the file to follow Xemacs conventions.
+includes at the top of the file to follow XEmacs conventions.
@item alloca.s
Inherited almost unchanged from FSF kept in sync up through 19.30
-basically no changes for Xemacs.
+basically no changes for XEmacs.
@end table
@end ignore
@@ -1275,13 +1275,13 @@ transmitted/read by emacs (one or the ot
transmitted/read by emacs (one or the other) correctly.
The 4410 terminal description that I'm using defines up=M-[A
(it appears as ^[[A, with the initial ^[ as one character).
-Pressting cntrl-Q up_arrow while in emacs shows me the same thing.
+Pressing Ctrl-Q up_arrow while in emacs shows me the same thing.
On the vt100 the same thing happens but the terminal file says up=M-A
(it appears as ^[A). I've tried every other imaginable up= but get
the same results. I've also been unsuccessful writing a macro that
understands what my keyboard is saying.
-Any ideas on how I can get the arrow keys to do somethingt?
+Any ideas on how I can get the arrow keys to do something?
Anything? Thanks in advance.
--Bruce Burger AT&T-Information Systems Freehold, NJ
@@ -1751,7 +1751,7 @@ these same years. Steve Baur added the
these same years. Steve Baur added the package system in 1997 (?),
and Olivier Galibert also added the portable dumper support around
2000. Martin Buchholz took over from Steve Baur as release manager in
-late 1998 (?), and continued in this position through to eary 2000
+late 1998 (?), and continued in this position through to early 2000
(?), when Stephen Turnbull took it over. XEmacs has also been split
into stable and experimental branches since early 1999, and Vin
Shelton has been the release manager of the stable branches since the
@@ -4630,7 +4630,7 @@ Autoconf 2.59 divides the @file{configur
Autoconf 2.59 divides the @file{configure} options into those that
specify features (@samp{--enable}) and those that specify external
libraries (@samp{--with}). Many XEmacs options to not fall neatly into
-either of these catagories and so as a matter of policy all options can
+either of these categories and so as a matter of policy all options can
be specified by either method.
These merged options are declared with the @code{XE_MERGED_ARG} macro.
@@ -4660,7 +4660,7 @@ pre-defined values (if support for sets
@samp{--with-mail-locking=flock}.
Keyword options are defined with an expanded form of
- at samp{XE_MERGED_ARG} called @samp{XE_KEYWORD_ARG}, which taks 5
+ at samp{XE_MERGED_ARG} called @samp{XE_KEYWORD_ARG}, which takes 5
parameters. The first 4 parameters are the same as original macro with
the exception that all of these four parameters are @strong{required}.
The @var{action-if-true} code is run after the argument list has been
@@ -5954,7 +5954,7 @@ a search-and-replace is done to change t
a search-and-replace is done to change type names and such. Some people
disagree with such changes, and certainly if done without good reason
will just lead to headaches. But it's important to keep the code clean
-and understable, and consistent naming goes a long way towards this.
+and understandable, and consistent naming goes a long way towards this.
An example of the right way to do this was the so-called "great integral
type renaming".
@@ -11328,7 +11328,7 @@ the actual multi-byte encoding.
the actual multi-byte encoding.
@end enumerate
- None of the pre-Unciode standard non-modal encodings meet all of these
+ None of the pre-Unicode standard non-modal encodings meet all of these
conditions. For example, EUC satisfies only (2) and (3), while
Shift-JIS and Big5 (not yet described) satisfy only (2). (All non-modal
encodings must satisfy (2), in order to be unambiguous.) UTF-8,
@@ -11515,7 +11515,7 @@ inside of DNS names.
inside of DNS names.
@end itemize
-Thus, we can imagine three levels in the representation of texual data:
+Thus, we can imagine three levels in the representation of textual data:
@example
series of characters -> series of textual units -> series of bytes
@@ -12095,7 +12095,7 @@ variable section:
variable section:
DECLARE_EISTRING (name);
- Declare a new Eistring and initialize it to the empy string. This
+ Declare a new Eistring and initialize it to the empty string. This
is a standard local variable declaration and can go anywhere in the
variable declaration section. NAME itself is declared as an
Eistring *, and its storage declared on the stack.
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 man/lispref/strings.texi
--- a/man/lispref/strings.texi Mon Dec 24 15:02:36 2007 +0100
+++ b/man/lispref/strings.texi Mon Dec 24 15:04:01 2007 +0100
@@ -714,6 +714,11 @@ integer, using lowercase letters.
@cindex integer to hexadecimal
Replace the specification with the base-sixteen representation of an
integer, using uppercase letters.
+
+ at item %b
+ at cindex integer to binary
+Replace the specification with the base-two representation of an
+integer.
@item %c
Replace the specification with the character which is the value given.
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/ChangeLog
--- a/src/ChangeLog Mon Dec 24 15:02:36 2007 +0100
+++ b/src/ChangeLog Mon Dec 24 15:04:01 2007 +0100
@@ -4,6 +4,117 @@ 2007-12-24 Aidan Kehoe <kehoea at parhasa
* event-xlike-inc.c (gtk_keysym_to_character):
Unify the typed character if possible, following the current value
for the unicode precedence list.
+
+2007-12-24 Aidan Kehoe <kehoea at parhasard.net>
+
+ * symbols.c (Fintern_soft):
+ Provide a new optional third argument, DEFAULT, for those who want
+ to check if "nil" is a symbol or not. (More realistically, general
+ code that may get handed "nil" should probably use this argument.)
+
+2007-12-23 Aidan Kehoe <kehoea at parhasard.net>
+
+ * objects-tty.c (tty_find_charset_font):
+ * objects-msw.c (mswindows_font_spec_matches_charset_stage_2):
+ * objects-msw.c (mswindows_font_spec_matches_charset_stage_1):
+ * objects-xlike-inc.c (x_font_spec_matches_charset):
+ * objects-xlike-inc.c (gtk_font_spec_matches_charset):
+ If the charset is not specified when calling the
+ font_spec_matches_charset device method, its value is Qnil, not
+ Qunbound. See
+ http://mid.gmane.org/E1EfbmW-00029r-5G@iwi191.iwi.uni-sb.de and
+ Ben Wing's patch of
+ http://mid.gmane.org/439FA06B.3090007@xemacs.org.
+
+2007-12-22 Aidan Kehoe <kehoea at parhasard.net>
+
+ * database.c (Fopen_database):
+ Actually respect the CODESYS argument; don't require EOL
+ autodetection from the coding system, because autodetection mostly
+ fails with reads of small amounts of data. It might be possible
+ with an implicit #'map-database on open, though I don't think
+ that's a great idea.
+ * database.c (print_database):
+ Give the coding system used for text conversion when printing a
+ database object.
+
+2007-12-20 Jerry James <james at xemacs.org>
+
+ * sound.c: Fix unused parameter warnings when HAVE_ALSA_SOUND.
+
+2007-12-18 Kenny Chien <Kenny.Chien at morganstanley.com>
+
+ * extw-Xt.c (extw_wait_for_response): Don't use undocumented
+ internal Xt functions, avoiding inconsistent behavior between
+ different Solaris versions.
+
+2007-12-18 Aidan Kehoe <kehoea at parhasard.net>
+
+ * symbols.c (Fspecial_form_p):
+ Following commentary from Jerry James, don't error if not passed a
+ subr.
+
+ Flesh out the docstring; give details of what a subr is, what a
+ special form is, and why one should probably not write special
+ forms oneself.
+
+2007-12-18 Aidan Kehoe <kehoea at parhasard.net>
+
+ * symbols.c (Fspecial_form_p): New.
+ For the use of advice.el, and perhaps other files; is SUBR a
+ special form?
+
+2007-12-17 Aidan Kehoe <kehoea at parhasard.net>
+
+ * doprnt.c (emacs_doprnt_1):
+ Add support for formatted printing of both longs and bignums as
+ base 2.
+ * editfns.c (Fformat):
+ Document the new %b escape for #'format.
+ * lisp.h:
+ Make ulong_to_bit_string available beside long_to_string.
+ * lread.c:
+ Fix a bug where the integer base was being ignored in certain
+ contexts; thank you Sebastian Freundt. This is necessary for
+ correct behaviour of #'integer-to-bit-vector and
+ #'bit-vector-to-integer, just added to subr.el
+ * print.c (ulong_to_bit_string): New.
+ Analagous to long_to_string, but used all the time when %b is
+ encountered, since we can't pass that to sprintf.
+
+2007-12-12 Aidan Kehoe <kehoea at parhasard.net>
+
+ * config.h.in:
+ Make the results of the checks for
+ FcConfigGetRescanInterval, FcConfigSetRescanInterval
+ available.
+ * font-mgr.h:
+ If FcConfigSetRescanInterval and FcConfigGetRescanInterval are not
+ available as functions, #define them to map to their old
+ misspelled names.
+ * font-mgr.c (Ffc_config_get_rescan_interval):
+ * font-mgr.c (Ffc_config_set_rescan_interval):
+ Use the correct spelling in
+ FcConfigGetRescanInterval, FcConfigSetRescanInterval
+
+2007-12-11 Aidan Kehoe <kehoea at parhasard.net>
+
+ * glyphs-eimage.c:
+ Merge Ron Isaacson's patch of
+ 3ggprxj7ifh.wl_Ron.Isaacson at morganstanley.com , originally from
+ Gennady Khokhorin. Prevents library incompatibilities on Win32.
+
+2007-12-11 Aidan Kehoe <kehoea at parhasard.net>
+
+ * fileio.c (Fsubstitute_in_file_name):
+ On encountering non-existent environment variables or incorrect
+ syntax for specifying environment variables (as is routine on
+ Windows) don't error, instead pass the original strings through.
+
+2007-12-05 Stephen J. Turnbull <stephen at xemacs.org>
+
+ * search.c (simple_search): Fix underrun in reverse search.
+ (search_buffer): Clarify decision to use boyer_moore or not.
2007-12-06 Aidan Kehoe <kehoea at parhasard.net>
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/config.h.in
--- a/src/config.h.in Mon Dec 24 15:02:36 2007 +0100
+++ b/src/config.h.in Mon Dec 24 15:04:01 2007 +0100
@@ -208,6 +208,14 @@ things are arranged in config.h.in. In
/* Compile with support for fontconfig? */
#undef HAVE_FONTCONFIG
+
+/* Was the spelling of FcConfigGetRescanInterval corrected in this
+ fontconfig version? */
+#undef HAVE_FCCONFIGGETRESCANINTERVAL
+
+/* Was the spelling of FcConfigSetRescanInterval corrected in this
+ fontconfig version? */
+#undef HAVE_FCCONFIGSETRESCANINTERVAL
/* Compile with support for Xft? */
#undef USE_XFT
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/database.c
--- a/src/database.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/database.c Mon Dec 24 15:04:01 2007 +0100
@@ -31,6 +31,7 @@ Boston, MA 02111-1307, USA. */
#include "sysfile.h"
#include "buffer.h"
+#include "file-coding.h"
#ifndef HAVE_DATABASE
#error HAVE_DATABASE not defined!!
@@ -181,11 +182,16 @@ print_database (Lisp_Object obj, Lisp_Ob
3, db->fname, db->funcs->get_type (db),
db->funcs->get_subtype (db));
- write_fmt_string (printcharfun, "%s) 0x%x>",
+ write_fmt_string (printcharfun, "%s) ",
(!DATABASE_LIVE_P (db) ? "closed" :
(db->access_ & O_WRONLY) ? "writeonly" :
- (db->access_ & O_RDWR) ? "readwrite" : "readonly"),
- db->header.uid);
+ (db->access_ & O_RDWR) ? "readwrite" : "readonly"));
+
+ write_fmt_string_lisp (printcharfun, "coding: %s ", 1,
+ XSYMBOL_NAME (XCODING_SYSTEM_NAME
+ (db->coding_system)));
+
+ write_fmt_string (printcharfun, "0x%x>", db->header.uid);
}
static void
@@ -654,7 +660,7 @@ variable `database-coding-system'.
if (NILP (codesys))
codesys = Vdatabase_coding_system;
- codesys = get_coding_system_for_text_file (Vdatabase_coding_system, 1);
+ codesys = get_coding_system_for_text_file (codesys, 0);
#ifdef HAVE_DBM
if (NILP (type) || EQ (type, Qdbm))
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/doprnt.c
--- a/src/doprnt.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/doprnt.c Mon Dec 24 15:04:01 2007 +0100
@@ -34,7 +34,7 @@ Boston, MA 02111-1307, USA. */
#include "lstream.h"
static const char * const valid_flags = "-+ #0";
-static const char * const valid_converters = "dic" "ouxX" "feEgG" "sS"
+static const char * const valid_converters = "dic" "ouxX" "feEgG" "sS" "b"
#if defined(HAVE_BIGNUM) || defined(HAVE_RATIO)
"npyY"
#endif
@@ -43,11 +43,11 @@ static const char * const valid_converte
#endif
;
static const char * const int_converters = "dic";
-static const char * const unsigned_int_converters = "ouxX";
+static const char * const unsigned_int_converters = "ouxXb";
static const char * const double_converters = "feEgG";
static const char * const string_converters = "sS";
#if defined(HAVE_BIGNUM) || defined(HAVE_RATIO)
-static const char * const bignum_converters = "npyY";
+static const char * const bignum_converters = "npyY\337";
#endif
#ifdef HAVE_BIGFLOAT
static const char * const bigfloat_converters = "FhHkK";
@@ -665,6 +665,7 @@ emacs_doprnt_1 (Lisp_Object stream, cons
case 'o': ch = 'p'; break;
case 'x': ch = 'y'; break;
case 'X': ch = 'Y'; break;
+ case 'b': ch = '\337'; break;
default: /* ch == 'u' */
if (strchr (unsigned_int_converters, ch) &&
ratio_sign (XRATIO_DATA (obj)) < 0)
@@ -684,6 +685,7 @@ emacs_doprnt_1 (Lisp_Object stream, cons
case 'o': ch = 'p'; break;
case 'x': ch = 'y'; break;
case 'X': ch = 'Y'; break;
+ case 'b': ch = '\337'; break;
default: /* ch == 'u' */
if (strchr (unsigned_int_converters, ch) &&
bignum_sign (XBIGNUM_DATA (obj)) < 0)
@@ -733,13 +735,21 @@ emacs_doprnt_1 (Lisp_Object stream, cons
#if defined(HAVE_BIGNUM) || defined(HAVE_RATIO)
else if (strchr (bignum_converters, ch))
{
+ int base = 16;
+
+ if (ch == 'n')
+ base = 10;
+ else if (ch == 'p')
+ base = 8;
+ else if (ch == '\337')
+ base = 2;
+
#ifdef HAVE_BIGNUM
if (BIGNUMP (arg.obj))
{
Ibyte *text_to_print =
(Ibyte *) bignum_to_string (XBIGNUM_DATA (arg.obj),
- ch == 'n' ? 10 :
- (ch == 'p' ? 8 : 16));
+ base);
doprnt_2 (stream, text_to_print,
strlen ((const char *) text_to_print),
spec->minwidth, -1, spec->minus_flag,
@@ -751,9 +761,7 @@ emacs_doprnt_1 (Lisp_Object stream, cons
if (RATIOP (arg.obj))
{
Ibyte *text_to_print =
- (Ibyte *) ratio_to_string (XRATIO_DATA (arg.obj),
- ch == 'n' ? 10 :
- (ch == 'p' ? 8 : 16));
+ (Ibyte *) ratio_to_string (XRATIO_DATA (arg.obj), base);
doprnt_2 (stream, text_to_print,
strlen ((const char *) text_to_print),
spec->minwidth, -1, spec->minus_flag,
@@ -774,6 +782,15 @@ emacs_doprnt_1 (Lisp_Object stream, cons
xfree (text_to_print, Ibyte *);
}
#endif /* HAVE_BIGFLOAT */
+ else if (ch == 'b')
+ {
+ Ascbyte *text_to_print = alloca_array (char, SIZEOF_LONG * 8 + 1);
+
+ ulong_to_bit_string (text_to_print, arg.ul);
+ doprnt_2 (stream, (Ibyte *)text_to_print,
+ qxestrlen ((Ibyte *)text_to_print),
+ spec->minwidth, -1, spec->minus_flag, spec->zero_flag);
+ }
else
{
Ascbyte *text_to_print;
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/editfns.c
--- a/src/editfns.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/editfns.c Mon Dec 24 15:04:01 2007 +0100
@@ -2155,7 +2155,7 @@ It may contain %-sequences meaning to su
%s means print all objects as-is, using `princ'.
%S means print all objects as s-expressions, using `prin1'.
%d or %i means print as an integer in decimal (%o octal, %x lowercase hex,
- %X uppercase hex).
+ %X uppercase hex, %b binary).
%c means print as a single character.
%f means print as a floating-point number in fixed notation (e.g. 785.200).
%e or %E means print as a floating-point number in scientific notation
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/extw-Xt.c
--- a/src/extw-Xt.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/extw-Xt.c Mon Dec 24 15:04:01 2007 +0100
@@ -37,38 +37,8 @@ static void fatal (char *msg);
#include <X11/IntrinsicP.h>
#include <stdlib.h>
#include <stdio.h>
+#include "compiler.h"
#include "extw-Xt.h"
-
-/* Yeah, that's portable!
-
- Why the hell didn't the Xt people just export this function
- for real? */
-
-#if (XT_REVISION > 5)
-EXTERN_C int
-_XtWaitForSomething (XtAppContext app, _XtBoolean ignoreEvents,
- _XtBoolean ignoreTimers, _XtBoolean ignoreInputs,
- _XtBoolean ignoreSignals, _XtBoolean block,
-#ifdef XTHREADS
- _XtBoolean drop_lock,
-#endif
- unsigned long *howlong);
-
-# ifndef XTHREADS
-# define _XT_WAIT_FOR_SOMETHING(timers,inputs,events,block,howlong,appCtx) \
- _XtWaitForSomething (appCtx,events,timers,inputs,0,block,howlong)
-# else
-# define _XT_WAIT_FOR_SOMETHING(timers,inputs,events,block,howlong,appCtx) \
- _XtWaitForSomething (appCtx,events,timers,inputs,0,block,1,howlong)
-# endif
-#else
-EXTERN_C int
-_XtwaitForSomething (Boolean ignoreTimers, Boolean ignoreInputs,
- Boolean ignoreEvents, Boolean block,
- unsigned long *howlong, XtAppContext app);
-# define _XT_WAIT_FOR_SOMETHING(timers,inputs,events,block,howlong,appCtx) \
- _XtwaitForSomething (timers,inputs,events,block,howlong,appCtx)
-#endif
#ifdef DEBUG_WIDGET
@@ -181,60 +151,87 @@ extw_get_geometry_value(Display *display
#endif
}
-typedef struct {
- Widget w;
- unsigned long request_num;
- en_extw_notify type;
+typedef struct
+{
+ Widget w;
+ unsigned long request_num;
+ en_extw_notify type;
} QueryStruct;
/* check if an event is of the sort we're looking for */
static Bool
-isMine(Display *dpy, XEvent *event, char *arg)
-{
- QueryStruct *q = (QueryStruct *) arg;
- Widget w = q->w;
-
- if ( (dpy != XtDisplay(w)) || (event->xany.window != XtWindow(w)) ) {
- return FALSE;
- }
- if (event->xany.serial >= q->request_num) {
- if (event->type == ClientMessage &&
- event->xclient.message_type == a_EXTW_NOTIFY &&
- event->xclient.data.l[0] == 1 - extw_which_side &&
- (en_extw_notify) event->xclient.data.l[1] == q->type)
- return TRUE;
- }
- return FALSE;
+isMine(XEvent *event, QueryStruct *q)
+{
+ Widget w = q->w;
+
+ if ( (event->xany.display != XtDisplay(w)) || (event->xany.window != XtWindow(w)) )
+ {
+ return FALSE;
+ }
+ if (event->xany.serial >= q->request_num)
+ {
+ if (event->type == ClientMessage &&
+ event->xclient.message_type == a_EXTW_NOTIFY &&
+ event->xclient.data.l[0] == 1 - extw_which_side &&
+ event->xclient.data.l[1] == (int) q->type)
+ {
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+void responseTimeOut(XtPointer clientData, XtIntervalId * UNUSED (id))
+{
+ Bool *expired=(Bool *)clientData;
+ *expired=TRUE;
}
/* wait for a ClientMessage of the specified type from the other widget, or
- time-out. isMine() determines whether an event matches. Culled from
- Shell.c. */
+ time-out. isMine() determines whether an event matches.
+ Took out the call to _XtWaitForSomething and replaced it with public
+ Xt api's.
+*/
Bool
extw_wait_for_response (Widget w, XEvent *event, unsigned long request_num,
en_extw_notify type, unsigned long timeout)
{
XtAppContext app = XtWidgetToApplicationContext(w);
+ XtInputMask inputMask;
QueryStruct q;
-
- XFlush(XtDisplay(w));
+ Bool expired;
+ XtIntervalId id;
+
q.w = w;
q.request_num = request_num;
q.type = type;
-
- for(;;)
- {
- /*
- * look for match event
- */
- if (XCheckIfEvent (XtDisplay(w), event, isMine, (char*)&q))
- return TRUE;
- if (_XT_WAIT_FOR_SOMETHING (TRUE, TRUE, FALSE, TRUE, &timeout, app)
- != -1)
- continue;
- if (timeout == 0)
- return FALSE;
- }
-}
+ expired=FALSE;
+
+ id=XtAppAddTimeOut(app, timeout, responseTimeOut,&expired);
+ while (!expired)
+ {
+ inputMask=XtAppPending(app);
+ if (inputMask & XtIMXEvent)
+ {
+ XtAppNextEvent(app, event);
+ if (isMine(event,&q))
+ {
+ if (!expired) XtRemoveTimeOut(id);
+ return True;
+ }
+ else
+ {
+ /* Do Nothing and go back to waiting */
+ }
+ }
+ if (inputMask & XtIMTimer)
+ {
+ /* Process the expired timer */
+ XtAppProcessEvent(app,XtIMTimer);
+ }
+ }
+ /* Must have expired */
+ return False;
+}
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/fileio.c
--- a/src/fileio.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/fileio.c Mon Dec 24 15:04:01 2007 +0100
@@ -1518,10 +1518,10 @@ If `/~' appears, all of FILENAME through
/* This function can GC. GC checked 2000-07-28 ben. */
Ibyte *nm;
- Ibyte *s, *p, *o, *x, *endp;
+ Ibyte *s, *p, *o, *x, *endp, *got;
Ibyte *target = 0;
int total = 0;
- int substituted = 0;
+ int substituted = 0, seen_braces;
Ibyte *xnm;
Lisp_Object handler;
@@ -1576,7 +1576,10 @@ If `/~' appears, all of FILENAME through
{
p++;
if (p == endp)
- goto badsubst;
+ {
+ /* No substitution, no error. */
+ break;
+ }
else if (*p == '$')
{
/* "$$" means a single "$" */
@@ -1589,7 +1592,12 @@ If `/~' appears, all of FILENAME through
{
o = ++p;
while (p != endp && *p != '}') p++;
- if (*p != '}') goto missingclose;
+ if (*p != '}')
+ {
+ /* No substitution, no error. Keep looking. */
+ p = o;
+ continue;
+ }
s = p;
}
else
@@ -1608,10 +1616,12 @@ If `/~' appears, all of FILENAME through
#endif /* WIN32_NATIVE */
/* Get variable value */
- o = egetenv ((CIbyte *) target);
- if (!o) goto badvar;
- total += qxestrlen (o);
- substituted = 1;
+ got = egetenv ((CIbyte *) target);
+ if (got)
+ {
+ total += qxestrlen (got);
+ substituted = 1;
+ }
}
if (!substituted)
@@ -1629,8 +1639,12 @@ If `/~' appears, all of FILENAME through
else
{
p++;
+ seen_braces = 0;
if (p == endp)
- goto badsubst;
+ {
+ *x++ = '$';
+ break;
+ }
else if (*p == '$')
{
*x++ = *p++;
@@ -1638,9 +1652,16 @@ If `/~' appears, all of FILENAME through
}
else if (*p == '{')
{
+ seen_braces = 1;
o = ++p;
while (p != endp && *p != '}') p++;
- if (*p != '}') goto missingclose;
+ if (*p != '}')
+ {
+ /* Don't syntax error, don't substitute */
+ *x++ = '{';
+ p = o;
+ continue;
+ }
s = p++;
}
else
@@ -1659,12 +1680,30 @@ If `/~' appears, all of FILENAME through
#endif /* WIN32_NATIVE */
/* Get variable value */
- o = egetenv ((CIbyte *) target);
- if (!o)
- goto badvar;
-
- qxestrcpy (x, o);
- x += qxestrlen (o);
+ got = egetenv ((CIbyte *) target);
+ if (got)
+ {
+ qxestrcpy (x, got);
+ x += qxestrlen (got);
+ }
+ else
+ {
+ *x++ = '$';
+ if (seen_braces)
+ {
+ *x++ = '{';
+ /* Preserve the original case. */
+ qxestrncpy (x, o, s - o);
+ x += s - o;
+ *x++ = '}';
+ }
+ else
+ {
+ /* Preserve the original case. */
+ qxestrncpy (x, o, s - o);
+ x += s - o;
+ }
+ }
}
*x = 0;
@@ -1689,17 +1728,6 @@ If `/~' appears, all of FILENAME through
#endif
return make_string (xnm, x - xnm);
-
- badsubst:
- syntax_error ("Bad format environment-variable substitution", filename);
- missingclose:
- syntax_error ("Missing \"}\" in environment-variable substitution",
- filename);
- badvar:
- syntax_error_2 ("Substituting nonexistent environment variable",
- filename, build_intstring (target));
-
- RETURN_NOT_REACHED (Qnil);
}
/* A slightly faster and more convenient way to get
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/font-mgr.c
--- a/src/font-mgr.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/font-mgr.c Mon Dec 24 15:04:01 2007 +0100
@@ -898,10 +898,8 @@ XEmacs: should convert to a chartable.
intern ("fc-config-get-blanks"));
}
-/* The misspelling in the fontconfig function name accurately corresponds to
- the version of fontconfig.h I had on 2007-04-13. -- sjt */
DEFUN("fc-config-get-rescan-interval", Ffc_config_get_rescan_interval, 1, 1, 0, /*
- -- Function: int FcConfigGetRescanInverval (FcConfig *config)
+ -- Function: int FcConfigGetRescanInterval (FcConfig *config)
Returns the interval between automatic checks of the configuration
(in seconds) specified in 'config'. The configuration is checked
during a call to FcFontList when this interval has passed since
@@ -909,13 +907,11 @@ DEFUN("fc-config-get-rescan-interval", F
(config))
{
CHECK_FCCONFIG (config);
- return make_int (FcConfigGetRescanInverval (XFCCONFIG_PTR (config)));
-}
-
-/* The misspelling in the fontconfig function name accurately corresponds to
- the version of fontconfig.h I had on 2007-04-13. -- sjt */
+ return make_int (FcConfigGetRescanInterval (XFCCONFIG_PTR (config)));
+}
+
DEFUN("fc-config-set-rescan-interval", Ffc_config_set_rescan_interval, 2, 2, 0, /*
- -- Function: FcBool FcConfigSetRescanInverval (FcConfig *config, int
+ -- Function: FcBool FcConfigSetRescanInterval (FcConfig *config, int
rescanInterval)
Sets the rescan interval; returns FcFalse if an error occurred.
XEmacs: signal such error, or return nil on success. */
@@ -923,7 +919,7 @@ DEFUN("fc-config-set-rescan-interval", F
{
CHECK_FCCONFIG (config);
CHECK_INT (rescan_interval);
- if (FcConfigSetRescanInverval (XFCCONFIG_PTR (config),
+ if (FcConfigSetRescanInterval (XFCCONFIG_PTR (config),
XINT (rescan_interval)) == FcFalse)
signal_error (Qio_error, "FcConfigSetRescanInverval barfed",
intern ("fc-config-set-rescan-interval"));
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/font-mgr.h
--- a/src/font-mgr.h Mon Dec 24 15:02:36 2007 +0100
+++ b/src/font-mgr.h Mon Dec 24 15:04:01 2007 +0100
@@ -90,6 +90,17 @@ DECLARE_LRECORD(fc_config, struct fc_con
#endif /* FONTCONFIG_EXPOSE_CONFIG */
#ifdef USE_XFT
+
+#ifndef HAVE_FCCONFIGGETRESCANINTERVAL
+/* Older fontconfig versions misspell this function name. */
+#define FcConfigGetRescanInterval FcConfigGetRescanInverval
+#endif /* */
+
+#ifndef HAVE_FCCONFIGSETRESCANINTERVAL
+/* Older fontconfig versions misspell this function name. */
+#define FcConfigSetRescanInterval FcConfigSetRescanInverval
+#endif /* */
+
/*
The format of a fontname (as returned by fontconfig) is not well-documented,
But the character repertoire is represented in an ASCII-compatible way. See
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/glyphs-eimage.c
--- a/src/glyphs-eimage.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/glyphs-eimage.c Mon Dec 24 15:04:01 2007 +0100
@@ -109,6 +109,14 @@ BEGIN_C_DECLS
#define XMD_H
typedef signed int INT32;
typedef signed short INT16;
+
+/* And another one... jmorecfg.h defines the 'boolean' type as int,
+ which conflicts with the standard Windows 'boolean' definition as
+ unsigned char. Ref: http://www.asmail.be/msg0054688232.html */
+#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
+typedef unsigned char boolean;
+#endif
+#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
#endif
#include <jpeglib.h>
diff -r 63c25d1cbecf001ad5d3df335e95283d0a3d917d -r df1f1f49ef702d66951ed0833cf160116c2b4e01 src/keymap.c
--- a/src/keymap.c Mon Dec 24 15:02:36 2007 +0100
+++ b/src/keymap.c Mon Dec 24 15:04:01 2007 +0100
@@ -1388,7 +1388,7 @@ define_key_check_and_coerce_keysym (Lisp