Merge from trunk

This commit is contained in:
Stefan Monnier 2011-03-31 00:24:03 -04:00
commit 40d83b412f
170 changed files with 5682 additions and 2637 deletions

12
.gitignore vendored
View file

@ -1,3 +1,13 @@
configure
aclocal.m4
compile
config.guess
config.sub
depcomp
install-sh
missing
lib/Makefile.in
src/config.in
autom4te.cache
makefile
*~
@ -5,5 +15,3 @@ makefile
/bin/
/site-lisp/
# arch-tag: 75cd3c50-1875-4814-8360-190f7de38302

View file

@ -1,3 +1,71 @@
2011-03-28 Glenn Morris <rgm@gnu.org>
* autogen/update_autogen: Pass -f to autoreconf.
* autogen.sh (get_version): Discard "not found" lines.
(check_version): Respect $AUTOCONF etc environment variables.
2011-03-27 Glenn Morris <rgm@gnu.org>
* configure.in (AC_TYPE_SIGNAL): Remove obsolete macro.
(AH_BOTTOM): Do not define SIGTYPE.
2011-03-26 Glenn Morris <rgm@gnu.org>
* configure.in: Replace obsolete macros AC_TRY_COMPILE, AC_TRY_LINK,
AC_TRY_RUN with AC_COMPILE_IFELSE, AC_LINK_IFELSE, AC_RUN_IFELSE.
2011-03-25 Andreas Schwab <schwab@linux-m68k.org>
* autogen/update_autogen: Remove useless function keyword.
2011-03-25 Eli Zaretskii <eliz@gnu.org>
* config.bat: Generate src/config.h and lib/Makefile from
autogen/config.in and autogen/Makefile.in.
2011-03-25 Glenn Morris <rgm@gnu.org>
* compile, config.guess, config.sub, depcomp, install-sh, missing:
Remove; autoreconf can supply them.
* Makefile.in (sync-from-gnulib): Don't sync config.sub,
config.guess, install-sh. Pass -i to autoreconf.
* autogen/update_autogen (genfiles): Add compile, config.guess,
config.sub, depcomp, install-sh, missing. Pass -i to autoreconf.
Discard non-error output from autoreconf in -q case.
* autogen/compile, autogen/config.guess, autogen/config.sub:
* autogen/depcomp, autogen/install-sh, autogen/missing: New.
* autogen/copy_autogen: Add compile, config.guess, config.sub, depcomp,
install-sh, missing.
2011-03-23 Glenn Morris <rgm@gnu.org>
* autogen/update_autogen: Fix typo.
(msg): Remove function; use `exec' instead.
* Makefile.in (mkdir): Use `install-sh -d' instead of mkinstalldirs.
(sync-from-gnulib): Don't sync mkinstalldirs.
* make-dist: Don't distribute mkinstalldirs.
2011-03-23 Paul Eggert <eggert@cs.ucla.edu>
Fix more problems found by GCC 4.5.2's static checks.
* Makefile.in (GNULIB_MODULES): Add socklen.
* configure.in: Do not check for sys/socket.h, since socklen does that.
* m4/socklen.m4: New automatically-generated file, from gnulib.
fakemail: Remove dependency on ignore-value.
* Makefile.in (GNULIB_MODULES): Add stdio.
* lib/stdio.in.h, m4/stdio_h.m4: New files, automatically
imported from gnulib.
* .bzrignore: Add lib/stdio.h.
2011-03-22 Glenn Morris <rgm@gnu.org>
* autogen/copy_autogen: Work from ./ or ../.
Fix time-stamps.
* autogen.sh: Doc fix.
2011-03-20 Glenn Morris <rgm@gnu.org>
* autogen/: New directory, to be excluded from releases.

View file

@ -17,11 +17,11 @@ The `autogen.sh' script can help you figure out if you have the
necessary tools.
The first time you build, there are a couple of extra steps.
First, generate the `configure' script:
First, generate the `configure' script and some related files:
$ ./autogen.sh
(or you can just run `autoreconf -I m4').
(or you can just run `autoreconf -i -I m4').
You can then configure your build (use `./configure --help' to see
options you can set):

View file

@ -332,7 +332,8 @@ DOS_gnulib_comp.m4 = gl-comp.m4
# as per $(gnulib_srcdir)/DEPENDENCIES.
GNULIB_MODULES = \
crypto/md5 dtoastr filemode getloadavg getopt-gnu \
ignore-value intprops lstat mktime readlink strftime symlink sys_stat
ignore-value intprops lstat mktime readlink \
socklen stdio strftime symlink sys_stat
GNULIB_TOOL_FLAGS = \
--import --no-changelog --no-vc-files --makefile-name=gnulib.mk
sync-from-gnulib: $(gnulib_srcdir)
@ -343,13 +344,9 @@ sync-from-gnulib: $(gnulib_srcdir)
cd $(srcdir)/m4 && mv gnulib-comp.m4 $(DOS_gnulib_comp.m4)
cp $(gnulib_srcdir)/build-aux/texinfo.tex $(srcdir)/doc/misc
cp \
$(gnulib_srcdir)/build-aux/config.sub \
$(gnulib_srcdir)/build-aux/config.guess \
$(gnulib_srcdir)/build-aux/install-sh \
$(gnulib_srcdir)/build-aux/mkinstalldirs \
$(gnulib_srcdir)/build-aux/move-if-change \
$(srcdir)
cd $(srcdir) && autoreconf -I m4
cd $(srcdir) && autoreconf -i -I m4
.PHONY: sync-from-gnulib
# These targets should be "${SUBDIR} without `src'".
@ -677,7 +674,7 @@ install-strip:
### Build all the directories we're going to install Emacs in. Since
### we may be creating several layers of directories (for example,
### /usr/local/lib/emacs/19.0/mips-dec-ultrix4.2), we use mkinstalldirs
### /usr/local/lib/emacs/19.0/mips-dec-ultrix4.2), we use install-sh -d
### instead of mkdir. Not all systems' mkdir programs have the `-p' flag.
### We set the umask so that any created directories are world-readable.
### FIXME it would be good to warn about non-standard permissions of
@ -691,7 +688,7 @@ mkdir: FRC
done ; \
icondirs=`echo "$${icondirs}" | sed 's,$(srcdir)/etc/images/icons,$(DESTDIR)${icondir},g'` ; \
umask 022 ; \
$(srcdir)/mkinstalldirs $(DESTDIR)${datadir} ${COPYDESTS} \
$(srcdir)/install-sh -d $(DESTDIR)${datadir} ${COPYDESTS} \
$(DESTDIR)${infodir} $(DESTDIR)${man1dir} \
$(DESTDIR)${bindir} $(DESTDIR)${docdir} $(DESTDIR)${libexecdir} \
$(DESTDIR)${datadir}/emacs/site-lisp \

View file

@ -58,7 +58,6 @@ HAVE_TERMIOS
INTERRUPT_INPUT
NARROWPROTO
SEPCHAR
SIGTYPE
SYSTEM_TYPE
** Machine specific macros, decribed in detail in src/m/template.h
@ -238,7 +237,6 @@ SIGNALS_VIA_CHARACTERS
SIGPIPE
SIGQUIT
SIGTRAP
SIGTYPE
SOLARIS2
STDC_HEADERS
SYSTEM_PURESIZE_EXTRA

View file

@ -29,9 +29,12 @@ For each step, check for possible errors.
when preparing a major Emacs release, or branching for it.)
5. Edit configure.in so that maintainer-mode is off by default.
(FIXME - need to find a better way of dealing with this).
(FIXME - need to find a better way of dealing with this.
Or maybe it's fine and indeed correct to leave it on?
See http://lists.gnu.org/archive/html/emacs-devel/2011-03/msg00859.html
and subsequent.)
autoreconf -I m4 --force
autoreconf -i -I m4 --force
make bootstrap
6. Commit etc/AUTHORS, all the files changed by M-x set-version, and

View file

@ -65,23 +65,22 @@ removes a file, then remove the corresponding files by hand.
The following description uses bound branches, presumably it works in
a similar way with unbound ones.
0) (First time only) Get the bzr changelog_merge plugin:
0) (First time only) Get the bzr changelog_merge plugin
(this will be included by default in bzr 2.4 onwards):
cd ~/.bazaar/plugins
bzr branch lp:bzr-changelog-merge
# The following is an improved version of: lp:bzr-changelog-merge
bzr branch lp:~spiv/bzr-changelog-merge/non-head-edits-723968
mv bzr-changelog-merge changelog_merge
This will make merging ChangeLogs a lot smoother. It merges new
entries to the top of the file, rather than trying to fit them in
mid-way through.
This should make merging ChangeLogs smoother. It merges new entries
to the top of the file, rather than trying to fit them in mid-way
through. Newer versions of the plugin should also be able to deal
with changes to *old* ChangeLog entries, that should not be floated to
the head of the file (see launchpad#723968).
Sigh. This plugin has a drawback. People often like to edit older
ChangeLog entries, not at the head of the file. Frequently they do
this in the same commit as making new entries. Using this plugin
will merge ALL changed entries (including older ones) to the top of
the destination file.
Maybe the default Emacs behavior without this plugin is better, I dunno.
Maybe the default Emacs behavior without this plugin is better,
though, it's not clear yet.
1) Get clean, up-to-date copies of the emacs-23 and trunk branches.
Check for any uncommitted changes with bzr status.

View file

@ -120,7 +120,10 @@ or even ChangeLogs, for older changes. People often installed changes
from others, without recording the true authorship.
[For reference, most of these points were established via email with
rms, 2007/1, "Copyright years".]
rms, 2007/1, "Copyright years".
In March 2011, information on some files no longer included was removed.
Consult older versions of this document if interested.]
lisp/version.el # emacs-copyright
@ -143,20 +146,9 @@ lib/Makefile.in
install-sh
- this file is copyright MIT, which is OK. Leave the copyright alone.
mkinstalldirs
src/m/news-r6.h
public domain, leave alone.
etc/refcards/*.tex
also update the \def\year macro for the latest year.
etc/BABYL, ms-kermit
no notices (see below).
etc/emacs.csh
- written by Michael DeCorte, who has no assignment. But trivial
enough to not need license.
etc/future-bug
- doesn't need a humorless disclaimer, because Karl Fogel says we
can consider it part of Emacs, and he has a blanker disclaimer for
@ -389,9 +381,9 @@ Makefile.in does now.
src/gmalloc.c
- contains numerous copyrights from the GNU C library. Leave them alone.
src/acldef.h, chpdef.h, ndir.h
- see comments below. These files are OK to be released with Emacs
22, but we may want to revisit them afterwards.
src/ndir.h
- see comments below. This file is OK to be released with Emacs
22, but we may want to revisit it afterwards.
** Some notes on resolved issues, for historical information only
@ -402,15 +394,6 @@ which year, I can probably tell you which.) Either way, we have papers
for it." It was present in Emacs-16.56 (15-jul-85). rms: "Then I
conclude it was written by me."
etc/ulimit.hack
Very obsolete file removed March 2007. Doesn't say who the author
is, but web-search suggests Karl Kleinpaste, who has no Emacs
assignment. Trivial anyway.
http://groups.google.com/group/comp.unix.shell/browse_thread/thread/bf3df496994\
9f1df/7e5922c67b3a98fb
http://groups.google.com/group/comp.unix.questions/msg/cc7e49cacfd1ccb4
(original 1987 source)
lisp/term/README
- had no copyright notice till Feb 2007. ChangeLog.3 suggests it was
written by Eric Raymond. When asked by rms on 14 Feb 2007 he said:
@ -431,20 +414,6 @@ src/unexhp9k800.c
HP. So this file is public domain.
K Rodgers changes
It was pointed out that K Rodgers only had assigments for VC and
ps-print, but had changed several other files. We tried to contact
him for a general assignment, but he proved uncommunicative (despite
initially indicating to rms he would sign an assignment). As a result, his
changes were removed and/or rewritten independently. For details, see
threads:
http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00225.html
http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00257.html
But then an assignment arrived before the release of Emacs 22:
http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg01427.html
lisp/progmodes/python.el
Dave Love alerted us to a potential legal problem:
http://lists.gnu.org/archive/html/emacs-pretest-bug/2007-04/msg00459.html
@ -460,14 +429,8 @@ http://lists.gnu.org/archive/html/emacs-devel/2007-05/msg00466.html
admin/check-doc-strings
File says it's in the public domain, but that might not make it so.
etc/BABYL
File written long ago by authors with no assignment. Keep them
without notices for now, try and contact authors if possible. Be
ready to remove these files if the authors ever object.
etc/ms-kermit
etc/e/eterm-color.ti
src/acldef.h, chpdef.h, ndir.h
src/ndir.h
On legal advice from Matt Norwood, the following comment was added
to these files in Feb/Mar 2007:
@ -480,25 +443,8 @@ src/acldef.h, chpdef.h, ndir.h
and possibly add a list of all authors who have changed these files.
(details in email from Matt Norwood to rms, 2007/02/03).
etc/ms-7bkermit
Says it was written by Andy Lowry and Joel Spolsky. No entry for
either in copyright.list. NB this file is not "constrained" like
ms-kermit (rms: "We know it isn't. A comment at the front says it has
other bindings which might be handy."). File removed March 2007.
Re-add if clear up status at some point.
etc/Xkeymap.txt
No info on author. File removed March 2007. rms: "It says it is
RLK's way of remapping his keyboard, so it is not constrained. I think
it was written by RLK. Let's delete it; if we contact RLK again, we
can put it back." Actually, RLK == Robert Krawitz has an Emacs
assignment. So this could be restored if it is still useful, but Jan Djärv
says it is obsolete:
<http://lists.gnu.org/archive/html/emacs-devel/2007-03/msg00673.html>
src/m/mips4.h, news-risc.h, pmax.h
src/s/aix3-2.h, bsd386.h, hpux8.h, hpux9.h, irix4-0.h, irix5-0.h,
netbsd.h, sol2-3.h, usg5-4-2.h
src/s/aix3-2.h, hpux8.h, hpux9.h, irix5-0.h, netbsd.h, usg5-4-2.h
[note some of these have since been merged into other files]
- all these (not obviously trivial) files were missing copyrights
till Feb 2007, when FSF copyright was added. Matt Norwood advised:
@ -513,22 +459,6 @@ netbsd.h, sol2-3.h, usg5-4-2.h
Here is my (rgm) take on the details of the above files:
mips4.h
might be trivial? started trivial, been added to in tiny changes by
those with FSF assignment, often result of email suggestions by others.
news-risc.h
started trivial. Grown by tiny additions, plus chunk
from mips.h, which was and is Copyright FSF
pmax.h
started trivial. grown in tiny changes, except for maybe Jim Wilson's
comment.
? irix4-0.h
I would say started non-trivial (1992, rms). only tiny changes since
installed.
? irix5-0.h
I would say started non-trivial (1993, jimb, heavily based
on irix4-0.h). A few borderline non-tiny changes since.
@ -537,11 +467,7 @@ usg5-4-2.h
started non-trivial, but was heavily based on usg5-4.h, which was and is
copyright FSF. only tiny changes since installed.
sol2-3.h
started trivial. only non-tiny change (1994) incorporated code from
usg5-4.h, which was and is copyright FSF.
aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h
aix3-2.h, hpux8.h, hpux9.h, netbsd.h
started trivial, grown in tiny changes.
netbsd.h:
@ -556,8 +482,8 @@ Someone might want to tweak the copyright years (for dates before
Note: erring on the side of caution, I also added notices to some
files I thought might be considered non-trivial (if one includes
comment) in s/:
aix4-1.h hpux10.h irix6-0.h irix6-5.h
ptx4.h sol2.h
aix4-1.h hpux10.h irix6-5.h
sol2.h
(everything with > 30 non-blank lines, which at least is _some_ kind of
system)

View file

@ -30,6 +30,7 @@
### Code:
## Tools we need:
## Note that we respect the values of AUTOCONF etc, like autoreconf does.
progs="autoconf automake"
## Minimum versions we need:
@ -46,7 +47,8 @@ automake_min=1.11
## Also note that we do not handle micro versions.
get_version ()
{
$1 --version 2>&1 | sed -n '1 s/.* \([1-9][0-9\.]*\).*/\1/p'
## Remove eg "./autogen.sh: line 50: autoconf: command not found".
$1 --version 2>&1 | sed -e '/not found/d' -n -e '1 s/.* \([1-9][0-9\.]*\).*/\1/p'
}
## $1 = version string, eg "2.59"
@ -71,7 +73,14 @@ minor_version ()
## Return 3 for unexpected error (eg failed to parse version).
check_version ()
{
have_version=`get_version $1`
## Respect eg $AUTOMAKE if it is set, like autoreconf does.
uprog=`echo $1 | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
eval uprog=\$${uprog}
[ x"$uprog" = x ] && uprog=$1
have_version=`get_version $uprog`
[ x"$have_version" = x ] && return 1
@ -177,14 +186,14 @@ this script.
If you know that the required versions are in your PATH, but this
script has made an error, then you can simply run
autoreconf -I m4
autoreconf -i -I m4
instead of this script.
If all else fails, you can try using the pre-built versions of the
generated files by doing:
cd autogen && ./copy_autogen
./autogen/copy_autogen
This is not recommended - see the comments in \`copy_autogen'.
@ -198,7 +207,7 @@ echo "Your system has the required tools, running autoreconf..."
## Let autoreconf figure out what, if anything, needs doing.
autoreconf -I m4 || exit $?
autoreconf -i -I m4 || exit $?
echo "You can now run \`./configure'."

View file

@ -24,7 +24,7 @@
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=. --makefile-name=gnulib.mk --no-libtool --macro-prefix=gl --no-vc-files crypto/md5 dtoastr filemode getloadavg getopt-gnu ignore-value intprops lstat mktime readlink strftime symlink sys_stat
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=. --makefile-name=gnulib.mk --no-libtool --macro-prefix=gl --no-vc-files crypto/md5 dtoastr filemode getloadavg getopt-gnu ignore-value intprops lstat mktime readlink socklen stdio strftime symlink sys_stat
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
@ -57,9 +57,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
$(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/longlong.m4 \
$(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/md5.m4 \
$(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/multiarch.m4 \
$(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/st_dm_mode.m4 \
$(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdbool.m4 \
$(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \
$(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/socklen.m4 \
$(top_srcdir)/m4/st_dm_mode.m4 $(top_srcdir)/m4/stat.m4 \
$(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \
$(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdio_h.m4 \
$(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/strftime.m4 \
$(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/sys_stat_h.m4 \
$(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \
@ -67,7 +68,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \
$(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/src/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@ -150,6 +151,7 @@ GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@
GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@
GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
GNULIB_DUP2 = @GNULIB_DUP2@
GNULIB_DUP3 = @GNULIB_DUP3@
GNULIB_ENVIRON = @GNULIB_ENVIRON@
@ -158,15 +160,31 @@ GNULIB_FACCESSAT = @GNULIB_FACCESSAT@
GNULIB_FCHDIR = @GNULIB_FCHDIR@
GNULIB_FCHMODAT = @GNULIB_FCHMODAT@
GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@
GNULIB_FCLOSE = @GNULIB_FCLOSE@
GNULIB_FFLUSH = @GNULIB_FFLUSH@
GNULIB_FOPEN = @GNULIB_FOPEN@
GNULIB_FPRINTF = @GNULIB_FPRINTF@
GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@
GNULIB_FPURGE = @GNULIB_FPURGE@
GNULIB_FPUTC = @GNULIB_FPUTC@
GNULIB_FPUTS = @GNULIB_FPUTS@
GNULIB_FREOPEN = @GNULIB_FREOPEN@
GNULIB_FSEEK = @GNULIB_FSEEK@
GNULIB_FSEEKO = @GNULIB_FSEEKO@
GNULIB_FSTATAT = @GNULIB_FSTATAT@
GNULIB_FSYNC = @GNULIB_FSYNC@
GNULIB_FTELL = @GNULIB_FTELL@
GNULIB_FTELLO = @GNULIB_FTELLO@
GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@
GNULIB_FUTIMENS = @GNULIB_FUTIMENS@
GNULIB_FWRITE = @GNULIB_FWRITE@
GNULIB_GETCWD = @GNULIB_GETCWD@
GNULIB_GETDELIM = @GNULIB_GETDELIM@
GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@
GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@
GNULIB_GETGROUPS = @GNULIB_GETGROUPS@
GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@
GNULIB_GETLINE = @GNULIB_GETLINE@
GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@
GNULIB_GETLOGIN = @GNULIB_GETLOGIN@
GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@
@ -194,22 +212,37 @@ GNULIB_MKSTEMP = @GNULIB_MKSTEMP@
GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@
GNULIB_MKTIME = @GNULIB_MKTIME@
GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@
GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@
GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@
GNULIB_PERROR = @GNULIB_PERROR@
GNULIB_PIPE = @GNULIB_PIPE@
GNULIB_PIPE2 = @GNULIB_PIPE2@
GNULIB_POPEN = @GNULIB_POPEN@
GNULIB_PREAD = @GNULIB_PREAD@
GNULIB_PRINTF = @GNULIB_PRINTF@
GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@
GNULIB_PTSNAME = @GNULIB_PTSNAME@
GNULIB_PUTC = @GNULIB_PUTC@
GNULIB_PUTCHAR = @GNULIB_PUTCHAR@
GNULIB_PUTENV = @GNULIB_PUTENV@
GNULIB_PUTS = @GNULIB_PUTS@
GNULIB_PWRITE = @GNULIB_PWRITE@
GNULIB_RANDOM_R = @GNULIB_RANDOM_R@
GNULIB_READLINK = @GNULIB_READLINK@
GNULIB_READLINKAT = @GNULIB_READLINKAT@
GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@
GNULIB_REALPATH = @GNULIB_REALPATH@
GNULIB_REMOVE = @GNULIB_REMOVE@
GNULIB_RENAME = @GNULIB_RENAME@
GNULIB_RENAMEAT = @GNULIB_RENAMEAT@
GNULIB_RMDIR = @GNULIB_RMDIR@
GNULIB_RPMATCH = @GNULIB_RPMATCH@
GNULIB_SETENV = @GNULIB_SETENV@
GNULIB_SLEEP = @GNULIB_SLEEP@
GNULIB_SNPRINTF = @GNULIB_SNPRINTF@
GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@
GNULIB_STAT = @GNULIB_STAT@
GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@
GNULIB_STRPTIME = @GNULIB_STRPTIME@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
@ -219,6 +252,7 @@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@
GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@
GNULIB_TIMEGM = @GNULIB_TIMEGM@
GNULIB_TIME_R = @GNULIB_TIME_R@
GNULIB_TMPFILE = @GNULIB_TMPFILE@
GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@
GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@
GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@
@ -228,6 +262,14 @@ GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@
GNULIB_UNSETENV = @GNULIB_UNSETENV@
GNULIB_USLEEP = @GNULIB_USLEEP@
GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@
GNULIB_VASPRINTF = @GNULIB_VASPRINTF@
GNULIB_VDPRINTF = @GNULIB_VDPRINTF@
GNULIB_VFPRINTF = @GNULIB_VFPRINTF@
GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@
GNULIB_VPRINTF = @GNULIB_VPRINTF@
GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@
GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@
GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@
GNULIB_WCTOMB = @GNULIB_WCTOMB@
GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
@ -243,15 +285,24 @@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@
HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@
HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@
HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@
HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@
HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@
HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@
HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@
HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@
HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@
HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@
HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@
HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@
HAVE_DECL_SETENV = @HAVE_DECL_SETENV@
HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@
HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@
HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@
HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@
HAVE_DPRINTF = @HAVE_DPRINTF@
HAVE_DUP2 = @HAVE_DUP2@
HAVE_DUP3 = @HAVE_DUP3@
HAVE_EUIDACCESS = @HAVE_EUIDACCESS@
@ -259,8 +310,10 @@ HAVE_FACCESSAT = @HAVE_FACCESSAT@
HAVE_FCHDIR = @HAVE_FCHDIR@
HAVE_FCHMODAT = @HAVE_FCHMODAT@
HAVE_FCHOWNAT = @HAVE_FCHOWNAT@
HAVE_FSEEKO = @HAVE_FSEEKO@
HAVE_FSTATAT = @HAVE_FSTATAT@
HAVE_FSYNC = @HAVE_FSYNC@
HAVE_FTELLO = @HAVE_FTELLO@
HAVE_FTRUNCATE = @HAVE_FTRUNCATE@
HAVE_FUTIMENS = @HAVE_FUTIMENS@
HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@
@ -301,6 +354,7 @@ HAVE_RANDOM_R = @HAVE_RANDOM_R@
HAVE_READLINK = @HAVE_READLINK@
HAVE_READLINKAT = @HAVE_READLINKAT@
HAVE_REALPATH = @HAVE_REALPATH@
HAVE_RENAMEAT = @HAVE_RENAMEAT@
HAVE_RPMATCH = @HAVE_RPMATCH@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@
@ -327,6 +381,8 @@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@
HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@
HAVE_USLEEP = @HAVE_USLEEP@
HAVE_UTIMENSAT = @HAVE_UTIMENSAT@
HAVE_VASPRINTF = @HAVE_VASPRINTF@
HAVE_VDPRINTF = @HAVE_VDPRINTF@
HAVE_WCHAR_H = @HAVE_WCHAR_H@
HAVE_WCHAR_T = @HAVE_WCHAR_T@
HAVE_XSERVER = @HAVE_XSERVER@
@ -397,6 +453,7 @@ M_FILE = @M_FILE@
NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@
NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@
NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@
NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@
NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@
NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@
@ -404,6 +461,7 @@ NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@
NEXT_GETOPT_H = @NEXT_GETOPT_H@
NEXT_STDDEF_H = @NEXT_STDDEF_H@
NEXT_STDINT_H = @NEXT_STDINT_H@
NEXT_STDIO_H = @NEXT_STDIO_H@
NEXT_STDLIB_H = @NEXT_STDLIB_H@
NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@
NEXT_TIME_H = @NEXT_TIME_H@
@ -438,15 +496,28 @@ REPLACE_CALLOC = @REPLACE_CALLOC@
REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@
REPLACE_CHOWN = @REPLACE_CHOWN@
REPLACE_CLOSE = @REPLACE_CLOSE@
REPLACE_DPRINTF = @REPLACE_DPRINTF@
REPLACE_DUP = @REPLACE_DUP@
REPLACE_DUP2 = @REPLACE_DUP2@
REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@
REPLACE_FCLOSE = @REPLACE_FCLOSE@
REPLACE_FFLUSH = @REPLACE_FFLUSH@
REPLACE_FOPEN = @REPLACE_FOPEN@
REPLACE_FPRINTF = @REPLACE_FPRINTF@
REPLACE_FPURGE = @REPLACE_FPURGE@
REPLACE_FREOPEN = @REPLACE_FREOPEN@
REPLACE_FSEEK = @REPLACE_FSEEK@
REPLACE_FSEEKO = @REPLACE_FSEEKO@
REPLACE_FSTAT = @REPLACE_FSTAT@
REPLACE_FSTATAT = @REPLACE_FSTATAT@
REPLACE_FTELL = @REPLACE_FTELL@
REPLACE_FTELLO = @REPLACE_FTELLO@
REPLACE_FUTIMENS = @REPLACE_FUTIMENS@
REPLACE_GETCWD = @REPLACE_GETCWD@
REPLACE_GETDELIM = @REPLACE_GETDELIM@
REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@
REPLACE_GETGROUPS = @REPLACE_GETGROUPS@
REPLACE_GETLINE = @REPLACE_GETLINE@
REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@
REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@
REPLACE_LCHOWN = @REPLACE_LCHOWN@
@ -464,25 +535,42 @@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@
REPLACE_MKTIME = @REPLACE_MKTIME@
REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@
REPLACE_NULL = @REPLACE_NULL@
REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@
REPLACE_PERROR = @REPLACE_PERROR@
REPLACE_POPEN = @REPLACE_POPEN@
REPLACE_PREAD = @REPLACE_PREAD@
REPLACE_PRINTF = @REPLACE_PRINTF@
REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_READLINK = @REPLACE_READLINK@
REPLACE_REALLOC = @REPLACE_REALLOC@
REPLACE_REALPATH = @REPLACE_REALPATH@
REPLACE_REMOVE = @REPLACE_REMOVE@
REPLACE_RENAME = @REPLACE_RENAME@
REPLACE_RENAMEAT = @REPLACE_RENAMEAT@
REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
REPLACE_STAT = @REPLACE_STAT@
REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
REPLACE_TIMEGM = @REPLACE_TIMEGM@
REPLACE_TMPFILE = @REPLACE_TMPFILE@
REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@
REPLACE_UNLINK = @REPLACE_UNLINK@
REPLACE_UNLINKAT = @REPLACE_UNLINKAT@
REPLACE_UNSETENV = @REPLACE_UNSETENV@
REPLACE_USLEEP = @REPLACE_USLEEP@
REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@
REPLACE_VASPRINTF = @REPLACE_VASPRINTF@
REPLACE_VDPRINTF = @REPLACE_VDPRINTF@
REPLACE_VFPRINTF = @REPLACE_VFPRINTF@
REPLACE_VPRINTF = @REPLACE_VPRINTF@
REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@
REPLACE_VSPRINTF = @REPLACE_VSPRINTF@
REPLACE_WCTOMB = @REPLACE_WCTOMB@
REPLACE_WRITE = @REPLACE_WRITE@
RSVG_CFLAGS = @RSVG_CFLAGS@
@ -601,21 +689,22 @@ x_default_search_path = @x_default_search_path@
# present in all Makefile.am that need it. This is ensured by the applicability
# 'all' defined above.
BUILT_SOURCES = arg-nonnull.h c++defs.h $(GETOPT_H) $(STDBOOL_H) \
$(STDDEF_H) $(STDINT_H) stdlib.h sys/stat.h time.h unistd.h \
warn-on-use.h
$(STDDEF_H) $(STDINT_H) stdio.h stdlib.h sys/stat.h time.h \
unistd.h warn-on-use.h
EXTRA_DIST = $(top_srcdir)/./arg-nonnull.h $(top_srcdir)/./c++defs.h \
md5.c md5.h dosname.h ftoastr.c ftoastr.h filemode.c \
filemode.h getloadavg.c getopt.c getopt.in.h getopt1.c \
getopt_int.h intprops.h lstat.c mktime-internal.h mktime.c \
readlink.c stat.c stdbool.in.h stddef.in.h stdint.in.h \
stdlib.in.h strftime.c strftime.h symlink.c sys_stat.in.h \
time.in.h time_r.c unistd.in.h $(top_srcdir)/./warn-on-use.h
stdio.in.h stdlib.in.h strftime.c strftime.h symlink.c \
sys_stat.in.h time.in.h time_r.c unistd.in.h \
$(top_srcdir)/./warn-on-use.h
MOSTLYCLEANDIRS = sys
MOSTLYCLEANFILES = core *.stackdump arg-nonnull.h arg-nonnull.h-t \
c++defs.h c++defs.h-t getopt.h getopt.h-t stdbool.h \
stdbool.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdlib.h \
stdlib.h-t sys/stat.h sys/stat.h-t time.h time.h-t unistd.h \
unistd.h-t warn-on-use.h warn-on-use.h-t
stdbool.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h \
stdio.h-t stdlib.h stdlib.h-t sys/stat.h sys/stat.h-t time.h \
time.h-t unistd.h unistd.h-t warn-on-use.h warn-on-use.h-t
noinst_LIBRARIES = libgnu.a
DEFAULT_INCLUDES = -I. -I../src -I$(top_srcdir)/src
libgnu_a_SOURCES = dtoastr.c gettext.h ignore-value.h
@ -996,6 +1085,108 @@ stdint.h: stdint.in.h
} > $@-t && \
mv $@-t $@
# We need the following in order to create <stdio.h> when the system
# doesn't have one that works with the given compiler.
stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
$(AM_V_GEN)rm -f $@-t $@ && \
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \
sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \
-e 's|@''GNULIB_DPRINTF''@|$(GNULIB_DPRINTF)|g' \
-e 's|@''GNULIB_FCLOSE''@|$(GNULIB_FCLOSE)|g' \
-e 's|@''GNULIB_FFLUSH''@|$(GNULIB_FFLUSH)|g' \
-e 's|@''GNULIB_FOPEN''@|$(GNULIB_FOPEN)|g' \
-e 's|@''GNULIB_FPRINTF''@|$(GNULIB_FPRINTF)|g' \
-e 's|@''GNULIB_FPRINTF_POSIX''@|$(GNULIB_FPRINTF_POSIX)|g' \
-e 's|@''GNULIB_FPURGE''@|$(GNULIB_FPURGE)|g' \
-e 's|@''GNULIB_FPUTC''@|$(GNULIB_FPUTC)|g' \
-e 's|@''GNULIB_FPUTS''@|$(GNULIB_FPUTS)|g' \
-e 's|@''GNULIB_FREOPEN''@|$(GNULIB_FREOPEN)|g' \
-e 's|@''GNULIB_FSEEK''@|$(GNULIB_FSEEK)|g' \
-e 's|@''GNULIB_FSEEKO''@|$(GNULIB_FSEEKO)|g' \
-e 's|@''GNULIB_FTELL''@|$(GNULIB_FTELL)|g' \
-e 's|@''GNULIB_FTELLO''@|$(GNULIB_FTELLO)|g' \
-e 's|@''GNULIB_FWRITE''@|$(GNULIB_FWRITE)|g' \
-e 's|@''GNULIB_GETDELIM''@|$(GNULIB_GETDELIM)|g' \
-e 's|@''GNULIB_GETLINE''@|$(GNULIB_GETLINE)|g' \
-e 's|@''GNULIB_OBSTACK_PRINTF''@|$(GNULIB_OBSTACK_PRINTF)|g' \
-e 's|@''GNULIB_OBSTACK_PRINTF_POSIX''@|$(GNULIB_OBSTACK_PRINTF_POSIX)|g' \
-e 's|@''GNULIB_PERROR''@|$(GNULIB_PERROR)|g' \
-e 's|@''GNULIB_POPEN''@|$(GNULIB_POPEN)|g' \
-e 's|@''GNULIB_PRINTF''@|$(GNULIB_PRINTF)|g' \
-e 's|@''GNULIB_PRINTF_POSIX''@|$(GNULIB_PRINTF_POSIX)|g' \
-e 's|@''GNULIB_PUTC''@|$(GNULIB_PUTC)|g' \
-e 's|@''GNULIB_PUTCHAR''@|$(GNULIB_PUTCHAR)|g' \
-e 's|@''GNULIB_PUTS''@|$(GNULIB_PUTS)|g' \
-e 's|@''GNULIB_REMOVE''@|$(GNULIB_REMOVE)|g' \
-e 's|@''GNULIB_RENAME''@|$(GNULIB_RENAME)|g' \
-e 's|@''GNULIB_RENAMEAT''@|$(GNULIB_RENAMEAT)|g' \
-e 's|@''GNULIB_SNPRINTF''@|$(GNULIB_SNPRINTF)|g' \
-e 's|@''GNULIB_SPRINTF_POSIX''@|$(GNULIB_SPRINTF_POSIX)|g' \
-e 's|@''GNULIB_STDIO_H_SIGPIPE''@|$(GNULIB_STDIO_H_SIGPIPE)|g' \
-e 's|@''GNULIB_TMPFILE''@|$(GNULIB_TMPFILE)|g' \
-e 's|@''GNULIB_VASPRINTF''@|$(GNULIB_VASPRINTF)|g' \
-e 's|@''GNULIB_VDPRINTF''@|$(GNULIB_VDPRINTF)|g' \
-e 's|@''GNULIB_VFPRINTF''@|$(GNULIB_VFPRINTF)|g' \
-e 's|@''GNULIB_VFPRINTF_POSIX''@|$(GNULIB_VFPRINTF_POSIX)|g' \
-e 's|@''GNULIB_VPRINTF''@|$(GNULIB_VPRINTF)|g' \
-e 's|@''GNULIB_VPRINTF_POSIX''@|$(GNULIB_VPRINTF_POSIX)|g' \
-e 's|@''GNULIB_VSNPRINTF''@|$(GNULIB_VSNPRINTF)|g' \
-e 's|@''GNULIB_VSPRINTF_POSIX''@|$(GNULIB_VSPRINTF_POSIX)|g' \
< $(srcdir)/stdio.in.h | \
sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
-e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \
-e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \
-e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \
-e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \
-e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \
-e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \
-e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \
-e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \
-e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \
-e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \
-e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \
-e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \
-e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \
-e 's|@''REPLACE_DPRINTF''@|$(REPLACE_DPRINTF)|g' \
-e 's|@''REPLACE_FCLOSE''@|$(REPLACE_FCLOSE)|g' \
-e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \
-e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \
-e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \
-e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \
-e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \
-e 's|@''REPLACE_FSEEK''@|$(REPLACE_FSEEK)|g' \
-e 's|@''REPLACE_FSEEKO''@|$(REPLACE_FSEEKO)|g' \
-e 's|@''REPLACE_FTELL''@|$(REPLACE_FTELL)|g' \
-e 's|@''REPLACE_FTELLO''@|$(REPLACE_FTELLO)|g' \
-e 's|@''REPLACE_GETDELIM''@|$(REPLACE_GETDELIM)|g' \
-e 's|@''REPLACE_GETLINE''@|$(REPLACE_GETLINE)|g' \
-e 's|@''REPLACE_OBSTACK_PRINTF''@|$(REPLACE_OBSTACK_PRINTF)|g' \
-e 's|@''REPLACE_PERROR''@|$(REPLACE_PERROR)|g' \
-e 's|@''REPLACE_POPEN''@|$(REPLACE_POPEN)|g' \
-e 's|@''REPLACE_PRINTF''@|$(REPLACE_PRINTF)|g' \
-e 's|@''REPLACE_REMOVE''@|$(REPLACE_REMOVE)|g' \
-e 's|@''REPLACE_RENAME''@|$(REPLACE_RENAME)|g' \
-e 's|@''REPLACE_RENAMEAT''@|$(REPLACE_RENAMEAT)|g' \
-e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \
-e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \
-e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \
-e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \
-e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \
-e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \
-e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \
-e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \
-e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \
-e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \
-e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
} > $@-t && \
mv $@-t $@
# We need the following in order to create <stdlib.h> when the system
# doesn't have one that works with the given compiler.
stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)

View file

@ -7,6 +7,12 @@ configure ../ autoconf
config.in ../src autoheader * also used by MSDOS bzr build
aclocal.m4 ../ aclocal
Makefile.in ../lib automake
compile ../ automake
config.guess ../ automake
config.sub ../ automake
depcomp ../ automake
install-sh ../ automake
missing ../ automake
There are also some scripts:

2
autogen/aclocal.m4 vendored
View file

@ -999,11 +999,13 @@ m4_include([m4/md5.m4])
m4_include([m4/mktime.m4])
m4_include([m4/multiarch.m4])
m4_include([m4/readlink.m4])
m4_include([m4/socklen.m4])
m4_include([m4/st_dm_mode.m4])
m4_include([m4/stat.m4])
m4_include([m4/stdbool.m4])
m4_include([m4/stddef_h.m4])
m4_include([m4/stdint.m4])
m4_include([m4/stdio_h.m4])
m4_include([m4/stdlib_h.m4])
m4_include([m4/strftime.m4])
m4_include([m4/symlink.m4])

View file

@ -1,10 +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, 2006, 2007, 2008, 2009, 2010,
# 2011 Free Software Foundation, Inc.
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
# Free Software Foundation, Inc.
timestamp='2011-02-02'
timestamp='2009-06-10'
# 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
@ -27,16 +27,16 @@ timestamp='2011-02-02'
# the same distribution terms that you use for the rest of that program.
# Originally written by Per Bothner. Please send patches (context
# diff format) to <config-patches@gnu.org> and include a ChangeLog
# entry.
# Originally written by Per Bothner <per@bothner.com>.
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted ChangeLog entry.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
# exits with 0. Otherwise, it exits with 1.
#
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
# The plan is that this can be called by configure scripts if you
# don't specify an explicit build system type.
me=`echo "$0" | sed -e 's,.*/,,'`
@ -56,9 +56,8 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
Software Foundation, Inc.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@ -181,7 +180,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
fi
;;
*)
os=netbsd
os=netbsd
;;
esac
# The OS release
@ -224,7 +223,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
;;
*5.*)
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
;;
esac
# According to Compaq, /usr/sbin/psrinfo has been available on
@ -270,10 +269,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# 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'`
# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
exitcode=$?
trap '' 0
exit $exitcode ;;
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
@ -299,7 +295,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
echo s390-ibm-zvmoe
exit ;;
*:OS400:*:*)
echo powerpc-ibm-os400
echo powerpc-ibm-os400
exit ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
@ -337,9 +333,6 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
echo i386-pc-auroraux${UNAME_RELEASE}
exit ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
eval $set_cc_for_build
SUN_ARCH="i386"
@ -398,23 +391,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
echo m68k-atari-mint${UNAME_RELEASE}
exit ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit ;;
exit ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
echo m68k-atari-mint${UNAME_RELEASE}
exit ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
echo m68k-milan-mint${UNAME_RELEASE}
exit ;;
echo m68k-milan-mint${UNAME_RELEASE}
exit ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
echo m68k-hades-mint${UNAME_RELEASE}
exit ;;
echo m68k-hades-mint${UNAME_RELEASE}
exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit ;;
echo m68k-unknown-mint${UNAME_RELEASE}
exit ;;
m68k:machten:*:*)
echo m68k-apple-machten${UNAME_RELEASE}
exit ;;
@ -484,8 +477,8 @@ EOF
echo m88k-motorola-sysv3
exit ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
@ -498,7 +491,7 @@ EOF
else
echo i586-dg-dgux${UNAME_RELEASE}
fi
exit ;;
exit ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
exit ;;
@ -555,7 +548,7 @@ EOF
echo rs6000-ibm-aix3.2
fi
exit ;;
*:AIX:*:[4567])
*:AIX:*:[456])
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
IBM_ARCH=rs6000
@ -598,52 +591,52 @@ EOF
9000/[678][0-9][0-9])
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
esac ;;
esac
esac ;;
esac
fi
if [ "${HP_ARCH}" = "" ]; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE
#include <stdlib.h>
#include <unistd.h>
#define _HPUX_SOURCE
#include <stdlib.h>
#include <unistd.h>
int main ()
{
#if defined(_SC_KERNEL_BITS)
long bits = sysconf(_SC_KERNEL_BITS);
#endif
long cpu = sysconf (_SC_CPU_VERSION);
int main ()
{
#if defined(_SC_KERNEL_BITS)
long bits = sysconf(_SC_KERNEL_BITS);
#endif
long cpu = sysconf (_SC_CPU_VERSION);
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
case CPU_PA_RISC2_0:
#if defined(_SC_KERNEL_BITS)
switch (bits)
{
case 64: puts ("hppa2.0w"); break;
case 32: puts ("hppa2.0n"); break;
default: puts ("hppa2.0"); break;
} break;
#else /* !defined(_SC_KERNEL_BITS) */
puts ("hppa2.0"); break;
#endif
default: puts ("hppa1.0"); break;
}
exit (0);
}
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
case CPU_PA_RISC2_0:
#if defined(_SC_KERNEL_BITS)
switch (bits)
{
case 64: puts ("hppa2.0w"); break;
case 32: puts ("hppa2.0n"); break;
default: puts ("hppa2.0"); break;
} break;
#else /* !defined(_SC_KERNEL_BITS) */
puts ("hppa2.0"); break;
#endif
default: puts ("hppa1.0"); break;
}
exit (0);
}
EOF
(CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
test -z "$HP_ARCH" && HP_ARCH=hppa
@ -734,22 +727,22 @@ EOF
exit ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit ;;
exit ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
exit ;;
exit ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
exit ;;
exit ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
exit ;;
exit ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit ;;
exit ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit ;;
@ -773,14 +766,14 @@ EOF
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 ;;
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 ;;
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}"
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 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
@ -808,18 +801,18 @@ EOF
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
i*:windows32*:*)
# uname -m includes "-pc" on this system.
echo ${UNAME_MACHINE}-mingw32
# uname -m includes "-pc" on this system.
echo ${UNAME_MACHINE}-mingw32
exit ;;
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit ;;
*:Interix*:*)
case ${UNAME_MACHINE} in
*:Interix*:[3456]*)
case ${UNAME_MACHINE} in
x86)
echo i586-pc-interix${UNAME_RELEASE}
exit ;;
authenticamd | genuineintel | EM64T)
EM64T | authenticamd | genuineintel)
echo x86_64-unknown-interix${UNAME_RELEASE}
exit ;;
IA64)
@ -861,20 +854,6 @@ EOF
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV5) UNAME_MACHINE=alphaev5 ;;
EV56) UNAME_MACHINE=alphaev56 ;;
PCA56) UNAME_MACHINE=alphapca56 ;;
PCA57) UNAME_MACHINE=alphapca56 ;;
EV6) UNAME_MACHINE=alphaev6 ;;
EV67) UNAME_MACHINE=alphaev67 ;;
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
exit ;;
arm*:Linux:*:*)
eval $set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
@ -895,18 +874,7 @@ EOF
echo crisv32-axis-linux-gnu
exit ;;
frv:Linux:*:*)
echo frv-unknown-linux-gnu
exit ;;
i*86:Linux:*:*)
LIBC=gnu
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#ifdef __dietlibc__
LIBC=dietlibc
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
echo frv-unknown-linux-gnu
exit ;;
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
@ -933,18 +901,39 @@ EOF
#endif
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
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 ;;
ppc64:Linux:*:*)
echo powerpc64-unknown-linux-gnu
exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV5) UNAME_MACHINE=alphaev5 ;;
EV56) UNAME_MACHINE=alphaev56 ;;
PCA56) UNAME_MACHINE=alphapca56 ;;
PCA57) UNAME_MACHINE=alphapca56 ;;
EV6) UNAME_MACHINE=alphaev6 ;;
EV67) UNAME_MACHINE=alphaev67 ;;
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
exit ;;
padre:Linux:*:*)
echo sparc-unknown-linux-gnu
exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
echo hppa64-unknown-linux-gnu
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
@ -953,17 +942,14 @@ EOF
*) echo hppa-unknown-linux-gnu ;;
esac
exit ;;
ppc64:Linux:*:*)
echo powerpc64-unknown-linux-gnu
exit ;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
parisc64:Linux:*:* | hppa64:Linux:*:*)
echo hppa64-unknown-linux-gnu
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux
exit ;;
sh64*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit ;;
sh*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
@ -971,9 +957,6 @@ EOF
sparc:Linux:*:* | sparc64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit ;;
tile*:Linux:*:*)
echo ${UNAME_MACHINE}-tilera-linux-gnu
exit ;;
vax:Linux:*:*)
echo ${UNAME_MACHINE}-dec-linux-gnu
exit ;;
@ -981,8 +964,60 @@ EOF
echo x86_64-unknown-linux-gnu
exit ;;
xtensa*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
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
# problems with other programs or directories called `ld' in the path.
# Set LC_ALL=C to ensure ld outputs messages in English.
ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
| sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
s/.*supported targets: *//
s/ .*//
p'`
case "$ld_supported_targets" in
elf32-i386)
TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
;;
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include <features.h>
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
LIBC=gnu
# else
LIBC=gnulibc1
# endif
# else
LIBC=gnulibc1
# endif
#else
#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
LIBC=gnu
#else
LIBC=gnuaout
#endif
#endif
#ifdef __dietlibc__
LIBC=dietlibc
#endif
EOF
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
@ -990,11 +1025,11 @@ EOF
echo i386-sequent-sysv4
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...
# I am not positive that other SVR4 systems won't match this,
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit ;;
i*86:OS/2:*:*)
@ -1026,7 +1061,7 @@ EOF
fi
exit ;;
i*86:*:5:[678]*)
# UnixWare 7.x, OpenUNIX and OpenServer 6.
# UnixWare 7.x, OpenUNIX and OpenServer 6.
case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
@ -1054,13 +1089,13 @@ EOF
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 i586.
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i586.
# Note: whatever this is, it MUST be the same as what config.sub
# prints for the "djgpp" host, or else GDB configury will decide that
# this is a cross-build.
echo i586-pc-msdosdjgpp
exit ;;
exit ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
exit ;;
@ -1095,8 +1130,8 @@ EOF
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
&& { 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; } ;;
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& { echo i486-ncr-sysv4; exit; } ;;
NCR*:*:4.2:* | MPRAS*:*:4.2:*)
OS_REL='.3'
test -r /etc/.relid \
@ -1139,10 +1174,10 @@ EOF
echo ns32k-sni-sysv
fi
exit ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4
exit ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4
exit ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
@ -1168,11 +1203,11 @@ EOF
exit ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
echo mips-unknown-sysv${UNAME_RELEASE}
fi
exit ;;
exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
exit ;;
@ -1212,16 +1247,6 @@ EOF
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
case $UNAME_PROCESSOR in
i386)
eval $set_cc_for_build
if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
UNAME_PROCESSOR="x86_64"
fi
fi ;;
unknown) UNAME_PROCESSOR=powerpc ;;
esac
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
@ -1237,9 +1262,6 @@ EOF
*:QNX:*:4*)
echo i386-pc-qnx
exit ;;
NEO-?:NONSTOP_KERNEL:*:*)
echo neo-tandem-nsk${UNAME_RELEASE}
exit ;;
NSE-?:NONSTOP_KERNEL:*:*)
echo nse-tandem-nsk${UNAME_RELEASE}
exit ;;
@ -1285,13 +1307,13 @@ EOF
echo pdp10-unknown-its
exit ;;
SEI:*:*:SEIUX)
echo mips-sei-seiux${UNAME_RELEASE}
echo mips-sei-seiux${UNAME_RELEASE}
exit ;;
*:DragonFly:*:*)
echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit ;;
*:*VMS:*:*)
UNAME_MACHINE=`(uname -p) 2>/dev/null`
UNAME_MACHINE=`(uname -p) 2>/dev/null`
case "${UNAME_MACHINE}" in
A*) echo alpha-dec-vms ; exit ;;
I*) echo ia64-dec-vms ; exit ;;
@ -1331,11 +1353,11 @@ main ()
#include <sys/param.h>
printf ("m68k-sony-newsos%s\n",
#ifdef NEWSOS4
"4"
"4"
#else
""
""
#endif
); exit (0);
); exit (0);
#endif
#endif

View file

@ -833,6 +833,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define to 1 if `vfork' works. */
#undef HAVE_WORKING_VFORK
/* Define to 1 if you have the <ws2tcpip.h> header file. */
#undef HAVE_WS2TCPIP_H
/* Define to 1 if you want to use version 11 of X windows. Otherwise, Emacs
expects to use version 10. */
#undef HAVE_X11
@ -996,9 +999,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
slash */
#undef REPLACE_FUNC_STAT_FILE
/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE
/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
'sig_atomic_t'. */
#undef SIG_ATOMIC_T_SUFFIX
@ -1206,6 +1206,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
# define __restrict__
#endif
/* type to use in place of socklen_t if not defined */
#undef socklen_t
/* Define to any substitute for sys_siglist. */
#undef sys_siglist
@ -1268,11 +1271,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
# define SYSTEM_PURESIZE_EXTRA 30000
#endif
/* SIGTYPE is the macro we actually use. */
#ifndef SIGTYPE
#define SIGTYPE RETSIGTYPE
#endif
#ifdef emacs /* Don't do this for lib-src. */
/* Tell regex.c to use a type compatible with Emacs. */
#define RE_TRANSLATE_TYPE Lisp_Object

View file

@ -1,10 +1,10 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
# 2011 Free Software Foundation, Inc.
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
# Free Software Foundation, Inc.
timestamp='2011-02-24'
timestamp='2009-06-11'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@ -32,16 +32,13 @@ timestamp='2011-02-24'
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted GNU ChangeLog entry.
# diff and a properly formatted ChangeLog entry.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software.
@ -75,9 +72,8 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
Software Foundation, Inc.
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@ -124,9 +120,8 @@ 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-android* | linux-dietlibc | linux-newlib* | \
linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
knetbsd*-gnu* | netbsd*-gnu* | \
nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
@ -154,12 +149,12 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-apple | -axis | -knuth | -cray | -microblaze)
-apple | -axis | -knuth | -cray)
os=
basic_machine=$1
;;
-bluegene*)
os=-cnk
-bluegene*)
os=-cnk
;;
-sim | -cisco | -oki | -wec | -winbond)
os=
@ -175,10 +170,10 @@ case $os in
os=-chorusos
basic_machine=$1
;;
-chorusrdb)
os=-chorusrdb
-chorusrdb)
os=-chorusrdb
basic_machine=$1
;;
;;
-hiux*)
os=-hiuxwe2
;;
@ -283,38 +278,26 @@ case $basic_machine in
| moxie \
| mt \
| msp430 \
| nds32 | nds32le | nds32be \
| nios | nios2 \
| ns16k | ns32k \
| or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
| rx \
| score \
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
| spu | strongarm \
| tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
| ubicom32 \
| tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
| we32k \
| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
| z8k | z80)
basic_machine=$basic_machine-unknown
;;
c54x)
basic_machine=tic54x-unknown
;;
c55x)
basic_machine=tic55x-unknown
;;
c6x)
basic_machine=tic6x-unknown
;;
m6811 | m68hc11 | m6812 | m68hc12 | picochip)
m6811 | m68hc11 | m6812 | m68hc12)
# Motorola 68HC11/12.
basic_machine=$basic_machine-unknown
os=-none
@ -345,7 +328,7 @@ case $basic_machine in
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
@ -357,7 +340,7 @@ case $basic_machine in
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
@ -379,24 +362,21 @@ case $basic_machine in
| mmix-* \
| mt-* \
| msp430-* \
| nds32-* | nds32le-* | nds32be-* \
| nios-* | nios2-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* | rx-* \
| romp-* | rs6000-* \
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tile-* | tilegx-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
| tron-* \
| ubicom32-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
@ -424,7 +404,7 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
abacus)
abacus)
basic_machine=abacus-unknown
;;
adobe68k)
@ -494,20 +474,11 @@ case $basic_machine in
basic_machine=powerpc-ibm
os=-cnk
;;
c54x-*)
basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
c55x-*)
basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
c6x-*)
basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
c90)
basic_machine=c90-cray
os=-unicos
;;
cegcc)
cegcc)
basic_machine=arm-unknown
os=-cegcc
;;
@ -539,7 +510,7 @@ case $basic_machine in
basic_machine=craynv-cray
os=-unicosmp
;;
cr16 | cr16-*)
cr16)
basic_machine=cr16-unknown
os=-elf
;;
@ -755,9 +726,6 @@ case $basic_machine in
basic_machine=ns32k-utek
os=-sysv
;;
microblaze)
basic_machine=microblaze-xilinx
;;
mingw32)
basic_machine=i386-pc
os=-mingw32
@ -862,12 +830,6 @@ case $basic_machine in
np1)
basic_machine=np1-gould
;;
neo-tandem)
basic_machine=neo-tandem
;;
nse-tandem)
basic_machine=nse-tandem
;;
nsr-tandem)
basic_machine=nsr-tandem
;;
@ -1102,10 +1064,17 @@ case $basic_machine in
basic_machine=t90-cray
os=-unicos
;;
# This must be matched before tile*.
tilegx*)
basic_machine=tilegx-unknown
os=-linux-gnu
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
;;
tic55x | c55x*)
basic_machine=tic55x-unknown
os=-coff
;;
tic6x | c6x*)
basic_machine=tic6x-unknown
os=-coff
;;
tile*)
basic_machine=tile-unknown
@ -1275,12 +1244,9 @@ esac
if [ x"$os" != x"" ]
then
case $os in
# First match some system type aliases
# that might get confused with valid system types.
# First match some system type aliases
# that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception.
-auroraux)
os=-auroraux
;;
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
@ -1302,8 +1268,8 @@ case $os in
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
| -sym* | -kopensolaris* \
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
| -kopensolaris* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* | -aros* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
@ -1316,8 +1282,7 @@ case $os in
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -linux-android* \
| -linux-newlib* | -linux-uclibc* \
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
| -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
@ -1325,7 +1290,7 @@ case $os in
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
| -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@ -1364,7 +1329,7 @@ case $os in
-opened*)
os=-openedition
;;
-os400*)
-os400*)
os=-os400
;;
-wince*)
@ -1413,7 +1378,7 @@ case $os in
-sinix*)
os=-sysv4
;;
-tpf*)
-tpf*)
os=-tpf
;;
-triton*)
@ -1458,8 +1423,6 @@ case $os in
-dicos*)
os=-dicos
;;
-nacl*)
;;
-none)
;;
*)
@ -1482,10 +1445,10 @@ else
# system, and we'll never get to this point.
case $basic_machine in
score-*)
score-*)
os=-elf
;;
spu-*)
spu-*)
os=-elf
;;
*-acorn)
@ -1497,17 +1460,8 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
c4x-* | tic4x-*)
os=-coff
;;
tic54x-*)
os=-coff
;;
tic55x-*)
os=-coff
;;
tic6x-*)
os=-coff
c4x-* | tic4x-*)
os=-coff
;;
# This must come before the *-dec entry.
pdp10-*)
@ -1534,7 +1488,7 @@ case $basic_machine in
m68*-cisco)
os=-aout
;;
mep-*)
mep-*)
os=-elf
;;
mips*-cisco)
@ -1561,7 +1515,7 @@ case $basic_machine in
*-ibm)
os=-aix
;;
*-knuth)
*-knuth)
os=-mmixware
;;
*-wec)

378
autogen/configure vendored
View file

@ -673,6 +673,93 @@ NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H
NEXT_SYS_STAT_H
NEXT_AS_FIRST_DIRECTIVE_STDLIB_H
NEXT_STDLIB_H
NEXT_AS_FIRST_DIRECTIVE_STDIO_H
NEXT_STDIO_H
REPLACE_VSPRINTF
REPLACE_VSNPRINTF
REPLACE_VPRINTF
REPLACE_VFPRINTF
REPLACE_VDPRINTF
REPLACE_VASPRINTF
REPLACE_TMPFILE
REPLACE_STDIO_WRITE_FUNCS
REPLACE_SPRINTF
REPLACE_SNPRINTF
REPLACE_RENAMEAT
REPLACE_RENAME
REPLACE_REMOVE
REPLACE_PRINTF
REPLACE_POPEN
REPLACE_PERROR
REPLACE_OBSTACK_PRINTF
REPLACE_GETLINE
REPLACE_GETDELIM
REPLACE_FTELLO
REPLACE_FTELL
REPLACE_FSEEKO
REPLACE_FSEEK
REPLACE_FREOPEN
REPLACE_FPURGE
REPLACE_FPRINTF
REPLACE_FOPEN
REPLACE_FFLUSH
REPLACE_FCLOSE
REPLACE_DPRINTF
HAVE_VDPRINTF
HAVE_VASPRINTF
HAVE_RENAMEAT
HAVE_FTELLO
HAVE_FSEEKO
HAVE_DPRINTF
HAVE_DECL_VSNPRINTF
HAVE_DECL_SNPRINTF
HAVE_DECL_OBSTACK_PRINTF
HAVE_DECL_GETLINE
HAVE_DECL_GETDELIM
HAVE_DECL_FTELLO
HAVE_DECL_FSEEKO
HAVE_DECL_FPURGE
GNULIB_VSPRINTF_POSIX
GNULIB_VSNPRINTF
GNULIB_VPRINTF_POSIX
GNULIB_VPRINTF
GNULIB_VFPRINTF_POSIX
GNULIB_VFPRINTF
GNULIB_VDPRINTF
GNULIB_VASPRINTF
GNULIB_TMPFILE
GNULIB_STDIO_H_SIGPIPE
GNULIB_SPRINTF_POSIX
GNULIB_SNPRINTF
GNULIB_RENAMEAT
GNULIB_RENAME
GNULIB_REMOVE
GNULIB_PUTS
GNULIB_PUTCHAR
GNULIB_PUTC
GNULIB_PRINTF_POSIX
GNULIB_PRINTF
GNULIB_POPEN
GNULIB_PERROR
GNULIB_OBSTACK_PRINTF_POSIX
GNULIB_OBSTACK_PRINTF
GNULIB_GETLINE
GNULIB_GETDELIM
GNULIB_FWRITE
GNULIB_FTELLO
GNULIB_FTELL
GNULIB_FSEEKO
GNULIB_FSEEK
GNULIB_FREOPEN
GNULIB_FPUTS
GNULIB_FPUTC
GNULIB_FPURGE
GNULIB_FPRINTF_POSIX
GNULIB_FPRINTF
GNULIB_FOPEN
GNULIB_FFLUSH
GNULIB_FCLOSE
GNULIB_DPRINTF
STDINT_H
WINT_T_SUFFIX
WCHAR_T_SUFFIX
@ -2943,6 +3030,7 @@ as_fn_append ac_header_list " getopt.h"
as_fn_append ac_func_list " lstat"
as_fn_append ac_func_list " alarm"
as_fn_append ac_func_list " readlink"
as_fn_append ac_header_list " sys/socket.h"
as_fn_append ac_header_list " wchar.h"
as_fn_append ac_header_list " stdint.h"
as_fn_append ac_func_list " tzset"
@ -6120,10 +6208,12 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
# Code from module mktime:
# Code from module multiarch:
# Code from module readlink:
# Code from module socklen:
# Code from module stat:
# Code from module stdbool:
# Code from module stddef:
# Code from module stdint:
# Code from module stdio:
# Code from module stdlib:
# Code from module strftime:
# Code from module symlink:
@ -7809,40 +7899,6 @@ $as_echo "#define HAVE_STRUCT_UTIMBUF 1" >>confdefs.h
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
$as_echo_n "checking return type of signal handlers... " >&6; }
if test "${ac_cv_type_signal+set}" = set; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <signal.h>
int
main ()
{
return *(signal (0, 0)) (0) == 1;
;
return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_type_signal=int
else
ac_cv_type_signal=void
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
$as_echo "$ac_cv_type_signal" >&6; }
cat >>confdefs.h <<_ACEOF
#define RETSIGTYPE $ac_cv_type_signal
_ACEOF
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for speed_t" >&5
$as_echo_n "checking for speed_t... " >&6; }
if test "${emacs_cv_speed_t+set}" = set; then :
@ -7947,18 +8003,6 @@ $as_echo "#define NO_MATHERR 1" >>confdefs.h
fi
for ac_header in sys/socket.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_socket_h" = x""yes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SYS_SOCKET_H 1
_ACEOF
fi
done
for ac_header in net/if.h
do :
ac_fn_c_check_header_compile "$LINENO" "net/if.h" "ac_cv_header_net_if_h" "$ac_includes_default
@ -8667,7 +8711,7 @@ $as_echo "$ac_enable_autodepend" >&6; }
DEPFLAGS='-MMD -MF ${DEPDIR}/$*.d'
## In parallel builds, another make might create depdir between
## the first test and mkdir, so stick another test on the end.
## Or use mkinstalldirs? mkdir -p is not portable.
## Or use install-sh -d? mkdir -p is not portable.
MKDEPDIR='test -d ${DEPDIR} || mkdir ${DEPDIR} || test -d ${DEPDIR}'
deps_frag=autodeps.mk
fi
@ -14761,6 +14805,24 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test $ac_cv_header_sys_socket_h = no; then
for ac_header in ws2tcpip.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "ws2tcpip.h" "ac_cv_header_ws2tcpip_h" "$ac_includes_default"
if test "x$ac_cv_header_ws2tcpip_h" = x""yes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_WS2TCPIP_H 1
_ACEOF
fi
done
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5
$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; }
if test "${ac_cv_header_stdbool_h+set}" = set; then :
@ -15008,6 +15070,93 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h
GNULIB_DPRINTF=0;
GNULIB_FCLOSE=0;
GNULIB_FFLUSH=0;
GNULIB_FOPEN=0;
GNULIB_FPRINTF=0;
GNULIB_FPRINTF_POSIX=0;
GNULIB_FPURGE=0;
GNULIB_FPUTC=0;
GNULIB_FPUTS=0;
GNULIB_FREOPEN=0;
GNULIB_FSEEK=0;
GNULIB_FSEEKO=0;
GNULIB_FTELL=0;
GNULIB_FTELLO=0;
GNULIB_FWRITE=0;
GNULIB_GETDELIM=0;
GNULIB_GETLINE=0;
GNULIB_OBSTACK_PRINTF=0;
GNULIB_OBSTACK_PRINTF_POSIX=0;
GNULIB_PERROR=0;
GNULIB_POPEN=0;
GNULIB_PRINTF=0;
GNULIB_PRINTF_POSIX=0;
GNULIB_PUTC=0;
GNULIB_PUTCHAR=0;
GNULIB_PUTS=0;
GNULIB_REMOVE=0;
GNULIB_RENAME=0;
GNULIB_RENAMEAT=0;
GNULIB_SNPRINTF=0;
GNULIB_SPRINTF_POSIX=0;
GNULIB_STDIO_H_SIGPIPE=0;
GNULIB_TMPFILE=0;
GNULIB_VASPRINTF=0;
GNULIB_VDPRINTF=0;
GNULIB_VFPRINTF=0;
GNULIB_VFPRINTF_POSIX=0;
GNULIB_VPRINTF=0;
GNULIB_VPRINTF_POSIX=0;
GNULIB_VSNPRINTF=0;
GNULIB_VSPRINTF_POSIX=0;
HAVE_DECL_FPURGE=1;
HAVE_DECL_FSEEKO=1;
HAVE_DECL_FTELLO=1;
HAVE_DECL_GETDELIM=1;
HAVE_DECL_GETLINE=1;
HAVE_DECL_OBSTACK_PRINTF=1;
HAVE_DECL_SNPRINTF=1;
HAVE_DECL_VSNPRINTF=1;
HAVE_DPRINTF=1;
HAVE_FSEEKO=1;
HAVE_FTELLO=1;
HAVE_RENAMEAT=1;
HAVE_VASPRINTF=1;
HAVE_VDPRINTF=1;
REPLACE_DPRINTF=0;
REPLACE_FCLOSE=0;
REPLACE_FFLUSH=0;
REPLACE_FOPEN=0;
REPLACE_FPRINTF=0;
REPLACE_FPURGE=0;
REPLACE_FREOPEN=0;
REPLACE_FSEEK=0;
REPLACE_FSEEKO=0;
REPLACE_FTELL=0;
REPLACE_FTELLO=0;
REPLACE_GETDELIM=0;
REPLACE_GETLINE=0;
REPLACE_OBSTACK_PRINTF=0;
REPLACE_PERROR=0;
REPLACE_POPEN=0;
REPLACE_PRINTF=0;
REPLACE_REMOVE=0;
REPLACE_RENAME=0;
REPLACE_RENAMEAT=0;
REPLACE_SNPRINTF=0;
REPLACE_SPRINTF=0;
REPLACE_STDIO_WRITE_FUNCS=0;
REPLACE_TMPFILE=0;
REPLACE_VASPRINTF=0;
REPLACE_VDPRINTF=0;
REPLACE_VFPRINTF=0;
REPLACE_VPRINTF=0;
REPLACE_VSNPRINTF=0;
REPLACE_VSPRINTF=0;
ac_fn_c_check_member "$LINENO" "struct tm" "tm_gmtoff" "ac_cv_member_struct_tm_tm_gmtoff" "#include <time.h>
"
if test "x$ac_cv_member_struct_tm_tm_gmtoff" = x""yes; then :
@ -16333,6 +16482,70 @@ $as_echo "#define READLINK_TRAILING_SLASH_BUG 1" >>confdefs.h
# Code from module socklen:
ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "
/* <sys/types.h> is not needed according to POSIX, but the
<sys/socket.h> in i386-unknown-freebsd4.10 and
powerpc-apple-darwin5.5 required it. */
#include <sys/types.h>
#if HAVE_SYS_SOCKET_H
# include <sys/socket.h>
#elif HAVE_WS2TCPIP_H
# include <ws2tcpip.h>
#endif
"
if test "x$ac_cv_type_socklen_t" = x""yes; then :
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5
$as_echo_n "checking for socklen_t equivalent... " >&6; }
if test "${gl_cv_socklen_t_equiv+set}" = set; then :
$as_echo_n "(cached) " >&6
else
# Systems have either "struct sockaddr *" or
# "void *" as the second argument to getpeername
gl_cv_socklen_t_equiv=
for arg2 in "struct sockaddr" void; do
for t in int size_t "unsigned int" "long int" "unsigned long int"; do
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/socket.h>
int getpeername (int, $arg2 *, $t *);
int
main ()
{
$t len;
getpeername (0, 0, &len);
;
return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
gl_cv_socklen_t_equiv="$t"
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
test "$gl_cv_socklen_t_equiv" != "" && break
done
test "$gl_cv_socklen_t_equiv" != "" && break
done
fi
if test "$gl_cv_socklen_t_equiv" = ""; then
as_fn_error "Cannot find a type to use in place of socklen_t" "$LINENO" 5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socklen_t_equiv" >&5
$as_echo "$gl_cv_socklen_t_equiv" >&6; }
cat >>confdefs.h <<_ACEOF
#define socklen_t $gl_cv_socklen_t_equiv
_ACEOF
fi
# Code from module stat:
@ -17272,6 +17485,77 @@ _ACEOF
fi
# Code from module stdio:
if test $gl_cv_have_include_next = yes; then
gl_cv_next_stdio_h='<'stdio.h'>'
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of <stdio.h>" >&5
$as_echo_n "checking absolute name of <stdio.h>... " >&6; }
if test "${gl_cv_next_stdio_h+set}" = set; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
_ACEOF
case "$host_os" in
aix*) gl_absname_cpp="$ac_cpp -C" ;;
*) gl_absname_cpp="$ac_cpp" ;;
esac
gl_cv_next_stdio_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 |
sed -n '\#/stdio.h#{
s#.*"\(.*/stdio.h\)".*#\1#
s#^/[^/]#//&#
p
q
}'`'"'
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdio_h" >&5
$as_echo "$gl_cv_next_stdio_h" >&6; }
fi
NEXT_STDIO_H=$gl_cv_next_stdio_h
if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then
# INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next'
gl_next_as_first_directive='<'stdio.h'>'
else
# INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include'
gl_next_as_first_directive=$gl_cv_next_stdio_h
fi
NEXT_AS_FIRST_DIRECTIVE_STDIO_H=$gl_next_as_first_directive
GNULIB_FPRINTF=1
GNULIB_PRINTF=1
GNULIB_VFPRINTF=1
GNULIB_VPRINTF=1
GNULIB_FPUTC=1
GNULIB_PUTC=1
GNULIB_PUTCHAR=1
GNULIB_FPUTS=1
GNULIB_PUTS=1
GNULIB_FWRITE=1
# Code from module stdlib:

View file

@ -8,12 +8,18 @@
## regenerate configure and will fail if you do not have the required
## tools. You will have to run this script again.
test -d autogen && cd autogen
if test ! -e config.in; then
echo "You must run this script from the autogen/ directory."
echo "Cannot find autogen/ directory."
exit 1
fi
cp configure aclocal.m4 ../
## Order implied by top-level Makefile's rules, for time-stamps.
cp compile config.guess config.sub depcomp install-sh missing ../
cp aclocal.m4 ../
cp configure ../
touch ../src/stamp-h.in
cp config.in ../src/
cp Makefile.in ../lib/

View file

@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2011-01-19.21; # UTC
scriptversion=2009-04-28.21; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@ -156,10 +156,6 @@ while test $# -ne 0; do
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
# Protect names problematic for `test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) no_target_directory=true;;
@ -190,10 +186,6 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
fi
shift # arg
dst_arg=$arg
# Protect names problematic for `test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
@ -208,11 +200,7 @@ if test $# -eq 0; then
fi
if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
trap "ret=141; $do_exit" 13
trap "ret=143; $do_exit" 15
trap '(exit $?); exit' 1 2 13 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
@ -240,9 +228,9 @@ fi
for src
do
# Protect names problematic for `test' and other utilities.
# Protect names starting with `-'.
case $src in
-* | [=\(\)!]) src=./$src;;
-*) src=./$src;;
esac
if test -n "$dir_arg"; then
@ -264,7 +252,12 @@ do
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# Protect names starting with `-'.
case $dst in
-*) dst=./$dst;;
esac
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
@ -392,7 +385,7 @@ do
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
-*) prefix='./';;
*) prefix='';;
esac
@ -410,7 +403,7 @@ do
for d
do
test X"$d" = X && continue
test -z "$d" && continue
prefix=$prefix$d
if test -d "$prefix"; then

View file

@ -28,7 +28,7 @@
### Code:
function die () # write error to stderr and exit
die () # write error to stderr and exit
{
[ $# -gt 0 ] && echo "$PN: $@" >&2
exit 1
@ -45,7 +45,7 @@ cd ../
[ -d autogen ] || die "Could not locate autogen directory"
function usage ()
usage ()
{
cat 1>&2 <<EOF
Usage: ${PN} [-f] [-c] [-q]
@ -68,7 +68,7 @@ quiet=
## Parameters.
sources="configure.in lib/Makefile.am"
genfiles="configure aclocal.m4 src/config.in lib/Makefile.in"
genfiles="configure aclocal.m4 src/config.in lib/Makefile.in compile config.guess config.sub depcomp install-sh missing"
for g in $genfiles; do
basegen="$basegen ${g##*/}"
@ -104,14 +104,10 @@ OPTIND=1
[ $# -eq 0 ] || die "Wrong number of arguments"
function msg ()
{
[ "$quiet" ] && return 0
echo "$@"
} # function msg
[ "$quiet" ] && exec 1> /dev/null
msg "Running bzr status..."
echo "Running bzr status..."
bzr status -S $sources >| $tempfile || die "bzr status error for sources"
@ -119,7 +115,7 @@ while read stat file; do
case $stat in
M)
msg "Locally modified: $file"
echo "Locally modified: $file"
[ "$force" ] || die "There are local modifications"
;;
@ -128,9 +124,20 @@ while read stat file; do
done < $tempfile
msg "Running autoreconf..."
echo "Running autoreconf..."
autoreconf -I m4 || die "autoreconf error"
autoreconf -f -i -I m4 2>| $tempfile
retval=$?
## Annoyingly, autoreconf puts the "installing `./foo' messages on stderr.
if [ "$quiet" ]; then
grep -v 'installing `\.' $tempfile 1>&2
else
cat "$tempfile" 1>&2
fi
[ $retval -ne 0 ] && die "autoreconf error"
cp $genfiles autogen/
@ -138,6 +145,7 @@ cp $genfiles autogen/
cd autogen
echo "Checking status of generated files..."
bzr status -S $basegen >| $tempfile || \
die "bzr status error for generated files"
@ -155,28 +163,25 @@ done < $tempfile
[ "$modified" ] || {
msg "No files were modified"
echo "No files were modified"
exit 0
}
msg "Modified file(s): $modified"
echo "Modified file(s): $modified"
[ "$commit" ] || exit 0
msg "Committing..."
echo "Committing..."
## bzr status output is annoyingly always relative to top-level, not PWD.
cd ../
opt=
[ "$quiet" ] || opt=-q
bzr commit $opt -m "Auto-commit of generated files." $modified || \
bzr commit -m "Auto-commit of generated files." $modified || \
die "bzr commit error"
msg "Committed files: $modified"
echo "Committed files: $modified"
exit

View file

@ -156,9 +156,9 @@ rm -f epaths.tmp
rem Create "config.h"
rm -f config.h2 config.tmp
sed -e '' config.in > config.tmp
sed -e '' ../autogen/config.in > config.tmp
if "%X11%" == "" goto src4
sed -f ../msdos/sed2x.inp <config.in >config.tmp
sed -f ../msdos/sed2x.inp < ..\autogen\config.in > config.tmp
:src4
sed -f ../msdos/sed2v2.inp <config.tmp >config.h2
Rem See if DECL_ALIGN can be supported with this GCC
@ -283,11 +283,12 @@ If Exist getopt.in.h update getopt.in.h getopt.in-h
If Exist stdbool.in.h update stdbool.in.h stdbool.in-h
If Exist stddef.in.h update stddef.in.h stddef.in-h
If Exist stdint.in.h update stdint.in.h stdint.in-h
If Exist stdio.in.h update stdio.in.h stdio.in-h
If Exist stdlib.in.h update stdlib.in.h stdlib.in-h
If Exist sys_stat.in.h update sys_stat.in.h sys_stat.in-h
If Exist time.in.h update time.in.h time.in-h
If Exist unistd.in.h update unistd.in.h unistd.in-h
sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp
sed -f ../msdos/sedlibcf.inp < ..\autogen\Makefile.in > makefile.tmp
sed -f ../msdos/sedlibmk.inp < makefile.tmp > Makefile
rm -f makefile.tmp
Rem Create .Po files for new files in lib/

View file

@ -664,11 +664,11 @@ if test x"$GCC" != xyes && test x"$emacs_check_sunpro_c" = xyes && \
test x"$CPP" = x; then
AC_MSG_CHECKING([whether we are using a Sun C compiler])
AC_CACHE_VAL(emacs_cv_sunpro_c,
[AC_TRY_LINK([],
[#ifndef __SUNPRO_C
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],
[[#ifndef __SUNPRO_C
fail;
#endif
], emacs_cv_sunpro_c=yes, emacs_cv_sunpro_c=no)])
]])], emacs_cv_sunpro_c=yes, emacs_cv_sunpro_c=no)])
AC_MSG_RESULT($emacs_cv_sunpro_c)
if test x"$emacs_cv_sunpro_c" = xyes; then
@ -703,7 +703,7 @@ fi
AC_MSG_CHECKING([whether gcc understands -Wdeclaration-after-statement])
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wdeclaration-after-statement"
AC_TRY_COMPILE([], [], has_option=yes, has_option=no,)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], has_option=yes, has_option=no)
if test $has_option = yes; then
C_WARNINGS_SWITCH="-Wdeclaration-after-statement $C_WARNINGS_SWITCH"
fi
@ -717,7 +717,7 @@ unset SAVE_CFLAGS
AC_MSG_CHECKING([whether gcc understands -Wold-style-definition])
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wold-style-definition"
AC_TRY_COMPILE([], [], has_option=yes, has_option=no,)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], has_option=yes, has_option=no)
if test $has_option = yes; then
C_WARNINGS_SWITCH="-Wold-style-definition $C_WARNINGS_SWITCH"
fi
@ -730,7 +730,7 @@ unset SAVE_CFLAGS
AC_MSG_CHECKING([whether gcc understands -Wimplicit-function-declaration])
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wimplicit-function-declaration"
AC_TRY_COMPILE([], [], has_option=yes, has_option=no,)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], has_option=yes, has_option=no)
if test $has_option = yes; then
C_WARNINGS_SWITCH="-Wimplicit-function-declaration $C_WARNINGS_SWITCH"
fi
@ -1137,12 +1137,12 @@ if test "${with_sound}" != "no"; then
SAVE_LDFLAGS="$LDFLAGS"
CFLAGS="$ALSA_CFLAGS $CFLAGS"
LDFLAGS="$ALSA_LIBS $LDFLAGS"
AC_TRY_COMPILE([#include <asoundlib.h>], [snd_lib_error_set_handler (0);],
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <asoundlib.h>]], [[snd_lib_error_set_handler (0);]])],
emacs_alsa_normal=yes,
emacs_alsa_normal=no)
if test "$emacs_alsa_normal" != yes; then
AC_TRY_COMPILE([#include <alsa/asoundlib.h>],
[snd_lib_error_set_handler (0);],
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <alsa/asoundlib.h>]],
[[snd_lib_error_set_handler (0);]])],
emacs_alsa_subdir=yes,
emacs_alsa_subdir=no)
if test "$emacs_alsa_subdir" != yes; then
@ -1181,7 +1181,7 @@ AC_CHECK_HEADERS(sys/select.h sys/time.h unistd.h utime.h \
sys/utsname.h pwd.h utmp.h dirent.h util.h)
AC_MSG_CHECKING(if personality LINUX32 can be set)
AC_TRY_COMPILE([#include <sys/personality.h>], [personality (PER_LINUX32)],
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/personality.h>]], [[personality (PER_LINUX32)]])],
emacs_cv_personality_linux32=yes,
emacs_cv_personality_linux32=no)
AC_MSG_RESULT($emacs_cv_personality_linux32)
@ -1209,7 +1209,7 @@ AC_HEADER_SYS_WAIT
dnl Some systems have utime.h but don't declare the struct anyplace.
AC_CACHE_CHECK(for struct utimbuf, emacs_cv_struct_utimbuf,
AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef TIME_WITH_SYS_TIME
#include <sys/time.h>
#include <time.h>
#else
@ -1221,18 +1221,15 @@ AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
#endif
#ifdef HAVE_UTIME_H
#include <utime.h>
#endif], [static struct utimbuf x; x.actime = x.modtime;],
#endif]], [[static struct utimbuf x; x.actime = x.modtime;]])],
emacs_cv_struct_utimbuf=yes, emacs_cv_struct_utimbuf=no))
if test $emacs_cv_struct_utimbuf = yes; then
AC_DEFINE(HAVE_STRUCT_UTIMBUF, 1, [Define to 1 if `struct utimbuf' is declared by <utime.h>.])
fi
dnl checks for typedefs
AC_TYPE_SIGNAL
dnl Check for speed_t typedef.
AC_CACHE_CHECK(for speed_t, emacs_cv_speed_t,
[AC_TRY_COMPILE([#include <termios.h>], [speed_t x = 1;],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <termios.h>]], [[speed_t x = 1;]])],
emacs_cv_speed_t=yes, emacs_cv_speed_t=no)])
if test $emacs_cv_speed_t = yes; then
AC_DEFINE(HAVE_SPEED_T, 1,
@ -1240,7 +1237,7 @@ if test $emacs_cv_speed_t = yes; then
fi
AC_CACHE_CHECK(for struct timeval, emacs_cv_struct_timeval,
AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef TIME_WITH_SYS_TIME
#include <sys/time.h>
#include <time.h>
#else
@ -1249,7 +1246,7 @@ AC_TRY_COMPILE([#ifdef TIME_WITH_SYS_TIME
#else
#include <time.h>
#endif
#endif], [static struct timeval x; x.tv_sec = x.tv_usec;],
#endif]], [[static struct timeval x; x.tv_sec = x.tv_usec;]])],
emacs_cv_struct_timeval=yes, emacs_cv_struct_timeval=no))
HAVE_TIMEVAL=$emacs_cv_struct_timeval
if test $emacs_cv_struct_timeval = yes; then
@ -1257,15 +1254,14 @@ if test $emacs_cv_struct_timeval = yes; then
fi
AC_CACHE_CHECK(for struct exception, emacs_cv_struct_exception,
AC_TRY_COMPILE([#include <math.h>],
[static struct exception x; x.arg1 = x.arg2 = x.retval; x.name = ""; x.type = 1;],
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <math.h>]],
[[static struct exception x; x.arg1 = x.arg2 = x.retval; x.name = ""; x.type = 1;]])],
emacs_cv_struct_exception=yes, emacs_cv_struct_exception=no))
HAVE_EXCEPTION=$emacs_cv_struct_exception
if test $emacs_cv_struct_exception != yes; then
AC_DEFINE(NO_MATHERR, 1, [Define to 1 if you don't have struct exception in math.h.])
fi
AC_CHECK_HEADERS(sys/socket.h)
AC_CHECK_HEADERS(net/if.h, , , [AC_INCLUDES_DEFAULT
#if HAVE_SYS_SOCKET_H
#include <sys/socket.h>
@ -1302,7 +1298,7 @@ dnl This isn't useful because we can't turn on use of `inline' unless
dnl the compiler groks `extern inline'.
dnl AC_C_INLINE
AC_CACHE_CHECK([for void * support], emacs_cv_void_star,
[AC_TRY_COMPILE(, [void * foo;],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[void * foo;]])],
emacs_cv_void_star=yes, emacs_cv_void_star=no)])
if test $emacs_cv_void_star = yes; then
AC_DEFINE(POINTER_TYPE, void)
@ -1350,7 +1346,7 @@ if test "$GCC" = yes && test "$ac_enable_autodepend" = yes; then
AC_MSG_CHECKING([whether gcc understands -MMD -MF])
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -MMD -MF deps.d"
AC_TRY_COMPILE([], [], , ac_enable_autodepend=no)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], , ac_enable_autodepend=no)
CFLAGS="$SAVE_CFLAGS"
test -f deps.d || ac_enable_autodepend=no
rm -rf deps.d
@ -1360,7 +1356,7 @@ if test "$GCC" = yes && test "$ac_enable_autodepend" = yes; then
DEPFLAGS='-MMD -MF ${DEPDIR}/$*.d'
## In parallel builds, another make might create depdir between
## the first test and mkdir, so stick another test on the end.
## Or use mkinstalldirs? mkdir -p is not portable.
## Or use install-sh -d? mkdir -p is not portable.
MKDEPDIR='test -d ${DEPDIR} || mkdir ${DEPDIR} || test -d ${DEPDIR}'
deps_frag=autodeps.mk
fi
@ -1583,7 +1579,7 @@ AC_CHECK_FUNC(malloc_get_state, ,doug_lea_malloc=no)
AC_CHECK_FUNC(malloc_set_state, ,doug_lea_malloc=no)
AC_CACHE_CHECK(whether __after_morecore_hook exists,
emacs_cv_var___after_morecore_hook,
[AC_TRY_LINK([extern void (* __after_morecore_hook)();],[__after_morecore_hook = 0],
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern void (* __after_morecore_hook)();]],[[__after_morecore_hook = 0]])],
emacs_cv_var___after_morecore_hook=yes,
emacs_cv_var___after_morecore_hook=no)])
if test $emacs_cv_var___after_morecore_hook = no; then
@ -1681,7 +1677,7 @@ aix*)
esac
LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc
AC_TRY_LINK([], [int i;], [], [gdb_cv_bigtoc=])
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int i;]])], [], [gdb_cv_bigtoc=])
])
;;
esac
@ -1711,8 +1707,8 @@ if test "${HAVE_X11}" = "yes"; then
if test "${opsys}" = "gnu-linux"; then
AC_MSG_CHECKING(whether X on GNU/Linux needs -b to link)
AC_TRY_LINK([],
[XOpenDisplay ("foo");],
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],
[[XOpenDisplay ("foo");]])],
[xlinux_first_failure=no],
[xlinux_first_failure=yes])
if test "${xlinux_first_failure}" = "yes"; then
@ -1724,8 +1720,8 @@ if test "${HAVE_X11}" = "yes"; then
C_SWITCH_X_SITE="$C_SWITCH_X_SITE -b i486-linuxaout"
CPPFLAGS="$CPPFLAGS -b i486-linuxaout"
LIBS="$LIBS -b i486-linuxaout"
AC_TRY_LINK([],
[XOpenDisplay ("foo");],
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],
[[XOpenDisplay ("foo");]])],
[xlinux_second_failure=no],
[xlinux_second_failure=yes])
if test "${xlinux_second_failure}" = "yes"; then
@ -1747,9 +1743,9 @@ if test "${HAVE_X11}" = "yes"; then
# Reportedly, some broken Solaris systems have XKBlib.h but are missing
# header files included from there.
AC_MSG_CHECKING(for Xkb)
AC_TRY_LINK([#include <X11/Xlib.h>
#include <X11/XKBlib.h>],
[XkbDescPtr kb = XkbGetKeyboard (0, XkbAllComponentsMask, XkbUseCoreKbd);],
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>
#include <X11/XKBlib.h>]],
[[XkbDescPtr kb = XkbGetKeyboard (0, XkbAllComponentsMask, XkbUseCoreKbd);]])],
emacs_xkb=yes, emacs_xkb=no)
AC_MSG_RESULT($emacs_xkb)
if test $emacs_xkb = yes; then
@ -1763,11 +1759,11 @@ fi
if test "${window_system}" = "x11"; then
AC_MSG_CHECKING(X11 version 6)
AC_CACHE_VAL(emacs_cv_x11_version_6,
[AC_TRY_LINK([#include <X11/Xlib.h>],
[#if XlibSpecificationRelease < 6
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]],
[[#if XlibSpecificationRelease < 6
fail;
#endif
], emacs_cv_x11_version_6=yes, emacs_cv_x11_version_6=no)])
]])], emacs_cv_x11_version_6=yes, emacs_cv_x11_version_6=no)])
if test $emacs_cv_x11_version_6 = yes; then
AC_MSG_RESULT(6 or newer)
AC_DEFINE(HAVE_X11R6, 1,
@ -1990,10 +1986,10 @@ if test x"${USE_X_TOOLKIT}" = xmaybe || test x"${USE_X_TOOLKIT}" = xLUCID; then
if test "$with_xaw3d" != no; then
AC_MSG_CHECKING(for xaw3d)
AC_CACHE_VAL(emacs_cv_xaw3d,
[AC_TRY_LINK([
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <X11/Intrinsic.h>
#include <X11/Xaw3d/Simple.h>],
[],
#include <X11/Xaw3d/Simple.h>]],
[[]])],
[AC_CHECK_LIB(Xaw3d, XawScrollbarSetThumb,
emacs_cv_xaw3d=yes, emacs_cv_xaw3d=no)],
emacs_cv_xaw3d=no)])
@ -2011,10 +2007,10 @@ if test x"${USE_X_TOOLKIT}" = xmaybe || test x"${USE_X_TOOLKIT}" = xLUCID; then
AC_MSG_RESULT(no)
AC_MSG_CHECKING(for libXaw)
AC_CACHE_VAL(emacs_cv_xaw,
[AC_TRY_LINK([
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <X11/Intrinsic.h>
#include <X11/Xaw/Simple.h>],
[],
#include <X11/Xaw/Simple.h>]],
[[]])],
emacs_cv_xaw=yes,
emacs_cv_xaw=no)])
if test $emacs_cv_xaw = yes; then
@ -2036,11 +2032,11 @@ LIBXTR6=
if test "${USE_X_TOOLKIT}" != "none"; then
AC_MSG_CHECKING(X11 toolkit version)
AC_CACHE_VAL(emacs_cv_x11_toolkit_version_6,
[AC_TRY_LINK([#include <X11/Intrinsic.h>],
[#if XtSpecificationRelease < 6
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <X11/Intrinsic.h>]],
[[#if XtSpecificationRelease < 6
fail;
#endif
], emacs_cv_x11_toolkit_version_6=yes, emacs_cv_x11_toolkit_version_6=no)])
]])], emacs_cv_x11_toolkit_version_6=yes, emacs_cv_x11_toolkit_version_6=no)])
HAVE_X11XTR6=$emacs_cv_x11_toolkit_version_6
if test $emacs_cv_x11_toolkit_version_6 = yes; then
AC_MSG_RESULT(6 or newer)
@ -2089,12 +2085,12 @@ fi
LIBXP=
if test "${USE_X_TOOLKIT}" = "MOTIF"; then
AC_CACHE_CHECK(for Motif version 2.1, emacs_cv_motif_version_2_1,
[AC_TRY_COMPILE([#include <Xm/Xm.h>],
[#if XmVERSION > 2 || (XmVERSION == 2 && XmREVISION >= 1)
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <Xm/Xm.h>]],
[[#if XmVERSION > 2 || (XmVERSION == 2 && XmREVISION >= 1)
int x = 5;
#else
Motif version prior to 2.1.
#endif],
#endif]])],
emacs_cv_motif_version_2_1=yes, emacs_cv_motif_version_2_1=no)])
if test $emacs_cv_motif_version_2_1 = yes; then
AC_CHECK_LIB(Xp, XpCreateContext, LIBXP=-lXp)
@ -2107,8 +2103,8 @@ Motif version prior to 2.1.
OLD_CFLAGS=$CFLAGS
CPPFLAGS="-I/usr/X11R6/LessTif/Motif1.2/include $CPPFLAGS"
CFLAGS="-I/usr/X11R6/LessTif/Motif1.2/include $CFLAGS"
[AC_TRY_COMPILE([#include </usr/X11R6/LessTif/Motif1.2/include/Xm/Xm.h>],
[int x = 5;],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include </usr/X11R6/LessTif/Motif1.2/include/Xm/Xm.h>]],
[[int x = 5;]])],
emacs_cv_lesstif=yes, emacs_cv_lesstif=no)])
if test $emacs_cv_lesstif = yes; then
# Make sure this -I option remains in CPPFLAGS after it is set
@ -2152,10 +2148,10 @@ if test "${with_toolkit_scroll_bars}" != "no"; then
fi
dnl See if XIM is available.
AC_TRY_COMPILE([
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include <X11/Xlib.h>
#include <X11/Xresource.h>],
[XIMProc callback;],
#include <X11/Xresource.h>]],
[[XIMProc callback;]])],
[HAVE_XIM=yes
AC_DEFINE(HAVE_XIM, 1, [Define to 1 if XIM is available])],
HAVE_XIM=no)
@ -2173,10 +2169,10 @@ if test "${HAVE_XIM}" != "no"; then
if test "$GCC" = yes; then
CFLAGS="$CFLAGS --pedantic-errors"
fi
AC_TRY_COMPILE([
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include <X11/Xlib.h>
#include <X11/Xresource.h>],
[Display *display;
#include <X11/Xresource.h>]],
[[Display *display;
XrmDatabase db;
char *res_name;
char *res_class;
@ -2189,7 +2185,7 @@ extern Bool XRegisterIMInstantiateCallback(Display*, XrmDatabase, char*,
char*, XIMProc, XPointer*);
#endif
(void)XRegisterIMInstantiateCallback(display, db, res_name, res_class, callback,
client_data);],
client_data);]])],
[emacs_cv_arg6_star=yes])
AH_TEMPLATE(XRegisterIMInstantiateCallback_arg6,
[Define to the type of the 6th arg of XRegisterIMInstantiateCallback,
@ -2541,8 +2537,8 @@ AC_SUBST(LIBXML2_CFLAGS)
# If netdb.h doesn't declare h_errno, we must declare it by hand.
AC_CACHE_CHECK(whether netdb declares h_errno,
emacs_cv_netdb_declares_h_errno,
[AC_TRY_LINK([#include <netdb.h>],
[return h_errno;],
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netdb.h>]],
[[return h_errno;]])],
emacs_cv_netdb_declares_h_errno=yes, emacs_cv_netdb_declares_h_errno=no)])
if test $emacs_cv_netdb_declares_h_errno = yes; then
AC_DEFINE(HAVE_H_ERRNO, 1, [Define to 1 if netdb.h declares h_errno.])
@ -2723,11 +2719,11 @@ case "$opsys" in
freebsd)
AC_MSG_CHECKING([whether FreeBSD is new enough to use terminfo])
AC_CACHE_VAL(emacs_cv_freebsd_terminfo,
[AC_TRY_LINK([#include <osreldate.h>],
[#if __FreeBSD_version < 400000
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <osreldate.h>]],
[[#if __FreeBSD_version < 400000
fail;
#endif
], emacs_cv_freebsd_terminfo=yes, emacs_cv_freebsd_terminfo=no)])
]])], emacs_cv_freebsd_terminfo=yes, emacs_cv_freebsd_terminfo=no)])
AC_MSG_RESULT($emacs_cv_freebsd_terminfo)
@ -2777,19 +2773,19 @@ AC_SUBST(TERMCAP_OBJ)
# Do we have res_init, for detecting changes in /etc/resolv.conf?
resolv=no
AC_TRY_LINK([#include <netinet/in.h>
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netinet/in.h>
#include <arpa/nameser.h>
#include <resolv.h>],
[return res_init();],
#include <resolv.h>]],
[[return res_init();]])],
have_res_init=yes, have_res_init=no)
if test "$have_res_init" = no; then
OLIBS="$LIBS"
LIBS="$LIBS -lresolv"
AC_MSG_CHECKING(for res_init with -lresolv)
AC_TRY_LINK([#include <netinet/in.h>
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <netinet/in.h>
#include <arpa/nameser.h>
#include <resolv.h>],
[return res_init();],
#include <resolv.h>]],
[[return res_init();]])],
have_res_init=yes, have_res_init=no)
AC_MSG_RESULT($have_res_init)
if test "$have_res_init" = yes ; then
@ -2925,7 +2921,7 @@ AC_CHECK_LIB(intl, dgettext)
AC_MSG_CHECKING(whether localtime caches TZ)
AC_CACHE_VAL(emacs_cv_localtime_cache,
[if test x$ac_cv_func_tzset = xyes; then
AC_TRY_RUN([#include <time.h>
AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <time.h>
char TZ_GMT0[] = "TZ=GMT0";
char TZ_PST8[] = "TZ=PST8";
main()
@ -2945,7 +2941,7 @@ main()
if (localtime (&now)->tm_hour != hour_unset)
exit (1);
exit (0);
}], emacs_cv_localtime_cache=no, emacs_cv_localtime_cache=yes,
}]])], emacs_cv_localtime_cache=no, emacs_cv_localtime_cache=yes,
[# If we have tzset, assume the worst when cross-compiling.
emacs_cv_localtime_cache=yes])
else
@ -2964,7 +2960,7 @@ if test "x$HAVE_TIMEVAL" = xyes; then
if test $ac_cv_func_gettimeofday = yes; then
AC_CACHE_CHECK(whether gettimeofday can accept two arguments,
emacs_cv_gettimeofday_two_arguments,
[AC_TRY_COMPILE([
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#ifdef TIME_WITH_SYS_TIME
#include <sys/time.h>
#include <time.h>
@ -2974,9 +2970,9 @@ if test "x$HAVE_TIMEVAL" = xyes; then
#else
#include <time.h>
#endif
#endif],
[struct timeval time;
gettimeofday (&time, 0);],
#endif]],
[[struct timeval time;
gettimeofday (&time, 0);]])],
emacs_cv_gettimeofday_two_arguments=yes,
emacs_cv_gettimeofday_two_arguments=no)])
if test $emacs_cv_gettimeofday_two_arguments = no; then
@ -3017,8 +3013,8 @@ AC_FUNC_FORK
dnl Adapted from Haible's version.
AC_CACHE_CHECK([for nl_langinfo and CODESET], emacs_cv_langinfo_codeset,
[AC_TRY_LINK([#include <langinfo.h>],
[char* cs = nl_langinfo(CODESET);],
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]],
[[char* cs = nl_langinfo(CODESET);]])],
emacs_cv_langinfo_codeset=yes,
emacs_cv_langinfo_codeset=no)
])
@ -3032,7 +3028,7 @@ AC_CHECK_TYPES(size_t)
AC_TYPE_MBSTATE_T
AC_CACHE_CHECK([for C restricted array declarations], emacs_cv_c_restrict_arr,
[AC_TRY_COMPILE([void fred (int x[__restrict]);], [],
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[void fred (int x[__restrict]);]], [[]])],
emacs_cv_c_restrict_arr=yes, emacs_cv_c_restrict_arr=no)])
if test "$emacs_cv_c_restrict_arr" = yes; then
AC_DEFINE(__restrict_arr, __restrict,
@ -3494,11 +3490,6 @@ AH_BOTTOM([
# define SYSTEM_PURESIZE_EXTRA 30000
#endif
/* SIGTYPE is the macro we actually use. */
#ifndef SIGTYPE
#define SIGTYPE RETSIGTYPE
#endif
#ifdef emacs /* Don't do this for lib-src. */
/* Tell regex.c to use a type compatible with Emacs. */
#define RE_TRANSLATE_TYPE Lisp_Object

View file

@ -111,7 +111,7 @@ EMACSSOURCES= \
## This seems pointless. The info/ directory exists in both the
## repository and the release tarfiles. We do not use any
## equivalent of mkdir -p/mkinstalldirs, so this is not a general
## equivalent of mkdir -p/install-sh -d, so this is not a general
## solution anyway. The second test -d is for parallel builds.
mkinfodir = @test -d ${infodir} || mkdir ${infodir} || test -d ${infodir}

View file

@ -1,3 +1,8 @@
2011-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
* commands.texi (Command Overview): post-command-hook is not reset to
nil any more.
2011-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
* strings.texi (String Conversion): Don't mention

View file

@ -91,8 +91,9 @@ and also when the command loop is first entered. At that time,
Quitting is suppressed while running @code{pre-command-hook} and
@code{post-command-hook}. If an error happens while executing one of
these hooks, it terminates execution of the hook, and clears the hook
variable to @code{nil} so as to prevent an infinite loop of errors.
these hooks, it does not terminate execution of the hook; instead
the error is silenced and the function in which the error occurred
is removed from the hook.
A request coming into the Emacs server (@pxref{Emacs Server,,,
emacs, The GNU Emacs Manual}) runs these two hooks just as a keyboard

View file

@ -1,3 +1,7 @@
2011-03-19 Antoine Levitt <antoine.levitt@gmail.com>
* gnus.texi (Listing Groups): Document gnus-group-list-ticked
2011-03-17 Jay Belanger <jay.p.belanger@gmail.com>
* calc.texi (Logarithmic Units): Update the function names.

View file

@ -3320,6 +3320,11 @@ List all groups with cached articles (@code{gnus-group-list-cached}).
@findex gnus-group-list-dormant
List all groups with dormant articles (@code{gnus-group-list-dormant}).
@item A !
@kindex A ! (Group)
@findex gnus-group-list-ticked
List all groups with ticked articles (@code{gnus-group-list-ticked}).
@item A /
@kindex A / (Group)
@findex gnus-group-list-limit

View file

@ -1,3 +1,7 @@
2011-03-22 Sebastian Hermida <sebas00@gmail.com>
* themes/misterioso-theme.el: New file.
2011-03-16 Juanma Barranquero <lekktu@gmail.com>
* NEWS: Document warning about _emacs.

View file

@ -162,6 +162,9 @@ cannot be encoded by the `terminal-coding-system'.
** On graphical displays, the mode-line no longer ends in dashes.
** On Nextstep/OSX, the menu bar can be hidden by customizing
ns-auto-hide-menu-bar.
** Basic SELinux support has been added.
This requires Emacs to be linked with libselinux at build time.
@ -745,7 +748,13 @@ sc.el, x-menu.el, rnews.el, rnewspost.el
* Lisp changes in Emacs 24.1
** pre/post-command-hook are not reset to nil upon error.
Instead, the offending function is removed.
** New low-level function run-hook-wrapped.
** byte-compile-disable-print-circle is obsolete.
** deferred-action-list and deferred-action-function are obsolete.
** Removed the stack-trace-on-error variable.
Also the debugger can now "continue" from an error, which means it will jump
to the error handler as if the debugger had not been invoked instead of

View file

@ -0,0 +1,110 @@
;;; misterioso-theme.el --- Custom face theme for Emacs
;; Copyright (C) 2011 Free Software Foundation, Inc.
;; Author: Sebastian Hermida
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Code:
(deftheme misterioso
"Theme for faces, using light colors on a dark gray background.")
(let ((class '((class color) (min-colors 89))))
(custom-theme-set-faces
'misterioso
;; Ensure sufficient contrast on 256-color xterms.
`(default ((((class color) (min-colors 4096))
(:background "#2d3743" :foreground "#e1e1e0"))
(,class
(:background "#3a3a3a" :foreground "#e1e1e0"))))
`(cursor ((,class (:background "#415160" :foreground "#415160"))))
;; Highlighting faces
`(fringe ((,class (:background "#2e3748"))))
`(highlight ((,class (:background "#338f86" :foreground "#e1e1e0"))))
`(region ((,class (:background "#2d4948" :foreground "#e1e1e0"))))
`(isearch ((,class (:background "#fcffad" :foreground "#000000"))))
`(lazy-highlight ((,class (:background "#338f86"))))
`(trailing-whitespace ((,class (:background "#ff4242"))))
;; Mode line faces
`(mode-line ((,class (:background "#212931" :foreground "#eeeeec"))))
`(mode-line-inactive
((,class (:background "#878787" :foreground "#eeeeec"))))
`(header-line ((,class (:background "#e5e5e5" :foreground "#333333"))))
;; Escape and prompt faces
`(minibuffer-prompt ((,class (:foreground "#729fcf" :weight bold))))
;; Font lock faces
`(font-lock-builtin-face ((,class (:foreground "#23d7d7"))))
`(font-lock-comment-face ((,class (:foreground "#74af68"))))
`(font-lock-constant-face ((,class (:foreground "#008b8b"))))
`(font-lock-function-name-face
((,class (:foreground "#00ede1" :weight bold))))
`(font-lock-keyword-face ((,class (:foreground "#ffad29" :weight bold))))
`(font-lock-string-face ((,class (:foreground "#e67128"))))
`(font-lock-type-face ((,class (:foreground "#34cae2"))))
`(font-lock-variable-name-face ((,class (:foreground "#dbdb95"))))
`(font-lock-warning-face ((,class (:foreground "#ff4242" :weight bold))))
;; Buttons and links
`(button ((,class (:underline t))))
`(link ((,class (:foreground "#59e9ff" :underline t))))
`(link-visited ((,class (:foreground "#ed74cd" :underline t))))
;; Gnus faces
`(gnus-group-news-1 ((,class (:foreground "#ff4242" :weight bold))))
`(gnus-group-news-1-low ((,class (:foreground "#ff4242"))))
`(gnus-group-news-2 ((,class (:foreground "#00ede1" :weight bold))))
`(gnus-group-news-2-low ((,class (:foreground "#00ede1"))))
`(gnus-group-news-3 ((,class (:foreground "#23d7d7" :weight bold))))
`(gnus-group-news-3-low ((,class (:foreground "#23d7d7"))))
`(gnus-group-news-4 ((,class (:foreground "#74af68" :weight bold))))
`(gnus-group-news-4-low ((,class (:foreground "#74af68"))))
`(gnus-group-news-5 ((,class (:foreground "#dbdb95" :weight bold))))
`(gnus-group-news-5-low ((,class (:foreground "#dbdb95"))))
`(gnus-group-news-low ((,class (:foreground "#008b8b"))))
`(gnus-group-mail-1 ((,class (:foreground "#ff4242" :weight bold))))
`(gnus-group-mail-1-low ((,class (:foreground "#ff4242"))))
`(gnus-group-mail-2 ((,class (:foreground "#00ede1" :weight bold))))
`(gnus-group-mail-2-low ((,class (:foreground "#00ede1"))))
`(gnus-group-mail-3 ((,class (:foreground "#23d7d7" :weight bold))))
`(gnus-group-mail-3-low ((,class (:foreground "#23d7d7"))))
`(gnus-group-mail-low ((,class (:foreground "#008b8b"))))
`(gnus-header-content ((,class (:weight normal :foreground "#ffad29"))))
`(gnus-header-from ((,class (:foreground "#e67128" :weight bold))))
`(gnus-header-subject ((,class (:foreground "#dbdb95"))))
`(gnus-header-name ((,class (:foreground "#00ede1"))))
`(gnus-header-newsgroups ((,class (:foreground "#e67128"))))
;; Message faces
`(message-header-name ((,class (:foreground "#ffad29" :weight bold))))
`(message-header-cc ((,class (:foreground "#e67128"))))
`(message-header-other ((,class (:foreground "#e67128"))))
`(message-header-subject ((,class (:foreground "#dbdb95"))))
`(message-header-to ((,class (:foreground "#00ede1"))))
`(message-cited-text ((,class (:foreground "#74af68"))))
`(message-separator ((,class (:foreground "#23d7d7"))))))
(custom-theme-set-variables
'misterioso
'(ansi-color-names-vector ["#2d3743" "#ff4242" "#74af68" "#dbdb95"
"#34cae2" "#008b8b" "#00ede1" "#e1e1e0"]))
(provide-theme 'misterioso)
;; Local Variables:
;; no-byte-compile: t
;; End:
;;; misterioso-theme.el ends here

View file

@ -1,3 +1,7 @@
2011-03-23 Glenn Morris <rgm@gnu.org>
* Makefile.in (install): Use `install-sh -d' rather than mkinstalldirs.
2011-02-28 Juanma Barranquero <lekktu@gmail.com>
* quail/ethiopic.el ("ethiopic"): Fix tpo in docstring.

View file

@ -220,7 +220,7 @@ MV_DIRS = for i in $$dir; do rm -fr `basename "$$i"` ; mv "$$i" . ; done
install: all
if [ ! -d ${INSTALLDIR} ] ; then \
umask 022; ${srcdir}/../mkinstalldirs ${INSTALLDIR}; \
umask 022; ${srcdir}/../install-sh -d ${INSTALLDIR}; \
else true; fi
if [ x`(cd ${INSTALLDIR} && /bin/pwd)` != x`(/bin/pwd)` ] ; then \
rm -f ${INSTALLDIR}/leim-list.el; \

View file

@ -1,3 +1,51 @@
2011-03-30 Paul Eggert <eggert@cs.ucla.edu>
Fix a problem found by GCC 4.6.0's static checks.
* etags.c (just_read_file): Remove dummy variable and simplify.
2011-03-27 Glenn Morris <rgm@gnu.org>
* emacsclient.c: Replace SIGTYPE with void.
2011-03-23 Juanma Barranquero <lekktu@gmail.com>
* ntlib.c: Include <ctype.h>.
2011-03-23 Glenn Morris <rgm@gnu.org>
* Makefile.in ($(DESTDIR)${archlibdir}):
Use `install-sh -d' rather than mkinstalldirs.
2011-03-23 Paul Eggert <eggert@cs.ucla.edu>
* ebrowse.c: Use size_t, not int, for sizes.
This avoids a warning with gcc -Wstrict-overflow, and works
better for very large objects.
(inbuffer_size): Now size_t. All uses changed.
(xmalloc, xrealloc, operator_name, process_file): Use size_t for
sizes. Don't bother testing whether a size_t value can be negative.
* etags.c (Ada_funcs): Redo slightly to avoid overflow warning.
etags: In Prolog functions, don't assume int fits in size_t.
This avoids a warning with gcc -Wstrict-overflow.
* etags.c (Prolog_functions, prolog_pr, prolog_atom): Use size_t,
not int, to store sizes.
(prolog_atom): Return 0, not -1, on error. All callers changed.
update-game-score: fix bug with -r
* update-game-score.c (main): Don't set 'scores' to garbage when
-r is specified and scorecount != MAX_SCORES (Bug#8310). This bug
was introduced in the 2002-04-10 change, and was found with gcc
-Wstrict-overflow (GCC 4.5.2, x86-64).
fakemail: Remove dependency on ignore-value.
This undoes some of the recent fakemail-related changes.
It is made possible due to recent changes to gnulib's stdio module.
* Makefile.in (fakemail${EXEEXT}): Do not depend on ignore-value.h.
* fakemail.c: Do not include ignore-value.h.
(put_line): Do not use ignore_value.
2011-03-03 Drake Wilson <drake@begriffli.ch> (tiny change)
* emacsclient.c (longopts): Add quiet.

View file

@ -235,13 +235,13 @@ maybe-blessmail: $(BLESSMAIL_TARGET)
$(DESTDIR)${archlibdir}: all
@echo
@echo "Installing utilities run internally by Emacs."
umask 022; $(top_srcdir)/mkinstalldirs $(DESTDIR)${archlibdir}
umask 022; $(top_srcdir)/install-sh -d $(DESTDIR)${archlibdir}
if [ `(cd $(DESTDIR)${archlibdir} && /bin/pwd)` != `/bin/pwd` ]; then \
for file in ${UTILITIES}; do \
$(INSTALL_PROGRAM) $(INSTALL_STRIP) $$file $(DESTDIR)${archlibdir}/$$file ; \
done ; \
fi
umask 022; $(top_srcdir)/mkinstalldirs $(DESTDIR)${gamedir}; \
umask 022; $(top_srcdir)/install-sh -d $(DESTDIR)${gamedir}; \
touch $(DESTDIR)${gamedir}/snake-scores; \
touch $(DESTDIR)${gamedir}/tetris-scores
-if chown ${gameuser} $(DESTDIR)${archlibdir}/update-game-score && chmod u+s $(DESTDIR)${archlibdir}/update-game-score; then \
@ -353,7 +353,7 @@ movemail.o: ${srcdir}/movemail.c ../src/config.h
pop.o: ${srcdir}/pop.c ${srcdir}/../lib/min-max.h ../src/config.h
$(CC) -c ${CPP_CFLAGS} ${MOVE_FLAGS} ${srcdir}/pop.c
fakemail${EXEEXT}: ${srcdir}/fakemail.c ${srcdir}/../lib/ignore-value.h ../src/config.h
fakemail${EXEEXT}: ${srcdir}/fakemail.c ../src/config.h
$(CC) ${ALL_CFLAGS} ${srcdir}/fakemail.c $(LOADLIBES) -o fakemail
emacsclient${EXEEXT}: ${srcdir}/emacsclient.c ../src/config.h

View file

@ -378,7 +378,7 @@ int max_regexp = 50;
char *inbuffer;
char *in;
int inbuffer_size;
size_t inbuffer_size;
/* Return the current buffer position in the input file. */
@ -492,7 +492,7 @@ yyerror (const char *format, const char *s)
available. */
static void *
xmalloc (int nbytes)
xmalloc (size_t nbytes)
{
void *p = malloc (nbytes);
if (p == NULL)
@ -507,7 +507,7 @@ xmalloc (int nbytes)
/* Like realloc but print an error and exit if out of memory. */
static void *
xrealloc (void *p, int sz)
xrealloc (void *p, size_t sz)
{
p = realloc (p, sz);
if (p == NULL)
@ -2792,10 +2792,10 @@ parse_classname (void)
static char *
operator_name (int *sc)
{
static int id_size = 0;
static size_t id_size = 0;
static char *id = NULL;
const char *s;
int len;
size_t len;
MATCH ();
@ -2811,7 +2811,7 @@ operator_name (int *sc)
len = strlen (s) + 10;
if (len > id_size)
{
int new_size = max (len, 2 * id_size);
size_t new_size = max (len, 2 * id_size);
id = (char *) xrealloc (id, new_size);
id_size = new_size;
}
@ -2832,7 +2832,7 @@ operator_name (int *sc)
}
else
{
int tokens_matched = 0;
size_t tokens_matched = 0;
len = 20;
if (len > id_size)
@ -2853,7 +2853,7 @@ operator_name (int *sc)
len += strlen (s) + 2;
if (len > id_size)
{
int new_size = max (len, 2 * id_size);
size_t new_size = max (len, 2 * id_size);
id = (char *) xrealloc (id, new_size);
id_size = new_size;
}
@ -3550,7 +3550,7 @@ process_file (char *file)
fp = open_file (file);
if (fp)
{
int nread, nbytes;
size_t nread, nbytes;
/* Give a progress indication if needed. */
if (f_very_verbose)
@ -3574,12 +3574,10 @@ process_file (char *file)
}
nbytes = fread (inbuffer + nread, 1, READ_CHUNK_SIZE, fp);
if (nbytes <= 0)
if (nbytes == 0)
break;
nread += nbytes;
}
if (nread < 0)
nread = 0;
inbuffer[nread] = '\0';
/* Reinitialize scanner and parser for the new input file. */

View file

@ -1116,7 +1116,7 @@ socket_status (char *name)
/* A signal handler that passes the signal to the Emacs process.
Useful for SIGWINCH. */
static SIGTYPE
static void
pass_signal_to_emacs (int signalnum)
{
int old_errno = errno;
@ -1131,7 +1131,7 @@ pass_signal_to_emacs (int signalnum)
/* Signal handler for SIGCONT; notify the Emacs process that it can
now resume our tty frame. */
static SIGTYPE
static void
handle_sigcont (int signalnum)
{
int old_errno = errno;
@ -1157,7 +1157,7 @@ handle_sigcont (int signalnum)
reality, we may get a SIGTSTP on C-z. Handling this signal and
notifying Emacs about it should get things under control again. */
static SIGTYPE
static void
handle_sigtstp (int signalnum)
{
int old_errno = errno;

View file

@ -3978,10 +3978,8 @@ Yacc_entries (FILE *inf)
static void
just_read_file (FILE *inf)
{
register char *dummy;
LOOP_ON_INPUT_LINES (inf, lb, dummy)
continue;
while (!feof (inf))
readline (&lb, inf);
}
@ -4198,7 +4196,7 @@ Ada_funcs (FILE *inf)
/* Skip a string i.e. "abcd". */
if (inquote || (*dbp == '"'))
{
dbp = etags_strchr ((inquote) ? dbp : dbp+1, '"');
dbp = etags_strchr (dbp + !inquote, '"');
if (dbp != NULL)
{
inquote = FALSE;
@ -5254,16 +5252,16 @@ HTML_labels (FILE *inf)
* Original code by Sunichirou Sugou (1989)
* Rewritten by Anders Lindgren (1996)
*/
static int prolog_pr (char *, char *);
static size_t prolog_pr (char *, char *);
static void prolog_skip_comment (linebuffer *, FILE *);
static int prolog_atom (char *, int);
static size_t prolog_atom (char *, size_t);
static void
Prolog_functions (FILE *inf)
{
char *cp, *last;
int len;
int allocated;
size_t len;
size_t allocated;
allocated = 0;
len = 0;
@ -5320,16 +5318,16 @@ prolog_skip_comment (linebuffer *plb, FILE *inf)
* Return the size of the name of the predicate or rule, or 0 if no
* header was found.
*/
static int
static size_t
prolog_pr (char *s, char *last)
/* Name of last clause. */
{
int pos;
int len;
size_t pos;
size_t len;
pos = prolog_atom (s, 0);
if (pos < 1)
if (! pos)
return 0;
len = pos;
@ -5339,7 +5337,7 @@ prolog_pr (char *s, char *last)
|| (s[pos] == '(' && (pos += 1))
|| (s[pos] == ':' && s[pos + 1] == '-' && (pos += 2)))
&& (last == NULL /* save only the first clause */
|| len != (int)strlen (last)
|| len != strlen (last)
|| !strneq (s, last, len)))
{
make_tag (s, len, TRUE, s, pos, lineno, linecharno);
@ -5351,17 +5349,17 @@ prolog_pr (char *s, char *last)
/*
* Consume a Prolog atom.
* Return the number of bytes consumed, or -1 if there was an error.
* Return the number of bytes consumed, or 0 if there was an error.
*
* A prolog atom, in this context, could be one of:
* - An alphanumeric sequence, starting with a lower case letter.
* - A quoted arbitrary string. Single quotes can escape themselves.
* Backslash quotes everything.
*/
static int
prolog_atom (char *s, int pos)
static size_t
prolog_atom (char *s, size_t pos)
{
int origpos;
size_t origpos;
origpos = pos;
@ -5390,11 +5388,11 @@ prolog_atom (char *s, int pos)
}
else if (s[pos] == '\0')
/* Multiline quoted atoms are ignored. */
return -1;
return 0;
else if (s[pos] == '\\')
{
if (s[pos+1] == '\0')
return -1;
return 0;
pos += 2;
}
else
@ -5403,7 +5401,7 @@ prolog_atom (char *s, int pos)
return pos - origpos;
}
else
return -1;
return 0;
}

View file

@ -62,8 +62,6 @@ main ()
/* This is to declare cuserid. */
#include <unistd.h>
#include <ignore-value.h>
/* Type definitions */
@ -500,7 +498,7 @@ put_line (const char *string)
}
}
/* Output that much, then break the line. */
ignore_value (fwrite (s, 1, breakpos - s, rem->handle));
fwrite (s, 1, breakpos - s, rem->handle);
column = 8;
/* Skip whitespace and prepare to print more addresses. */

View file

@ -28,6 +28,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
#include <ctype.h>
#include "ntlib.h"

View file

@ -242,13 +242,15 @@ main (int argc, char **argv)
push_score (&scores, &scorecount, newscore, user_id, newdata);
sort_scores (scores, scorecount, reverse);
/* Limit the number of scores. If we're using reverse sorting, then
we should increment the beginning of the array, to skip over the
*smallest* scores. Otherwise, we just decrement the number of
scores, since the smallest will be at the end. */
also increment the beginning of the array, to skip over the
*smallest* scores. Otherwise, just decrementing the number of
scores suffices, since the smallest is at the end. */
if (scorecount > MAX_SCORES)
scorecount -= (scorecount - MAX_SCORES);
if (reverse)
scores += (scorecount - MAX_SCORES);
{
if (reverse)
scores += (scorecount - MAX_SCORES);
scorecount = MAX_SCORES;
}
if (write_scores (scorefile, scores, scorecount) < 0)
{
unlock_file (scorefile, lockstate);

View file

@ -9,7 +9,7 @@
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=. --makefile-name=gnulib.mk --no-libtool --macro-prefix=gl --no-vc-files crypto/md5 dtoastr filemode getloadavg getopt-gnu ignore-value intprops lstat mktime readlink strftime symlink sys_stat
# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=. --makefile-name=gnulib.mk --no-libtool --macro-prefix=gl --no-vc-files crypto/md5 dtoastr filemode getloadavg getopt-gnu ignore-value intprops lstat mktime readlink socklen stdio strftime symlink sys_stat
MOSTLYCLEANFILES += core *.stackdump
@ -280,6 +280,117 @@ EXTRA_DIST += stdint.in.h
## end gnulib module stdint
## begin gnulib module stdio
BUILT_SOURCES += stdio.h
# We need the following in order to create <stdio.h> when the system
# doesn't have one that works with the given compiler.
stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
$(AM_V_GEN)rm -f $@-t $@ && \
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \
sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
-e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
-e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
-e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \
-e 's|@''GNULIB_DPRINTF''@|$(GNULIB_DPRINTF)|g' \
-e 's|@''GNULIB_FCLOSE''@|$(GNULIB_FCLOSE)|g' \
-e 's|@''GNULIB_FFLUSH''@|$(GNULIB_FFLUSH)|g' \
-e 's|@''GNULIB_FOPEN''@|$(GNULIB_FOPEN)|g' \
-e 's|@''GNULIB_FPRINTF''@|$(GNULIB_FPRINTF)|g' \
-e 's|@''GNULIB_FPRINTF_POSIX''@|$(GNULIB_FPRINTF_POSIX)|g' \
-e 's|@''GNULIB_FPURGE''@|$(GNULIB_FPURGE)|g' \
-e 's|@''GNULIB_FPUTC''@|$(GNULIB_FPUTC)|g' \
-e 's|@''GNULIB_FPUTS''@|$(GNULIB_FPUTS)|g' \
-e 's|@''GNULIB_FREOPEN''@|$(GNULIB_FREOPEN)|g' \
-e 's|@''GNULIB_FSEEK''@|$(GNULIB_FSEEK)|g' \
-e 's|@''GNULIB_FSEEKO''@|$(GNULIB_FSEEKO)|g' \
-e 's|@''GNULIB_FTELL''@|$(GNULIB_FTELL)|g' \
-e 's|@''GNULIB_FTELLO''@|$(GNULIB_FTELLO)|g' \
-e 's|@''GNULIB_FWRITE''@|$(GNULIB_FWRITE)|g' \
-e 's|@''GNULIB_GETDELIM''@|$(GNULIB_GETDELIM)|g' \
-e 's|@''GNULIB_GETLINE''@|$(GNULIB_GETLINE)|g' \
-e 's|@''GNULIB_OBSTACK_PRINTF''@|$(GNULIB_OBSTACK_PRINTF)|g' \
-e 's|@''GNULIB_OBSTACK_PRINTF_POSIX''@|$(GNULIB_OBSTACK_PRINTF_POSIX)|g' \
-e 's|@''GNULIB_PERROR''@|$(GNULIB_PERROR)|g' \
-e 's|@''GNULIB_POPEN''@|$(GNULIB_POPEN)|g' \
-e 's|@''GNULIB_PRINTF''@|$(GNULIB_PRINTF)|g' \
-e 's|@''GNULIB_PRINTF_POSIX''@|$(GNULIB_PRINTF_POSIX)|g' \
-e 's|@''GNULIB_PUTC''@|$(GNULIB_PUTC)|g' \
-e 's|@''GNULIB_PUTCHAR''@|$(GNULIB_PUTCHAR)|g' \
-e 's|@''GNULIB_PUTS''@|$(GNULIB_PUTS)|g' \
-e 's|@''GNULIB_REMOVE''@|$(GNULIB_REMOVE)|g' \
-e 's|@''GNULIB_RENAME''@|$(GNULIB_RENAME)|g' \
-e 's|@''GNULIB_RENAMEAT''@|$(GNULIB_RENAMEAT)|g' \
-e 's|@''GNULIB_SNPRINTF''@|$(GNULIB_SNPRINTF)|g' \
-e 's|@''GNULIB_SPRINTF_POSIX''@|$(GNULIB_SPRINTF_POSIX)|g' \
-e 's|@''GNULIB_STDIO_H_SIGPIPE''@|$(GNULIB_STDIO_H_SIGPIPE)|g' \
-e 's|@''GNULIB_TMPFILE''@|$(GNULIB_TMPFILE)|g' \
-e 's|@''GNULIB_VASPRINTF''@|$(GNULIB_VASPRINTF)|g' \
-e 's|@''GNULIB_VDPRINTF''@|$(GNULIB_VDPRINTF)|g' \
-e 's|@''GNULIB_VFPRINTF''@|$(GNULIB_VFPRINTF)|g' \
-e 's|@''GNULIB_VFPRINTF_POSIX''@|$(GNULIB_VFPRINTF_POSIX)|g' \
-e 's|@''GNULIB_VPRINTF''@|$(GNULIB_VPRINTF)|g' \
-e 's|@''GNULIB_VPRINTF_POSIX''@|$(GNULIB_VPRINTF_POSIX)|g' \
-e 's|@''GNULIB_VSNPRINTF''@|$(GNULIB_VSNPRINTF)|g' \
-e 's|@''GNULIB_VSPRINTF_POSIX''@|$(GNULIB_VSPRINTF_POSIX)|g' \
< $(srcdir)/stdio.in.h | \
sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
-e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \
-e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \
-e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \
-e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \
-e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \
-e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \
-e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \
-e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \
-e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \
-e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \
-e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \
-e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \
-e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \
-e 's|@''REPLACE_DPRINTF''@|$(REPLACE_DPRINTF)|g' \
-e 's|@''REPLACE_FCLOSE''@|$(REPLACE_FCLOSE)|g' \
-e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \
-e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \
-e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \
-e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \
-e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \
-e 's|@''REPLACE_FSEEK''@|$(REPLACE_FSEEK)|g' \
-e 's|@''REPLACE_FSEEKO''@|$(REPLACE_FSEEKO)|g' \
-e 's|@''REPLACE_FTELL''@|$(REPLACE_FTELL)|g' \
-e 's|@''REPLACE_FTELLO''@|$(REPLACE_FTELLO)|g' \
-e 's|@''REPLACE_GETDELIM''@|$(REPLACE_GETDELIM)|g' \
-e 's|@''REPLACE_GETLINE''@|$(REPLACE_GETLINE)|g' \
-e 's|@''REPLACE_OBSTACK_PRINTF''@|$(REPLACE_OBSTACK_PRINTF)|g' \
-e 's|@''REPLACE_PERROR''@|$(REPLACE_PERROR)|g' \
-e 's|@''REPLACE_POPEN''@|$(REPLACE_POPEN)|g' \
-e 's|@''REPLACE_PRINTF''@|$(REPLACE_PRINTF)|g' \
-e 's|@''REPLACE_REMOVE''@|$(REPLACE_REMOVE)|g' \
-e 's|@''REPLACE_RENAME''@|$(REPLACE_RENAME)|g' \
-e 's|@''REPLACE_RENAMEAT''@|$(REPLACE_RENAMEAT)|g' \
-e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \
-e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \
-e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \
-e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \
-e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \
-e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \
-e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \
-e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \
-e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \
-e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \
-e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
-e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
-e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
} > $@-t && \
mv $@-t $@
MOSTLYCLEANFILES += stdio.h stdio.h-t
EXTRA_DIST += stdio.in.h
## end gnulib module stdio
## begin gnulib module stdlib
BUILT_SOURCES += stdlib.h

1119
lib/stdio.in.h Normal file

File diff suppressed because it is too large Load diff

View file

@ -172,15 +172,16 @@ extern char *tzname[];
#define add(n, f) \
do \
{ \
int _n = (n); \
int _delta = width - _n; \
int _incr = _n + (_delta > 0 ? _delta : 0); \
if ((size_t) _incr >= maxsize - i) \
size_t _n = (n); \
size_t _w = (width < 0 ? 0 : width); \
size_t _incr = _n < _w ? _w : _n; \
if (_incr >= maxsize - i) \
return 0; \
if (p) \
{ \
if (digits == 0 && _delta > 0) \
if (digits == 0 && _n < _w) \
{ \
size_t _delta = width - _n; \
if (pad == L_('0')) \
memset_zero (p, _delta); \
else \

View file

@ -1,3 +1,154 @@
2011-03-30 Leo Liu <sdl.web@gmail.com>
* abbrev.el (abbrev-edit-save-to-file, abbrev-edit-save-buffer):
New commands.
(edit-abbrevs-map): Bind them here.
(write-abbrev-file): New optinal arg VERBOSE. (Bug#5937)
2011-03-29 Ken Manheimer <ken.manheimer@gmail.com>
* allout.el (allout-hide-by-annotation, allout-flag-region):
Reduce possibility of overlay leakage by making them volatile.
* allout-widgets.el (allout-widgets-tally): Define as nil so the
hash is not shared between buffers. Mode initialization is
responsible for giving it a useful starting value.
(allout-item-span): Reduce possibility of overlay leakage by
making them volatile.
(allout-widgets-count-buttons-in-region): Add diagnostic function
for tracking down button overlay leaks.
2011-03-29 Leo Liu <sdl.web@gmail.com>
* ido.el (ido-read-internal): Use the default history var
minibuffer-history if no HISTORY is specified.
2011-03-28 Brian T. Sniffen <bsniffen@akamai.com> (tiny change)
* net/imap.el (imap-shell-open, imap-process-connection-type): Use
imap-process-connection-type for 'shell' streams as well as
Kerberos, SSL, other subprocesses.
2011-03-28 Leo Liu <sdl.web@gmail.com>
* abbrev.el (abbrev-table-empty-p): New function.
(prepare-abbrev-list-buffer): Place empty abbrev tables after
nonempty ones. (Bug#5937)
2011-03-27 Jan Djärv <jan.h.d@swipnet.se>
* cus-start.el (all): Add boolean ns-auto-hide-menu-bar.
2011-03-27 Leo Liu <sdl.web@gmail.com>
* ansi-color.el (ansi-color-names-vector): Allow cons cell value
for foreground and background colors.
(ansi-color-make-color-map): Adapt.
2011-03-25 Leo Liu <sdl.web@gmail.com>
* midnight.el (midnight-time-float): Remove. Note it calculates
the microsecond component incorrectly and seconds-to-time does the
same job.
Remove redundant (require 'timer).
* ido.el (ido-read-internal): Simplify with read-from-minibuffer.
(ido-completions): Remove unused arguments. (Bug#8329)
2011-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
* minibuffer.el (completion--flush-all-sorted-completions):
Remove itself from hook.
(completion-at-point): Let the functions perform the completion
immediately and return nil or t.
* comint.el (comint-dynamic-complete-functions): Now identical to
completion-at-point-functions.
(comint-dynamic-list-input-ring): Remove unused var `index'.
(comint--match-partial-filename, comint--unquote&expand-filename):
New funs, split from comint-match-partial-filename.
(comint-dynamic-complete): Use completion-at-point.
(comint-dynamic-complete-filename): Use comint--match-partial-filename.
2011-03-24 Drew Adams <drew.adams@oracle.com>
* thingatpt.el: Support `defun'.
2011-03-23 Leo Liu <sdl.web@gmail.com>
* abbrevlist.el: Move to obsolete/abbrevlist.el.
* help-mode.el (help-mode-finish): Tweak regexp.
2011-03-23 Glenn Morris <rgm@gnu.org>
* eshell/esh-opt.el (eshell-eval-using-options):
Do not bind unused local variable `eshell-option-stub'.
* progmodes/gdb-mi.el (gdb): Fix typo in previous change.
2011-03-22 Juanma Barranquero <lekktu@gmail.com>
* emacs-lisp/derived.el (define-derived-mode): Wrap declaration of
keymap variable in `with-no-warnings' to avoid a warning when the
keymap has been already `defconst'ed.
2011-03-22 Leo Liu <sdl.web@gmail.com>
* abbrev.el (write-abbrev-file): Use utf-8 for writing if it can
encode all chars in abbrevs; otherwise use emacs-mule or
utf-8-emacs. (Bug#8308)
2011-03-22 Juanma Barranquero <lekktu@gmail.com>
* simple.el (backward-delete-char-untabify):
Avoid warning about using `delete-backward-char'.
* image.el (image-type-file-name-regexps): Make it variable.
`imagemagick-register-types' modifies it, and the user may want
to add new extensions for known image types.
(imagemagick-register-types): Throw error if not using ImageMagick.
2011-03-22 Leo Liu <sdl.web@gmail.com>
* net/rcirc.el (rcirc-completion-at-point): Return nil if point is
located before rcirc-prompt-end-marker.
(rcirc-complete): Error if point is not after rcirc prompt.
Handle the case when table is nil.
(rcirc-user-authenticated): Define to fix compiler warning.
2011-03-22 Chong Yidong <cyd@stupidchicken.com>
* custom.el (custom--inhibit-theme-enable): Make it affect only
custom-theme-set-variables and custom-theme-set-faces.
(provide-theme): Ignore custom--inhibit-theme-enable.
(load-theme): Enable the theme explicitly if NO-ENABLE is non-nil.
(custom-enabling-themes): Delete variable.
(enable-theme): Accept only loaded themes as arguments.
Ignore the special custom-enabled-themes variable.
(custom-enabled-themes): Forbid themes from setting this.
Eliminate use of custom-enabling-themes.
(custom-push-theme): Quote "changed" custom var entry.
2011-03-21 Leo Liu <sdl.web@gmail.com>
* ido.el (ido-read-internal): Add ido-selected to history instead
of user input.
2011-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
* subr.el (deferred-action-list, deferred-action-function):
Mark obsolete.
2011-03-21 Leo Liu <sdl.web@gmail.com>
* vc/log-view.el: Remove (require 'wid-edit), not needed after the
change on 2011-02-13 (bug#8309).
* minibuffer.el (read-file-name-function): Change default value.
(read-file-name--defaults): Rename from read-file-name-defaults.
(read-file-name-default): Rename from read-file-name.
(read-file-name): Call read-file-name-function.
2011-03-21 Glenn Morris <rgm@gnu.org>
* eshell/esh-opt.el (eshell-eval-using-options, eshell-process-args):
@ -310,8 +461,8 @@
2011-03-09 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Do
not use `tramp-file-name-port', because this returns also
* net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
Do not use `tramp-file-name-port', because this returns also
`tramp-default-port'.
2011-03-09 Deniz Dogan <deniz.a.m.dogan@gmail.com>
@ -340,8 +491,8 @@
* emacs-lisp/package.el (package-tar-file-info): Handle also
remote files.
* emacs-lisp/package-x.el (package-upload-buffer-internal): Use
`equal' for upload base check.
* emacs-lisp/package-x.el (package-upload-buffer-internal):
Use `equal' for upload base check.
2011-03-08 Arni Magnusson <arnima@hafro.is> (tiny change)
@ -670,9 +821,9 @@
2011-03-03 Christian Ohler <ohler@gnu.org>
* emacs-lisp/ert.el (ert--explain-equal): New function.
(ert--explain-equal-rec): Renamed from `ert--explain-not-equal'.
(ert--explain-equal-rec): Rename from `ert--explain-not-equal'.
All callers changed.
(ert--explain-equal-including-properties): Renamed from
(ert--explain-equal-including-properties): Rename from
`ert--explain-not-equal-including-properties'. All callers
changed.
@ -8195,8 +8346,8 @@
Sync with Tramp 2.1.19.
* net/tramp-gvfs.el (tramp-gvfs-handle-write-region): Protect
deleting tmpfile.
* net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
Protect deleting tmpfile.
(tramp-gvfs-maybe-open-connection): Use `tramp-compat-funcall'.
* net/tramp.el (tramp-handle-expand-file-name)
@ -10474,8 +10625,8 @@
* net/tramp-ftp.el (tramp-ftp-file-name-handler):
Use `delete-file' instead of `tramp-compat-delete-file'.
* net/tramp-gvfs.el (tramp-gvfs-handle-write-region): Use
`delete-file' instead of `tramp-compat-delete-file'.
* net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
Use `delete-file' instead of `tramp-compat-delete-file'.
* net/tramp-imap.el (tramp-imap-do-copy-or-rename-file):
Use `delete-file' instead of `tramp-compat-delete-file'.

View file

@ -65,7 +65,8 @@ abbreviation causes it to expand and be replaced by its expansion."
(defvar edit-abbrevs-map
(let ((map (make-sparse-keymap)))
(define-key map "\C-x\C-s" 'edit-abbrevs-redefine)
(define-key map "\C-x\C-s" 'abbrev-edit-save-buffer)
(define-key map "\C-x\C-w" 'abbrev-edit-save-to-file)
(define-key map "\C-c\C-c" 'edit-abbrevs-redefine)
map)
"Keymap used in `edit-abbrevs'.")
@ -123,8 +124,13 @@ Otherwise display all abbrevs."
(if local
(insert-abbrev-table-description
(abbrev-table-name local-table) t)
(dolist (table abbrev-table-name-list)
(insert-abbrev-table-description table t)))
(let (empty-tables)
(dolist (table abbrev-table-name-list)
(if (abbrev-table-empty-p (symbol-value table))
(push table empty-tables)
(insert-abbrev-table-description table t)))
(dolist (table (nreverse empty-tables))
(insert-abbrev-table-description table t))))
(goto-char (point-min))
(set-buffer-modified-p nil)
(edit-abbrevs-mode)
@ -211,13 +217,15 @@ Does not display any message."
;(interactive "fRead abbrev file: ")
(read-abbrev-file file t))
(defun write-abbrev-file (&optional file)
(defun write-abbrev-file (&optional file verbose)
"Write all user-level abbrev definitions to a file of Lisp code.
This does not include system abbrevs; it includes only the abbrev tables
listed in listed in `abbrev-table-name-list'.
The file written can be loaded in another session to define the same abbrevs.
The argument FILE is the file name to write. If omitted or nil, the file
specified in `abbrev-file-name' is used."
specified in `abbrev-file-name' is used.
If VERBOSE is non-nil, display a message indicating where abbrevs
have been saved."
(interactive
(list
(read-file-name "Write abbrev file: "
@ -225,21 +233,47 @@ specified in `abbrev-file-name' is used."
abbrev-file-name)))
(or (and file (> (length file) 0))
(setq file abbrev-file-name))
(let ((coding-system-for-write 'emacs-mule))
(with-temp-file file
(insert ";;-*-coding: emacs-mule;-*-\n")
(let ((coding-system-for-write 'utf-8))
(with-temp-buffer
(dolist (table
;; We sort the table in order to ease the automatic
;; merging of different versions of the user's abbrevs
;; file. This is useful, for example, for when the
;; user keeps their home directory in a revision
;; control system, and is therefore keeping multiple
;; slightly-differing copies loosely synchronized.
(sort (copy-sequence abbrev-table-name-list)
(lambda (s1 s2)
(string< (symbol-name s1)
(symbol-name s2)))))
(insert-abbrev-table-description table nil)))))
;; We sort the table in order to ease the automatic
;; merging of different versions of the user's abbrevs
;; file. This is useful, for example, for when the
;; user keeps their home directory in a revision
;; control system, and is therefore keeping multiple
;; slightly-differing copies loosely synchronized.
(sort (copy-sequence abbrev-table-name-list)
(lambda (s1 s2)
(string< (symbol-name s1)
(symbol-name s2)))))
(insert-abbrev-table-description table nil))
(when (unencodable-char-position (point-min) (point-max) 'utf-8)
(setq coding-system-for-write
(if (> emacs-major-version 24)
'utf-8-emacs
;; For compatibility with Emacs 22 (See Bug#8308)
'emacs-mule)))
(goto-char (point-min))
(insert (format ";;-*-coding: %s;-*-\n" coding-system-for-write))
(write-region nil nil file nil (and (not verbose) 0)))))
(defun abbrev-edit-save-to-file (file)
"Save all user-level abbrev definitions in current buffer to FILE."
(interactive
(list (read-file-name "Save abbrevs to file: "
(file-name-directory
(expand-file-name abbrev-file-name))
abbrev-file-name)))
(edit-abbrevs-redefine)
(write-abbrev-file file t))
(defun abbrev-edit-save-buffer ()
"Save all user-level abbrev definitions in current buffer.
The saved abbrevs are written to the file specified by
`abbrev-file-name'."
(interactive)
(abbrev-edit-save-to-file abbrev-file-name))
(defun add-mode-abbrev (arg)
"Define mode-specific abbrev for last word(s) before point.
@ -412,6 +446,19 @@ PROPS is a list of properties."
(and (vectorp object)
(numberp (abbrev-table-get object :abbrev-table-modiff))))
(defun abbrev-table-empty-p (object &optional ignore-system)
"Return nil if there are no abbrev symbols in OBJECT.
If IGNORE-SYSTEM is non-nil, system definitions are ignored."
(unless (abbrev-table-p object)
(error "Non abbrev table object"))
(not (catch 'some
(mapatoms (lambda (abbrev)
(unless (or (zerop (length (symbol-name abbrev)))
(and ignore-system
(abbrev-get abbrev :system)))
(throw 'some t)))
object))))
(defvar global-abbrev-table (make-abbrev-table)
"The abbrev table whose abbrevs affect all buffers.
Each buffer may also have a local abbrev table.

View file

@ -238,7 +238,7 @@ buffer, and tracking increases as new widgets are added and
decreases as obsolete widgets are garbage collected."
:type 'boolean
:group 'allout-widgets-developer)
(defvar allout-widgets-tally (make-hash-table :test 'eq :weakness 'key)
(defvar allout-widgets-tally nil
"Hash-table of existing allout widgets, for debugging.
Table is maintained iff `allout-widgets-maintain-tally' is non-nil.
@ -2100,6 +2100,7 @@ previously established or is not moved."
(cond ((not overlay) (when start
(setq overlay (make-overlay start end nil t nil))
(overlay-put overlay 'button item-widget)
(overlay-put overlay 'evaporate t)
(widget-put item-widget :span-overlay overlay)
t))
;; report:
@ -2343,6 +2344,19 @@ The elements of LIST are not copied, just the list structure itself."
(while (consp list) (push (pop list) res))
(prog1 (nreverse res) (setcdr res list)))
(car list)))
;;;_ . allout-widgets-count-buttons-in-region (start end)
(defun allout-widgets-count-buttons-in-region (start end)
"Debugging/diagnostic tool - count overlays with 'button' property in region."
(interactive "r")
(setq start (or start (point-min))
end (or end (point-max)))
(if (> start end) (let ((interim start)) (setq start end end interim)))
(let ((button-overlays (delq nil
(mapcar (function (lambda (o)
(if (overlay-get o 'button)
o)))
(overlays-in start end)))))
(length button-overlays)))
;;;_ : Run unit tests:
(defun allout-widgets-run-unit-tests ()

View file

@ -4489,8 +4489,9 @@ Topic exposure is marked with text-properties, to be used by
;; advance to just after end of this annotation:
(setq next (allout-next-single-char-property-change
(point) 'allout-was-hidden nil end))
(overlay-put (make-overlay prev next nil 'front-advance)
'category 'allout-exposure-category)
(let ((o (make-overlay prev next nil 'front-advance)))
(overlay-put o 'category 'allout-exposure-category)
(overlay-put o 'evaporate t))
(allout-deannotate-hidden prev next)
(setq prev next)
(if next (goto-char next)))))

View file

@ -132,8 +132,18 @@ Parameter Color
37 47 white
This vector is used by `ansi-color-make-color-map' to create a color
map. This color map is stored in the variable `ansi-color-map'."
:type '(vector string string string string string string string string)
map. This color map is stored in the variable `ansi-color-map'.
Each element may also be a cons cell where the car and cdr specify the
foreground and background colors, respectively."
:type '(vector (choice color (cons color color))
(choice color (cons color color))
(choice color (cons color color))
(choice color (cons color color))
(choice color (cons color color))
(choice color (cons color color))
(choice color (cons color color))
(choice color (cons color color)))
:set 'ansi-color-map-update
:initialize 'custom-initialize-default
:group 'ansi-colors)
@ -528,7 +538,8 @@ The face definitions are based upon the variables
(mapc
(function (lambda (e)
(aset ansi-color-map index
(ansi-color-make-face 'foreground e))
(ansi-color-make-face 'foreground
(if (consp e) (car e) e)))
(setq index (1+ index)) ))
ansi-color-names-vector)
;; background attributes
@ -536,7 +547,8 @@ The face definitions are based upon the variables
(mapc
(function (lambda (e)
(aset ansi-color-map index
(ansi-color-make-face 'background e))
(ansi-color-make-face 'background
(if (consp e) (cdr e) e)))
(setq index (1+ index)) ))
ansi-color-names-vector)
ansi-color-map))

View file

@ -368,7 +368,7 @@ text matching `comint-prompt-regexp', depending on the value of
(defvar comint-dynamic-complete-functions
'(comint-replace-by-expanded-history comint-dynamic-complete-filename)
"List of functions called to perform completion.
Functions should return non-nil if completion was performed.
Works like `completion-at-point-functions'.
See also `comint-dynamic-complete'.
This is a good thing to set in mode hooks.")
@ -1008,7 +1008,6 @@ See also `comint-read-input-ring'."
(message "No history")
(let ((history nil)
(history-buffer " *Input History*")
(index (1- (ring-length comint-input-ring)))
(conf (current-window-configuration)))
;; We have to build up a list ourselves from the ring vector.
(dotimes (index (ring-length comint-input-ring))
@ -2946,13 +2945,22 @@ interpreter (e.g., the percent notation of cmd.exe on NT)."
(setq name (replace-match env-var-val t t name))))))
name))
(defun comint-match-partial-filename ()
"Return the filename at point, or nil if none is found.
Environment variables are substituted. See `comint-word'."
(let ((filename (comint-word comint-file-name-chars)))
(and filename (comint-substitute-in-file-name
(comint-unquote-filename filename)))))
(defun comint--match-partial-filename ()
"Return the filename at point as-is, or nil if none is found.
See `comint-word'."
(comint-word comint-file-name-chars))
(defun comint--unquote&expand-filename (filename)
;; FIXME: The code below does unquote-then-expand which means that "\\$HOME"
;; gets expanded to the same as "$HOME"
(comint-substitute-in-file-name
(comint-unquote-filename filename)))
(defun comint-match-partial-filename ()
"Return the unquoted&expanded filename at point, or nil if none is found.
Environment variables are substituted. See `comint-word'."
(let ((filename (comint--match-partial-filename)))
(and filename (comint--unquote&expand-filename filename))))
(defun comint-quote-filename (filename)
"Return FILENAME with magic characters quoted.
@ -2987,13 +2995,13 @@ Calls the functions in `comint-dynamic-complete-functions' to perform
completion until a function returns non-nil, at which point completion is
assumed to have occurred."
(interactive)
(run-hook-with-args-until-success 'comint-dynamic-complete-functions))
(let ((completion-at-point-functions comint-dynamic-complete-functions))
(completion-at-point)))
(defun comint-dynamic-complete-filename ()
"Dynamically complete the filename at point.
Completes if after a filename. See `comint-match-partial-filename' and
`comint-dynamic-complete-as-filename'.
Completes if after a filename.
This function is similar to `comint-replace-by-expanded-filename', except that
it won't change parts of the filename already entered in the buffer; it just
adds completion characters to the end of the filename. A completions listing
@ -3005,7 +3013,7 @@ completions listing is dependent on the value of `comint-completion-autolist'.
Returns t if successful."
(interactive)
(when (comint-match-partial-filename)
(when (comint--match-partial-filename)
(unless (window-minibuffer-p (selected-window))
(message "Completing file name..."))
(comint-dynamic-complete-as-filename)))
@ -3021,18 +3029,12 @@ See `comint-dynamic-complete-filename'. Returns t if successful."
;;(file-name-handler-alist nil)
(minibuffer-p (window-minibuffer-p (selected-window)))
(success t)
(dirsuffix (cond ((not comint-completion-addsuffix)
"")
((not (consp comint-completion-addsuffix))
"/")
(t
(car comint-completion-addsuffix))))
(filesuffix (cond ((not comint-completion-addsuffix)
"")
((not (consp comint-completion-addsuffix))
" ")
(t
(cdr comint-completion-addsuffix))))
(dirsuffix (cond ((not comint-completion-addsuffix) "")
((not (consp comint-completion-addsuffix)) "/")
(t (car comint-completion-addsuffix))))
(filesuffix (cond ((not comint-completion-addsuffix) "")
((not (consp comint-completion-addsuffix)) " ")
(t (cdr comint-completion-addsuffix))))
(filename (comint-match-partial-filename))
(filename-beg (if filename (match-beginning 0) (point)))
(filename-end (if filename (match-end 0) (point)))

View file

@ -356,6 +356,7 @@ Leaving \"Default\" unchecked is equivalent with specifying a default of
(const alt) (const hyper)
(const super)) "23.1")
(ns-antialias-text ns boolean "23.1")
(ns-auto-hide-menu-bar ns boolean "24.0")
;; process.c
(delete-exited-processes processes-basics boolean)
;; syntax.c

View file

@ -852,10 +852,10 @@ See `custom-known-themes' for a list of known themes."
;; theme is later disabled.
(cond ((and (eq prop 'theme-value)
(boundp symbol))
(let ((sv (get symbol 'standard-value)))
(unless (and sv
(equal (eval (car sv)) (symbol-value symbol)))
(setq old (list (list 'changed (symbol-value symbol)))))))
(let ((sv (get symbol 'standard-value))
(val (symbol-value symbol)))
(unless (and sv (equal (eval (car sv)) val))
(setq old `((changed ,(custom-quote val)))))))
((and (facep symbol)
(not (face-attr-match-p
symbol
@ -1084,10 +1084,10 @@ name."
:version "24.1")
(defvar custom--inhibit-theme-enable nil
"If non-nil, loading a theme does not enable it.
This internal variable is set by `load-theme' when its NO-ENABLE
argument is non-nil, and it affects `custom-theme-set-variables',
`custom-theme-set-faces', and `provide-theme'." )
"Whether the custom-theme-set-* functions act immediately.
If nil, `custom-theme-set-variables' and `custom-theme-set-faces'
change the current values of the given variable or face. If
non-nil, they just make a record of the theme settings.")
(defun provide-theme (theme)
"Indicate that this file provides THEME.
@ -1097,15 +1097,7 @@ property `theme-feature' (which is usually a symbol created by
(unless (custom-theme-name-valid-p theme)
(error "Custom theme cannot be named %S" theme))
(custom-check-theme theme)
(provide (get theme 'theme-feature))
(unless custom--inhibit-theme-enable
;; By default, loading a theme also enables it.
(push theme custom-enabled-themes)
;; `user' must always be the highest-precedence enabled theme.
;; Make that remain true. (This has the effect of making user
;; settings override the ones just loaded, too.)
(let ((custom-enabling-themes t))
(enable-theme 'user))))
(provide (get theme 'theme-feature)))
(defcustom custom-safe-themes '(default)
"List of themes that are considered safe to load.
@ -1157,9 +1149,11 @@ Return t if THEME was successfully loaded, nil otherwise."
(expand-file-name "themes/" data-directory)))
(member hash custom-safe-themes)
(custom-theme-load-confirm hash))
(let ((custom--inhibit-theme-enable no-enable))
(eval-buffer)
t)))))
(let ((custom--inhibit-theme-enable t))
(eval-buffer))
(unless no-enable
(enable-theme theme))
t))))
(defun custom-theme-load-confirm (hash)
"Query the user about loading a Custom theme that may not be safe.
@ -1238,68 +1232,70 @@ NAME should be a symbol."
;;; Enabling and disabling loaded themes.
(defvar custom-enabling-themes nil)
(defun enable-theme (theme)
"Reenable all variable and face settings defined by THEME.
The newly enabled theme gets the highest precedence (after `user').
If it is already enabled, just give it highest precedence (after `user').
If THEME does not specify any theme settings, this tries to load
the theme from its theme file, by calling `load-theme'."
THEME should be either `user', or a theme loaded via `load-theme'.
After this function completes, THEME will have the highest
precedence (after `user')."
(interactive (list (intern
(completing-read
"Enable custom theme: "
obarray (lambda (sym) (get sym 'theme-settings))))))
obarray (lambda (sym) (get sym 'theme-settings)) t))))
(if (not (custom-theme-p theme))
(load-theme theme)
;; This could use a bit of optimization -- cyd
(let ((settings (get theme 'theme-settings)))
(dolist (s settings)
(let* ((prop (car s))
(symbol (cadr s))
(spec-list (get symbol prop)))
(put symbol prop (cons (cddr s) (assq-delete-all theme spec-list)))
(if (eq prop 'theme-value)
(custom-theme-recalc-variable symbol)
(custom-theme-recalc-face symbol)))))
(unless (eq theme 'user)
(setq custom-enabled-themes
(cons theme (delq theme custom-enabled-themes)))
(unless custom-enabling-themes
(enable-theme 'user)))))
(error "Undefined Custom theme %s" theme))
(let ((settings (get theme 'theme-settings)))
;; Loop through theme settings, recalculating vars/faces.
(dolist (s settings)
(let* ((prop (car s))
(symbol (cadr s))
(spec-list (get symbol prop)))
(put symbol prop (cons (cddr s) (assq-delete-all theme spec-list)))
(cond
((eq prop 'theme-face)
(custom-theme-recalc-face symbol))
((eq prop 'theme-value)
;; Don't change `custom-enabled-themes'; that's special.
(unless (eq symbol 'custom-enabled-themes)
(custom-theme-recalc-variable symbol)))))))
(unless (eq theme 'user)
(setq custom-enabled-themes
(cons theme (delq theme custom-enabled-themes)))
;; Give the `user' theme the highest priority.
(enable-theme 'user)))
(defcustom custom-enabled-themes nil
"List of enabled Custom Themes, highest precedence first.
This list does not include the `user' theme, which is set by
Customize and always takes precedence over other Custom Themes.
This does not include the `user' theme, which is set by Customize,
and always takes precedence over other Custom Themes."
This variable cannot be defined inside a Custom theme; there, it
is simply ignored."
:group 'customize
:type '(repeat symbol)
:set-after '(custom-theme-directory custom-theme-load-path
custom-safe-themes)
:risky t
:set (lambda (symbol themes)
;; Avoid an infinite loop when custom-enabled-themes is
;; defined in a theme (e.g. `user'). Enabling the theme sets
;; custom-enabled-themes, which enables the theme...
(unless custom-enabling-themes
(let ((custom-enabling-themes t) failures)
(setq themes (delq 'user (delete-dups themes)))
(if (boundp symbol)
(dolist (theme (symbol-value symbol))
(if (not (memq theme themes))
(disable-theme theme))))
(dolist (theme (reverse themes))
(condition-case nil
(enable-theme theme)
(error (progn (push theme failures)
(setq themes (delq theme themes))))))
(enable-theme 'user)
(custom-set-default symbol themes)
(if failures
(message "Failed to enable themes: %s"
(mapconcat 'symbol-name failures " ")))))))
(let (failures)
(setq themes (delq 'user (delete-dups themes)))
;; Disable all themes not in THEMES.
(if (boundp symbol)
(dolist (theme (symbol-value symbol))
(if (not (memq theme themes))
(disable-theme theme))))
;; Call `enable-theme' or `load-theme' on each of THEMES.
(dolist (theme (reverse themes))
(condition-case nil
(if (custom-theme-p theme)
(enable-theme theme)
(load-theme theme))
(error (setq failures (cons theme failures)
themes (delq theme themes)))))
(enable-theme 'user)
(custom-set-default symbol themes)
(if failures
(message "Failed to enable theme: %s"
(mapconcat 'symbol-name failures ", "))))))
(defsubst custom-theme-enabled-p (theme)
"Return non-nil if THEME is enabled."

View file

@ -201,7 +201,7 @@ No problems result if this variable is not bound.
name))))
(unless (boundp ',map)
(put ',map 'definition-name ',child))
(defvar ,map (make-sparse-keymap))
(with-no-warnings (defvar ,map (make-sparse-keymap)))
(unless (get ',map 'variable-documentation)
(put ',map 'variable-documentation
(purecopy ,(format "Keymap for `%s'." child))))

View file

@ -102,10 +102,9 @@ interned variable `args' (created using a `let' form)."
macro-args
(list 'eshell-stringify-list
(list 'eshell-flatten-list macro-args)))))
(let ,(append (mapcar (lambda (opt)
(or (and (listp opt) (nth 3 opt))
'eshell-option-stub))
(cadr options))
(let ,(append (delq nil (mapcar (lambda (opt)
(and (listp opt) (nth 3 opt)))
(cadr options)))
'(usage-msg last-value ext-command args))
(eshell-do-opt ,name ,options (quote ,body-forms)))))

View file

@ -1,3 +1,137 @@
2011-03-30 Chong Yidong <cyd@stupidchicken.com>
* proto-stream.el (open-protocol-stream): Bring back `network' type.
Make this the default type.
(proto-stream-open-plain): Rename from proto-stream-open-default.
(open-protocol-stream, proto-stream-open-starttls)
(proto-stream-open-tls, proto-stream-open-shell): Replace `default'
with `plain'.
* nnimap.el (nnimap-stream, nnimap-open-connection-1): Accept `network'
value.
* nntp.el (nntp-open-connection-function): Document the fact that some
values are not functions but are instead handled specially. Recognize
nntp-open-plain-stream value.
(nntp-open-connection): Recognize that value.
2011-03-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gssapi.el (open-gssapi-stream): Remove the last mentions of the IMAP
stuff.
* gnus-score.el (gnus-score-string): Fix calling convention of
`gnus-simplify-buffer-fuzzy' after last patches.
* gnus-sum.el (gnus-update-marks): Don't send any marks updates to the
server for articles we didn't get any headers for. This is a sanity
check.
2011-03-29 Michael Welsh Duggan <md5i@md5i.com>
* nnimap.el (nnimap-open-connection-1): Is the login responds with a
new CAPABILITY, use it.
2011-03-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-agent.el (gnus-agent-fetch-headers): Don't message if we're not
downloading anything.
* gnus.el (gnus-splash-svg-color-symbols): Removed superfluous `and'.
2011-03-29 Adam Sjøgren <asjo@koldfront.dk>
* gnus.el (gnus-group-startup-message): Prefer svg file and replace
colors.
(gnus-splash-svg-color-symbols): New function.
2011-03-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-sum.el (gnus-simplify-buffer-fuzzy): Take the regexp explicitly
instead of using the global gnus-simplify-subject-fuzzy-regexp.
(gnus-simplify-subject-fuzzy): Use the local
gnus-simplify-subject-fuzzy-regex instead of the global one. This
makes using this variable in group parameters work.
2011-03-29 Teodor Zlatanov <tzz@lifelogs.com>
* gnus-registry.el (gnus-registry-unfollowed-groups): Add
"archive:sent" to the unfollowed group regex (for the recent Gnus
archive:sent-YYYY-MM-DD groups).
(gnus-registry-split-fancy-with-parent): Bail out early in sender
tracking if there are more than `gnus-registry-max-track-groups'
matches.
2011-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
* message.el (message--yank-original-internal): New function to do the
insertion cleanly inside eval in `message-yank-original'.
(message-yank-original): Use it.
2011-03-29 Julien Danjou <julien@danjou.info>
* mm-view.el (mm-display-inline-fontify): Use `set-normal-mode' with
local variables disabled rather than `normal-mode'.
2011-03-26 Chong Yidong <cyd@stupidchicken.com>
* proto-stream.el: Changes preparatory to merging open-protocol-stream
with open-network-stream.
(proto-stream-always-use-starttls): Option removed.
(open-protocol-stream): Return a process object by default. Provide a
new parameter :return-list specifying a list-type return value, which
now has the form (PROP . PLIST) instead of a fixed-length list. Change
:type `network' to `try-starttls', and `network-only' to `default'.
Make `default' the default, for compatibility with open-network-stream.
Handle the no-parameter case exactly as open-network-stream, with no
additional stream processing. Search plists using plist-get.
Explicitly add :end-of-commend parameter if it is missing.
(proto-stream-open-default): Renamed from
proto-stream-open-network-only. Return 'default as the type.
(proto-stream-open-starttls): Rename from proto-stream-open-network.
Use plist-get. Don't return `tls' as the type if STARTTLS negotiation
failed. Always return a list with a (possibly dead) process as the
first element, for compatibility with open-network-stream.
(proto-stream-open-tls): Use plist-get. Always return a list.
(proto-stream-open-shell): Return `default' as connection type.
(proto-stream-capability-open): Use plist-get.
(proto-stream-eoc): Function deleted.
* nnimap.el (nnimap-stream, nnimap-open-connection)
(nnimap-open-connection-1): Handle renaming of :type parameter for
open-protocol-stream.
(nnimap-open-connection-1): Pass a :return-list parameter
open-protocol-stream to obtain a list return value. Parse this list
using plist-get.
* nntp.el (nntp-open-connection): Handle renaming of :type parameter
for open-protocol-stream. Accept open-protocol-stream return value
that is a subprocess object instead of a list. Handle the case of a
dead returned process.
2011-03-25 Teodor Zlatanov <tzz@lifelogs.com>
* mm-util.el (mm-handle-filename): Move to mm-decode.el (bug#8330).
* mm-decode.el (mm-handle-filename): Move from mm-util.el (bug#8330).
2011-03-21 Julien Danjou <julien@danjou.info>
* mm-view.el (mm-display-inline-fontify): Make mode optional, and call
normal-mode if not set. Set temp buffer unmodified to avoid kill-buffer
query.
(mm-inline-text): Render normal text with fontification whenever
possible.
* gnus-sum.el (gnus-summary-save-parts-1):
* gnus-art.el (gnus-article-browse-html-save-cid-content)
(gnus-article-browse-html-parts, gnus-mime-delete-part)
(gnus-mime-copy-part, gnus-mime-inline-part, gnus-insert-mime-button):
Use `mm-handle-filename'.
* mm-util.el (mm-handle-filename): New function, return the filename of
an handle.
2011-03-18 Julien Danjou <julien@danjou.info>
* gnus-util.el (gnus-buffer-live-p): Simplify gnus-buffer-live-p.

View file

@ -1925,9 +1925,10 @@ article numbers will be returned."
(setq articles (gnus-list-range-intersection
articles (list (cons low high)))))))
(gnus-message
10 "gnus-agent-fetch-headers: undownloaded articles are '%s'"
(gnus-compress-sequence articles t))
(when articles
(gnus-message
10 "gnus-agent-fetch-headers: undownloaded articles are '%s'"
(gnus-compress-sequence articles t)))
(with-current-buffer nntp-server-buffer
(if articles

View file

@ -2811,14 +2811,11 @@ Return file name."
((equal (concat "<" cid ">") (mm-handle-id handle))
(setq file
(expand-file-name
(or (mail-content-type-get
(mm-handle-disposition handle) 'filename)
(mail-content-type-get
(setq type (mm-handle-type handle)) 'name)
(concat
(make-temp-name "cid")
(car (rassoc (car type) mailcap-mime-extensions))))
directory))
(or (mm-handle-filename handle)
(concat
(make-temp-name "cid")
(car (rassoc (car (mm-handle-type handle)) mailcap-mime-extensions))))
directory))
(mm-save-part-to-file handle file)
(throw 'found file))))))))
@ -2835,10 +2832,7 @@ message header will be added to the bodies of the \"text/html\" parts."
((or (equal (car (setq type (mm-handle-type handle))) "text/html")
(and (equal (car type) "message/external-body")
(or header
(setq file (or (mail-content-type-get type 'name)
(mail-content-type-get
(mm-handle-disposition handle)
'filename))))
(setq file (mm-handle-filename handle)))
(or (mm-handle-cache handle)
(condition-case code
(progn (mm-extern-cache-contents handle) t)
@ -5043,14 +5037,11 @@ Deleting parts may malfunction or destroy the article; continue? "))
(let* ((data (get-text-property (point) 'gnus-data))
(id (get-text-property (point) 'gnus-part))
(handles gnus-article-mime-handles)
(none "(none)")
(description
(let ((desc (mm-handle-description data)))
(when desc
(mail-decode-encoded-word-string desc))))
(filename
(or (mail-content-type-get (mm-handle-disposition data) 'filename)
none))
(filename (or (mm-handle-filename (mm-handle-disposition data)) "(none)"))
(type (mm-handle-media-type data)))
(unless data
(error "No MIME part under point"))
@ -5168,10 +5159,7 @@ are decompressed."
(unless handle
(setq handle (get-text-property (point) 'gnus-data)))
(when handle
(let ((filename (or (mail-content-type-get (mm-handle-type handle)
'name)
(mail-content-type-get (mm-handle-disposition handle)
'filename)))
(let ((filename (mm-handle-filename handle))
contents dont-decode charset coding-system)
(mm-with-unibyte-buffer
(mm-insert-part handle)
@ -5261,12 +5249,7 @@ Compressed files like .gz and .bz2 are decompressed."
(mm-with-unibyte-buffer
(mm-insert-part handle)
(setq contents
(or (mm-decompress-buffer
(or (mail-content-type-get (mm-handle-type handle)
'name)
(mail-content-type-get (mm-handle-disposition handle)
'filename))
nil t)
(or (mm-decompress-buffer (mm-handle-filename handle) nil t)
(buffer-string))))
(cond
((not arg)
@ -5671,8 +5654,7 @@ all parts."
(defun gnus-insert-mime-button (handle gnus-tmp-id &optional displayed)
(let ((gnus-tmp-name
(or (mail-content-type-get (mm-handle-type handle) 'name)
(mail-content-type-get (mm-handle-disposition handle) 'filename)
(or (mm-handle-filename handle)
(mail-content-type-get (mm-handle-type handle) 'url)
""))
(gnus-tmp-type (mm-handle-media-type handle))

View file

@ -124,7 +124,7 @@ display."
:type 'symbol)
(defcustom gnus-registry-unfollowed-groups
'("delayed$" "drafts$" "queue$" "INBOX$" "^nnmairix:")
'("delayed$" "drafts$" "queue$" "INBOX$" "^nnmairix:" "archive")
"List of groups that gnus-registry-split-fancy-with-parent won't return.
The group names are matched, they don't have to be fully
qualified. This parameter tells the Registry 'never split a
@ -541,24 +541,26 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details."
user-mail-address)))
(maphash
(lambda (key value)
(let ((this-sender (cdr
(gnus-registry-fetch-extra key 'sender)))
matches)
(when (and this-sender
(equal sender this-sender))
(let ((groups (gnus-registry-fetch-groups
key
gnus-registry-max-track-groups)))
(dolist (group groups)
(when (and group (gnus-registry-follow-group-p group))
(push group found-full)
(setq found (append (list group) (delete group found))))))
(push key matches)
(gnus-message
;; raise level of messaging if gnus-registry-track-extra
(if gnus-registry-track-extra 7 9)
"%s (extra tracking) traced sender %s to groups %s (keys %s)"
log-agent sender found matches))))
;; don't use more than gnus-registry-max-track-groups
(when (< (length found-full) gnus-registry-max-track-groups)
(let ((this-sender
(cdr (gnus-registry-fetch-extra key 'sender)))
matches)
(when (and this-sender
(equal sender this-sender))
(let ((groups (gnus-registry-fetch-groups
key
gnus-registry-max-track-groups)))
(dolist (group groups)
(when (and group (gnus-registry-follow-group-p group))
(push group found-full)
(setq found (append (list group) (delete group found))))))
(push key matches)
(gnus-message
;; raise level of messaging if gnus-registry-track-extra
(if gnus-registry-track-extra 7 9)
"%s (extra tracking) traced sender %s to groups %s (keys %s)"
log-agent sender found matches)))))
gnus-registry-hashtb)
;; filter the found groups and return them
;; the found groups are NOT the full groups

View file

@ -2151,7 +2151,7 @@ score in `gnus-newsgroup-scored' by SCORE."
;; Find fuzzy matches.
(when fuzzies
;; Simplify the entire buffer for easy matching.
(gnus-simplify-buffer-fuzzy)
(gnus-simplify-buffer-fuzzy gnus-simplify-subject-fuzzy-regexp)
(while (setq kill (cadaar fuzzies))
(let* ((match (nth 0 kill))
(type (nth 3 kill))

View file

@ -1734,7 +1734,7 @@ If RE-ONLY is non-nil, strip leading `Re:'s only."
(while (re-search-forward regexp nil t)
(replace-match (or newtext ""))))
(defun gnus-simplify-buffer-fuzzy ()
(defun gnus-simplify-buffer-fuzzy (regexp)
"Simplify string in the buffer fuzzily.
The string in the accessible portion of the current buffer is simplified.
It is assumed to be a single-line subject.
@ -1748,11 +1748,10 @@ matter is removed. Additional things can be deleted by setting
(while (not (eq modified-tick (buffer-modified-tick)))
(setq modified-tick (buffer-modified-tick))
(cond
((listp gnus-simplify-subject-fuzzy-regexp)
(mapc 'gnus-simplify-buffer-fuzzy-step
gnus-simplify-subject-fuzzy-regexp))
(gnus-simplify-subject-fuzzy-regexp
(gnus-simplify-buffer-fuzzy-step gnus-simplify-subject-fuzzy-regexp)))
((listp regexp)
(mapc 'gnus-simplify-buffer-fuzzy-step regexp))
(regexp
(gnus-simplify-buffer-fuzzy-step regexp)))
(gnus-simplify-buffer-fuzzy-step "^ *\\[[-+?*!][-+?*!]\\] *")
(gnus-simplify-buffer-fuzzy-step
"^ *\\(re\\|fw\\|fwd\\)[[{(^0-9]*[])}]?[:;] *")
@ -1767,15 +1766,16 @@ matter is removed. Additional things can be deleted by setting
"Simplify a subject string fuzzily.
See `gnus-simplify-buffer-fuzzy' for details."
(save-excursion
(gnus-set-work-buffer)
(let ((case-fold-search t))
;; Remove uninteresting prefixes.
(when (and gnus-simplify-ignored-prefixes
(string-match gnus-simplify-ignored-prefixes subject))
(setq subject (substring subject (match-end 0))))
(insert subject)
(inline (gnus-simplify-buffer-fuzzy))
(buffer-string))))
(let ((regexp gnus-simplify-subject-fuzzy-regexp))
(gnus-set-work-buffer)
(let ((case-fold-search t))
;; Remove uninteresting prefixes.
(when (and gnus-simplify-ignored-prefixes
(string-match gnus-simplify-ignored-prefixes subject))
(setq subject (substring subject (match-end 0))))
(insert subject)
(inline (gnus-simplify-buffer-fuzzy regexp))
(buffer-string)))))
(defsubst gnus-simplify-subject-fully (subject)
"Simplify a subject string according to `gnus-summary-gather-subject-limit'."
@ -6068,14 +6068,23 @@ If SELECT-ARTICLES, only select those articles from GROUP."
'request-set-mark gnus-newsgroup-name)
(not (gnus-article-unpropagatable-p (cdr type))))
(let* ((old (cdr (assq (cdr type) (gnus-info-marks info))))
(del (gnus-remove-from-range (gnus-copy-sequence old) list))
(add (gnus-remove-from-range
(gnus-copy-sequence list) old)))
;; Don't do anything about marks for articles we
;; didn't actually get any headers for.
(existing (gnus-compress-sequence gnus-newsgroup-articles))
(del
(gnus-sorted-range-intersection
existing
(gnus-remove-from-range (gnus-copy-sequence old) list)))
(add
(gnus-sorted-range-intersection
existing
(gnus-remove-from-range
(gnus-copy-sequence list) old))))
(when add
(push (list add 'add (list (cdr type))) delta-marks))
(when del
;; Don't delete marks from outside the active range. This
;; shouldn't happen, but is a sanity check.
;; Don't delete marks from outside the active range.
;; This shouldn't happen, but is a sanity check.
(setq del (gnus-sorted-range-intersection
(gnus-active gnus-newsgroup-name) del))
(push (list del 'del (list (cdr type))) delta-marks))))
@ -12142,10 +12151,7 @@ If REVERSE, save parts that do not match TYPE."
mm-file-name-rewrite-functions
(file-name-nondirectory
(or
(mail-content-type-get
(mm-handle-disposition handle) 'filename)
(mail-content-type-get
(mm-handle-type handle) 'name)
(mm-handle-filename handle)
(format "%s.%d.%d" gnus-newsgroup-name
(cdr gnus-article-current)
gnus-summary-save-parts-counter))))

View file

@ -1043,12 +1043,15 @@ be set in `.emacs' instead."
((boundp 'image-load-path)
(symbol-value 'image-load-path))
(t load-path)))
(image (find-image
`((:type xpm :file "gnus.xpm"
(image (gnus-splash-svg-color-symbols (find-image
`((:type svg :file "gnus.svg"
:color-symbols
(("#bf9900" . ,(car gnus-logo-colors))
("#ffcc00" . ,(cadr gnus-logo-colors))))
(:type xpm :file "gnus.xpm"
:color-symbols
(("thing" . ,(car gnus-logo-colors))
("shadow" . ,(cadr gnus-logo-colors))))
(:type svg :file "gnus.svg")
(:type png :file "gnus.png")
(:type pbm :file "gnus.pbm"
;; Account for the pbm's background.
@ -1057,7 +1060,7 @@ be set in `.emacs' instead."
(:type xbm :file "gnus.xbm"
;; Account for the xbm's background.
:background ,(face-foreground 'gnus-splash)
:foreground ,(face-background 'default))))))
:foreground ,(face-background 'default)))))))
(when image
(let ((size (image-size image)))
(insert-char ?\n (max 0 (round (- (window-height)
@ -1103,6 +1106,20 @@ be set in `.emacs' instead."
(setq mode-line-buffer-identification (concat " " gnus-version))
(set-buffer-modified-p t)))
(defun gnus-splash-svg-color-symbols (list)
"Do color-symbol search-and-replace in svg file"
(let ((type (plist-get (cdr list) :type))
(file (plist-get (cdr list) :file))
(color-symbols (plist-get (cdr list) :color-symbols)))
(if (string= type "svg")
(let ((data (with-temp-buffer (insert-file file) (buffer-string))))
(mapc (lambda (rule)
(setq data (replace-regexp-in-string
(concat "fill:" (car rule))
(concat "fill:" (cdr rule)) data))) color-symbols)
(cons (car list) (list :type type :data data)))
list)))
(eval-when (load)
(let ((command (format "%s" this-command)))
(when (string-match "gnus" command)

View file

@ -33,14 +33,14 @@
"--authentication-id %l")
"imtest -m gssapi -u %l -p %p %s")
"List of strings containing commands for GSSAPI (krb5) authentication.
%s is replaced with server hostname, %p with port to connect to, and
%l with the value of `imap-default-user'. The program should accept
IMAP commands on stdin and return responses to stdout. Each entry in
the list is tried until a successful connection is made."
%s is replaced with server hostname, %p with port to connect to,
and %l with the user name. The program should accept commands on
stdin and return responses to stdout. Each entry in the list is
tried until a successful connection is made."
:group 'network
:type '(repeat string))
(defun open-gssapi-stream (name buffer server port)
(defun open-gssapi-stream (name buffer server port user)
(let ((cmds gssapi-program)
cmd done)
(with-current-buffer buffer
@ -57,7 +57,7 @@ the list is tried until a successful connection is made."
(format-spec-make
?s server
?p (number-to-string port)
?l imap-default-user))))
?l user))))
response)
(when process
(while (and (memq (process-status process) '(open run))
@ -92,7 +92,7 @@ the list is tried until a successful connection is made."
(accept-process-output process 1)
(sit-for 1))
(erase-buffer)
(message "GSSAPI IMAP connection: %s" (or response "failed"))
(message "GSSAPI connection: %s" (or response "failed"))
(if (and response (let ((case-fold-search nil))
(not (string-match "failed" response))))
(setq done process)

View file

@ -3712,22 +3712,9 @@ To use this automatically, you may add this function to
(while (re-search-forward citexp nil t)
(replace-match (if remove "" "\n"))))))
(defun message-yank-original (&optional arg)
"Insert the message being replied to, if any.
Puts point before the text and mark after.
Normally indents each nonblank line ARG spaces (default 3). However,
if `message-yank-prefix' is non-nil, insert that prefix on each line.
This function uses `message-cite-function' to do the actual citing.
Just \\[universal-argument] as argument means don't indent, insert no
prefix, and don't delete any headers."
(interactive "P")
(defun message--yank-original-internal (arg)
(let ((modified (buffer-modified-p))
body-text)
;; eval the let forms contained in message-cite-style
(eval
`(let ,message-cite-style
(when (and message-reply-buffer
message-cite-function)
(when (equal message-cite-reply-position 'above)
@ -3767,7 +3754,23 @@ prefix, and don't delete any headers."
;; Add a `message-setup-very-last-hook' here?
;; Add `gnus-article-highlight-citation' here?
(unless modified
(setq message-checksum (message-checksum))))))))
(setq message-checksum (message-checksum))))))
(defun message-yank-original (&optional arg)
"Insert the message being replied to, if any.
Puts point before the text and mark after.
Normally indents each nonblank line ARG spaces (default 3). However,
if `message-yank-prefix' is non-nil, insert that prefix on each line.
This function uses `message-cite-function' to do the actual citing.
Just \\[universal-argument] as argument means don't indent, insert no
prefix, and don't delete any headers."
(interactive "P")
;; eval the let forms contained in message-cite-style
(eval
`(let ,message-cite-style
(message--yank-original-internal ',arg))))
(defun message-yank-buffer (buffer)
"Insert BUFFER into the current buffer and quote it."

View file

@ -1744,6 +1744,13 @@ If RECURSIVE, search recursively."
(delete-region ,(point-min-marker)
,(point-max-marker))))))))
(defun mm-handle-filename (handle)
"Return filename of HANDLE if any."
(or (mail-content-type-get (mm-handle-type handle)
'name)
(mail-content-type-get (mm-handle-disposition handle)
'filename)))
(provide 'mm-decode)
;;; mm-decode.el ends here

View file

@ -455,7 +455,7 @@
(narrow-to-region (point) (point))
(mm-insert-part handle)
(goto-char (point-max)))
(insert (mm-decode-string (mm-get-part handle) charset)))
(mm-display-inline-fontify handle))
(when (and mm-fill-flowed
(equal type "plain")
(equal (cdr (assoc 'format (mm-handle-type handle)))
@ -565,15 +565,16 @@
(face-property 'default prop) (current-buffer))))
(delete-region ,(point-min-marker) ,(point-max-marker)))))))))
(defun mm-display-inline-fontify (handle mode)
(defun mm-display-inline-fontify (handle &optional mode)
"Insert HANDLE inline fontifying with MODE.
If MODE is not set, try to find mode automatically."
(let ((charset (mail-content-type-get (mm-handle-type handle) 'charset))
text coding-system)
(unless (eq charset 'gnus-decoded)
(mm-with-unibyte-buffer
(mm-insert-part handle)
(mm-decompress-buffer
(or (mail-content-type-get (mm-handle-disposition handle) 'name)
(mail-content-type-get (mm-handle-disposition handle) 'filename))
(mm-handle-filename handle)
t t)
(unless charset
(setq coding-system (mm-find-buffer-file-coding-system)))
@ -601,7 +602,11 @@
(font-lock-support-mode nil)
;; I find font-lock a bit too verbose.
(font-lock-verbose nil))
(funcall mode)
(setq buffer-file-name (mm-handle-filename handle))
(set (make-local-variable 'enable-local-variables) nil)
(if mode
(funcall mode)
(set-auto-mode))
;; The mode function might have already turned on font-lock.
(unless (symbol-value 'font-lock-mode)
(font-lock-fontify-buffer)))
@ -614,6 +619,9 @@
nil)
nil nil nil nil nil 'text-prop))
(setq text (buffer-string))
;; Set buffer unmodified to avoid confirmation when killing the
;; buffer.
(set-buffer-modified-p nil)
(kill-buffer (current-buffer)))
(mm-insert-inline handle text)))

View file

@ -61,10 +61,12 @@ If nnimap-stream is `ssl', this will default to `imaps'. If not,
it will default to `imap'.")
(defvoo nnimap-stream 'undecided
"How nnimap will talk to the IMAP server.
Values are `ssl', `network', `network-only, `starttls' or
`shell'. The default is to try `ssl' first, and then
`network'.")
"How nnimap talks to the IMAP server.
The value should be either `undecided', `ssl' or `tls',
`network', `starttls', `plain', or `shell'.
If the value is `undecided', nnimap tries `ssl' first, then falls
back on `network'.")
(defvoo nnimap-shell-program (if (boundp 'imap-shell-program)
(if (listp imap-shell-program)
@ -339,9 +341,7 @@ textual parts.")
(port nil)
(ports
(cond
((or (eq nnimap-stream 'network)
(eq nnimap-stream 'network-only)
(eq nnimap-stream 'starttls))
((memq nnimap-stream '(network plain starttls))
(nnheader-message 7 "Opening connection to %s..."
nnimap-address)
'("imap" "143"))
@ -355,21 +355,28 @@ textual parts.")
'("imaps" "imap" "993" "143"))
(t
(error "Unknown stream type: %s" nnimap-stream))))
(proto-stream-always-use-starttls t)
login-result credentials)
(when nnimap-server-port
(push nnimap-server-port ports))
(destructuring-bind (stream greeting capabilities stream-type)
(open-protocol-stream
"*nnimap*" (current-buffer) nnimap-address (car ports)
:type nnimap-stream
:shell-command nnimap-shell-program
:capability-command "1 CAPABILITY\r\n"
:success " OK "
:starttls-function
(lambda (capabilities)
(when (gnus-string-match-p "STARTTLS" capabilities)
"1 STARTTLS\r\n")))
(let* ((stream-list
(open-protocol-stream
"*nnimap*" (current-buffer) nnimap-address (car ports)
:type nnimap-stream
:return-list t
:shell-command nnimap-shell-program
:capability-command "1 CAPABILITY\r\n"
:success " OK "
:starttls-function
(lambda (capabilities)
(when (gnus-string-match-p "STARTTLS" capabilities)
"1 STARTTLS\r\n"))))
(stream (car stream-list))
(props (cdr stream-list))
(greeting (plist-get props :greeting))
(capabilities (plist-get props :capabilities))
(stream-type (plist-get props :type)))
(when (and stream (not (memq (process-status stream) '(open run))))
(setq stream nil))
(setf (nnimap-process nnimap-object) stream)
(setf (nnimap-stream-type nnimap-object) stream-type)
(if (not stream)
@ -403,11 +410,18 @@ textual parts.")
(setq login-result
(nnimap-login (car credentials) (cadr credentials))))
(if (car login-result)
;; save the credentials if a save function exists
(progn
;; Save the credentials if a save function exists
;; (such a function will only be passed if a new
;; token was created)
(when (functionp (nth 2 credentials))
(funcall (nth 2 credentials)))
;; token was created).
(when (functionp (nth 2 credentials))
(funcall (nth 2 credentials)))
;; See if CAPABILITY is set as part of login
;; response.
(dolist (response (cddr login-result))
(when (string= "CAPABILITY" (upcase (car response)))
(setf (nnimap-capabilities nnimap-object)
(mapcar #'upcase (cdr response))))))
;; If the login failed, then forget the credentials
;; that are now possibly cached.
(dolist (host (list (nnoo-current-server 'nnimap)

View file

@ -76,27 +76,27 @@ to innd, you could say something like:
You probably don't want to do that, though.")
(defvoo nntp-open-connection-function 'nntp-open-network-stream
"*Function used for connecting to a remote system.
It will be called with the buffer to output in as argument.
"Method for connecting to a remote system.
It should be a function, which is called with the output buffer
as its single argument, or one of the following special values:
Currently, five such functions are provided (please refer to their
respective doc string for more information), three of them establishing
direct connections to the nntp server, and two of them using an indirect
host.
- `nntp-open-network-stream' specifies a network connection,
upgrading to a TLS connection via STARTTLS if possible.
- `nntp-open-plain-stream' specifies an unencrypted network
connection (no STARTTLS upgrade is attempted).
- `nntp-open-ssl-stream' or `nntp-open-tls-stream' specify a TLS
network connection.
Direct connections:
- `nntp-open-network-stream' (the default),
- `network-only' (the same as the above, but don't do automatic
STARTTLS upgrades).
- `nntp-open-ssl-stream',
- `nntp-open-tls-stream',
- `nntp-open-netcat-stream'.
- `nntp-open-telnet-stream'.
Indirect connections:
- `nntp-open-via-rlogin-and-netcat',
- `nntp-open-via-rlogin-and-telnet',
- `nntp-open-via-telnet-and-telnet'.")
Apart from the above special values, valid functions are as
follows; please refer to their respective doc string for more
information.
For direct connections:
- `nntp-open-netcat-stream'
- `nntp-open-telnet-stream'
For indirect connections:
- `nntp-open-via-rlogin-and-netcat'
- `nntp-open-via-rlogin-and-telnet'
- `nntp-open-via-telnet-and-telnet'")
(defvoo nntp-never-echoes-commands nil
"*Non-nil means the nntp server never echoes commands.
@ -1340,25 +1340,25 @@ password contained in '~/.nntp-authinfo'."
(let ((coding-system-for-read nntp-coding-system-for-read)
(coding-system-for-write nntp-coding-system-for-write)
(map '((nntp-open-network-stream network)
(network-only network-only)
(network-only plain) ; compat
(nntp-open-plain-stream plain)
(nntp-open-ssl-stream tls)
(nntp-open-tls-stream tls))))
(if (assoc nntp-open-connection-function map)
(car (open-protocol-stream
"nntpd" pbuffer nntp-address nntp-port-number
:type (cadr
(assoc nntp-open-connection-function map))
:end-of-command "^\\([2345]\\|[.]\\).*\n"
:capability-command "CAPABILITIES\r\n"
:success "^3"
:starttls-function
(lambda (capabilities)
(if (not (string-match "STARTTLS" capabilities))
nil
"STARTTLS\r\n"))))
(open-protocol-stream
"nntpd" pbuffer nntp-address nntp-port-number
:type (cadr (assoc nntp-open-connection-function map))
:end-of-command "^\\([2345]\\|[.]\\).*\n"
:capability-command "CAPABILITIES\r\n"
:success "^3"
:starttls-function
(lambda (capabilities)
(if (not (string-match "STARTTLS" capabilities))
nil
"STARTTLS\r\n")))
(funcall nntp-open-connection-function pbuffer)))
(error
(nnheader-report 'nntp "%s" err))
(nnheader-report 'nntp ">>> %s" err))
(quit
(message "Quit opening connection to %s" nntp-address)
(nntp-kill-buffer pbuffer)
@ -1366,6 +1366,9 @@ password contained in '~/.nntp-authinfo'."
nil))))
(when timer
(nnheader-cancel-timer timer))
(when (and process
(not (memq (process-status process) '(open run))))
(setq process nil))
(unless process
(nntp-kill-buffer pbuffer))
(when (and (buffer-name pbuffer)

View file

@ -48,171 +48,162 @@
;;; Code:
(eval-when-compile
(require 'cl))
(require 'tls)
(require 'starttls)
(require 'format-spec)
(defcustom proto-stream-always-use-starttls (fboundp 'open-gnutls-stream)
"If non-nil, always try to upgrade network connections with STARTTLS."
:version "24.1"
:type 'boolean
:group 'comm)
(declare-function gnutls-negotiate "gnutls"
(proc type &optional priority-string trustfiles keyfiles))
;;;###autoload
(defun open-protocol-stream (name buffer host service &rest parameters)
"Open a network stream to HOST, upgrading to STARTTLS if possible.
The first four parameters have the same meaning as in
`open-network-stream'. The function returns a list where the
first element is the stream, the second element is the greeting
the server replied with after connecting, and the third element
is a string representing the capabilities of the server (if any).
"Open a network stream to HOST, possibly with encryption.
Normally, return a network process object; with a non-nil
:return-list parameter, return a list instead (see below).
The PARAMETERS is a keyword list that can have the following
values:
The first four parameters, NAME, BUFFER, HOST, and SERVICE, have
the same meanings as in `open-network-stream'. The remaining
PARAMETERS should be a sequence of keywords and values:
:type -- either `network', `network-only, `tls', `shell' or
`starttls'. If omitted, the default is `network'. `network'
will be opportunistically upgraded to STARTTLS if both the server
and Emacs supports it. If you don't want STARTTLS upgrades, use
`network-only'.
:type specifies the connection type, one of the following:
nil or `network'
-- Begin with an ordinary network connection, and if
the parameters :success and :capability-command
are also supplied, try to upgrade to an encrypted
connection via STARTTLS. Even if that
fails (e.g. if HOST does not support TLS), retain
an unencrypted connection.
`plain' -- An ordinary, unencrypted network connection.
`starttls' -- Begin with an ordinary connection, and try
upgrading via STARTTLS. If that fails for any
reason, drop the connection; in that case the
returned object is a killed process.
`tls' -- A TLS connection.
`ssl' -- Equivalent to `tls'.
`shell' -- A shell connection.
:end-of-command -- a regexp saying what the end of a command is.
This defaults to \"\\n\".
:return-list specifies this function's return value.
If omitted or nil, return a process object. A non-nil means to
return (PROC . PROPS), where PROC is a process object and PROPS
is a plist of connection properties, with these keywords:
:greeting -- the greeting returned by HOST (a string), or nil.
:capabilities -- a string representing HOST's capabilities,
or nil if none could be found.
:type -- the resulting connection type; `plain' (unencrypted)
or `tls' (TLS-encrypted).
:success -- a regexp saying whether the STARTTLS command was
successful or not. For instance, for NNTP this is \"^3\".
:end-of-command specifies a regexp matching the end of a command.
If non-nil, it defaults to \"\\n\".
:capability-command -- a string representing the command used to
query server for capabilities. For instance, for IMAP this is
\"1 CAPABILITY\\r\\n\".
:success specifies a regexp matching a message indicating a
successful STARTTLS negotiation. For instance, the default
should be \"^3\" for an NNTP connection.
:starttls-function -- a function that takes one parameter, which
is the response to the capaibility command. It should return nil
if it turns out that the server doesn't support STARTTLS, or the
command to switch on STARTTLS otherwise.
:capability-command specifies a command used to query the HOST
for its capabilities. For instance, for IMAP this should be
\"1 CAPABILITY\\r\\n\".
The return value from this function is a four-element list, where
the first element is the stream (if connection was successful);
the second element is the \"greeting\", i. e., the string the
server sent over on initial contact; the third element is the
capability string; and the fourth element is either `network' or
`tls', depending on whether the connection ended up being
encrypted or not."
(let ((type (or (cadr (memq :type parameters)) 'network)))
(cond
((eq type 'starttls)
(setq type 'network))
((eq type 'ssl)
(setq type 'tls)))
(let ((open-result
(funcall (intern (format "proto-stream-open-%s" type) obarray)
name buffer host service parameters)))
(if (null open-result)
(list nil nil nil type)
(let ((stream (car open-result)))
(list (and stream
(memq (process-status stream)
'(open run))
stream)
(nth 1 open-result)
(nth 2 open-result)
(nth 3 open-result)))))))
:starttls-function specifies a function for handling STARTTLS.
This function should take one parameter, the response to the
capability command, and should return the command to switch on
STARTTLS if the server supports STARTTLS, and nil otherwise."
(let ((type (plist-get parameters :type))
(return-list (plist-get parameters :return-list)))
(if (and (not return-list)
(or (eq type 'plain)
(and (memq type '(nil network))
(not (and (plist-get parameters :success)
(plist-get parameters :capability-command))))))
;; The simplest case is equivalent to `open-network-stream'.
(open-network-stream name buffer host service)
;; For everything else, refer to proto-stream-open-*.
(unless (plist-get parameters :end-of-command)
(setq parameters (append '(:end-of-command "\r\n") parameters)))
(let* ((connection-function
(cond
((eq type 'plain) 'proto-stream-open-plain)
((memq type '(nil network starttls))
'proto-stream-open-starttls)
((memq type '(tls ssl)) 'proto-stream-open-tls)
((eq type 'shell) 'proto-stream-open-shell)
(t (error "Invalid connection type %s" type))))
(result (funcall connection-function
name buffer host service parameters)))
(if return-list
(list (car result)
:greeting (nth 1 result)
:capabilities (nth 2 result)
:type (nth 3 result))
(car result))))))
(defun proto-stream-open-network-only (name buffer host service parameters)
(defun proto-stream-open-plain (name buffer host service parameters)
(let ((start (with-current-buffer buffer (point)))
(stream (open-network-stream name buffer host service)))
(list stream
(proto-stream-get-response
stream start (proto-stream-eoc parameters))
(proto-stream-get-response stream start
(plist-get parameters :end-of-command))
nil
'network)))
'plain)))
(defun proto-stream-open-network (name buffer host service parameters)
(defun proto-stream-open-starttls (name buffer host service parameters)
(let* ((start (with-current-buffer buffer (point)))
(require-tls (eq (plist-get parameters :type) 'starttls))
(starttls-function (plist-get parameters :starttls-function))
(success-string (plist-get parameters :success))
(capability-command (plist-get parameters :capability-command))
(eoc (plist-get parameters :end-of-command))
;; Return (STREAM GREETING CAPABILITIES RESULTING-TYPE)
(stream (open-network-stream name buffer host service))
(capability-command (cadr (memq :capability-command parameters)))
(eoc (proto-stream-eoc parameters))
(type (cadr (memq :type parameters)))
(greeting (proto-stream-get-response stream start eoc))
success)
(if (not capability-command)
(list stream greeting nil 'network)
(let* ((capabilities
(proto-stream-command stream capability-command eoc))
(starttls-command
(funcall (cadr (memq :starttls-function parameters))
capabilities)))
(cond
;; If this server doesn't support STARTTLS, but we have
;; requested it explicitly, then close the connection and
;; return nil.
((or (not starttls-command)
(and (not (eq type 'starttls))
(not proto-stream-always-use-starttls)))
(if (eq type 'starttls)
(progn
(delete-process stream)
nil)
;; Otherwise, just return this plain network connection.
(list stream greeting capabilities 'network)))
;; We have some kind of STARTTLS support, so we try to
;; upgrade the connection opportunistically.
((or (fboundp 'open-gnutls-stream)
(executable-find "gnutls-cli"))
(unless (fboundp 'open-gnutls-stream)
(delete-process stream)
(setq start (with-current-buffer buffer (point-max)))
(let* ((starttls-use-gnutls t)
(starttls-extra-arguments
(if (not (eq type 'starttls))
;; When doing opportunistic TLS upgrades we
;; don't really care about the identity of the
;; peer.
(cons "--insecure" starttls-extra-arguments)
starttls-extra-arguments)))
(setq stream (starttls-open-stream name buffer host service)))
(proto-stream-get-response stream start eoc))
(if (not
(string-match
(cadr (memq :success parameters))
(proto-stream-command stream starttls-command eoc)))
;; We got an error back from the STARTTLS command.
(progn
(if (eq type 'starttls)
(progn
(delete-process stream)
nil)
(list stream greeting capabilities 'network)))
;; The server said it was OK to start doing STARTTLS negotiations.
(if (fboundp 'open-gnutls-stream)
(gnutls-negotiate stream nil)
(unless (starttls-negotiate stream)
(delete-process stream)
(setq stream nil)))
(when (or (null stream)
(not (memq (process-status stream)
'(open run))))
;; It didn't successfully negotiate STARTTLS, so we reopen
;; the connection.
(setq stream (open-network-stream name buffer host service))
(proto-stream-get-response stream start eoc))
;; Re-get the capabilities, since they may have changed
;; after switching to TLS.
(list stream greeting
(proto-stream-command stream capability-command eoc) 'tls)))
;; We don't have STARTTLS support available, but the caller
;; requested a STARTTLS connection, so we give up.
((eq (cadr (memq :type parameters)) 'starttls)
(delete-process stream)
nil)
;; Fall back on using a plain network stream.
(t
(list stream greeting capabilities 'network)))))))
(capabilities (when capability-command
(proto-stream-command stream
capability-command eoc)))
(resulting-type 'plain)
starttls-command)
;; If we have STARTTLS support, try to upgrade the connection.
(when (and (or (fboundp 'open-gnutls-stream)
(executable-find "gnutls-cli"))
capabilities success-string starttls-function
(setq starttls-command
(funcall starttls-function capabilities)))
;; If using external STARTTLS, drop this connection and start
;; anew with `starttls-open-stream'.
(unless (fboundp 'open-gnutls-stream)
(delete-process stream)
(setq start (with-current-buffer buffer (point-max)))
(let* ((starttls-use-gnutls t)
(starttls-extra-arguments
(if require-tls
starttls-extra-arguments
;; For opportunistic TLS upgrades, we don't really
;; care about the identity of the peer.
(cons "--insecure" starttls-extra-arguments))))
(setq stream (starttls-open-stream name buffer host service)))
(proto-stream-get-response stream start eoc))
(when (string-match success-string
(proto-stream-command stream starttls-command eoc))
;; The server said it was OK to begin STARTTLS negotiations.
(if (fboundp 'open-gnutls-stream)
(gnutls-negotiate stream nil)
(unless (starttls-negotiate stream)
(delete-process stream)))
(if (memq (process-status stream) '(open run))
(setq resulting-type 'tls)
;; We didn't successfully negotiate STARTTLS; if TLS
;; isn't demanded, reopen an unencrypted connection.
(unless require-tls
(setq stream (open-network-stream name buffer host service))
(proto-stream-get-response stream start eoc)))
;; Re-get the capabilities, which may have now changed.
(setq capabilities
(proto-stream-command stream capability-command eoc))))
;; If TLS is mandatory, close the connection if it's unencrypted.
(and require-tls
(eq resulting-type 'plain)
(delete-process stream))
;; Return value:
(list stream greeting capabilities resulting-type)))
(defun proto-stream-command (stream command eoc)
(let ((start (with-current-buffer (process-buffer stream) (point-max))))
@ -241,47 +232,43 @@ encrypted or not."
(funcall (if (fboundp 'open-gnutls-stream)
'open-gnutls-stream
'open-tls-stream)
name buffer host service)))
name buffer host service))
(eoc (plist-get parameters :end-of-command)))
(if (null stream)
nil
(list nil nil nil 'plain)
;; If we're using tls.el, we have to delete the output from
;; openssl/gnutls-cli.
(unless (fboundp 'open-gnutls-stream)
(proto-stream-get-response
stream start (proto-stream-eoc parameters))
(proto-stream-get-response stream start eoc)
(goto-char (point-min))
(when (re-search-forward (proto-stream-eoc parameters) nil t)
(when (re-search-forward eoc nil t)
(goto-char (match-beginning 0))
(delete-region (point-min) (line-beginning-position))))
(proto-stream-capability-open start stream parameters 'tls)))))
(defun proto-stream-open-shell (name buffer host service parameters)
(require 'format-spec)
(proto-stream-capability-open
(with-current-buffer buffer (point))
(let ((process-connection-type nil))
(start-process name buffer shell-file-name
shell-command-switch
(format-spec
(cadr (memq :shell-command parameters))
(plist-get parameters :shell-command)
(format-spec-make
?s host
?p service))))
parameters 'network))
parameters 'plain))
(defun proto-stream-capability-open (start stream parameters stream-type)
(let ((capability-command (cadr (memq :capability-command parameters)))
(greeting (proto-stream-get-response
stream start (proto-stream-eoc parameters))))
(let* ((capability-command (plist-get parameters :capability-command))
(eoc (plist-get parameters :end-of-command))
(greeting (proto-stream-get-response stream start eoc)))
(list stream greeting
(and capability-command
(proto-stream-command
stream capability-command (proto-stream-eoc parameters)))
(proto-stream-command stream capability-command eoc))
stream-type)))
(defun proto-stream-eoc (parameters)
(or (cadr (memq :end-of-command parameters))
"\r\n"))
(provide 'proto-stream)
;;; proto-stream.el ends here

View file

@ -330,7 +330,7 @@ Commands:
(save-excursion
(goto-char (point-min))
(let ((inhibit-read-only t))
(when (re-search-forward "^This \\w+ is advised.$" nil t)
(when (re-search-forward "^This [^[:space:]]+ is advised.$" nil t)
(put-text-property (match-beginning 0)
(match-end 0)
'face 'font-lock-warning-face))))

View file

@ -1964,31 +1964,24 @@ If INITIAL is non-nil, it specifies the initial input string."
(ido-set-matches)
(if (and ido-matches (eq ido-try-merged-list 'auto))
(setq ido-try-merged-list t))
(let
((minibuffer-local-completion-map
(if (memq ido-cur-item '(file dir))
minibuffer-local-completion-map
ido-completion-map))
(minibuffer-local-filename-completion-map
(if (memq ido-cur-item '(file dir))
ido-completion-map
minibuffer-local-filename-completion-map))
(max-mini-window-height (or ido-max-window-height
(and (boundp 'max-mini-window-height) max-mini-window-height)))
(let ((max-mini-window-height (or ido-max-window-height
(and (boundp 'max-mini-window-height)
max-mini-window-height)))
(ido-completing-read t)
(ido-require-match require-match)
(ido-use-mycompletion-depth (1+ (minibuffer-depth)))
(show-paren-mode nil))
(show-paren-mode nil)
;; Postpone history adding till later
(history-add-new-input nil))
;; prompt the user for the file name
(setq ido-exit nil)
(setq ido-final-text
(catch 'ido
(completing-read-default
(ido-make-prompt item prompt)
'(("dummy" . 1)) nil nil ; table predicate require-match
(prog1 ido-text-init (setq ido-text-init nil)) ;initial-contents
history))))
(ido-trace "completing-read" ido-final-text)
(read-from-minibuffer (ido-make-prompt item prompt)
(prog1 ido-text-init
(setq ido-text-init nil))
ido-completion-map nil history))))
(ido-trace "read-from-minibuffer" ido-final-text)
(if (get-buffer ido-completion-buffer)
(kill-buffer ido-completion-buffer))
@ -2158,6 +2151,7 @@ If INITIAL is non-nil, it specifies the initial input string."
(t
(setq done t))))))
(add-to-history (or history 'minibuffer-history) ido-selected)
ido-selected))
(defun ido-edit-input ()
@ -4491,17 +4485,13 @@ For details of keybindings, see `ido-find-file'."
;; Insert the match-status information:
(ido-set-common-completion)
(let ((inf (ido-completions
contents
minibuffer-completion-table
minibuffer-completion-predicate
(not minibuffer-completion-confirm))))
(let ((inf (ido-completions contents)))
(setq ido-show-confirm-message nil)
(ido-trace "inf" inf)
(insert inf))
))))
(defun ido-completions (name candidates predicate require-match)
(defun ido-completions (name)
;; Return the string that is displayed after the user's text.
;; Modified from `icomplete-completions'.

View file

@ -60,7 +60,7 @@ IMAGE-TYPE must be a pair (PREDICATE . TYPE). PREDICATE is called
with one argument, a string containing the image data. If PREDICATE returns
a non-nil value, TYPE is the image's type.")
(defconst image-type-file-name-regexps
(defvar image-type-file-name-regexps
'(("\\.png\\'" . png)
("\\.gif\\'" . gif)
("\\.jpe?g\\'" . jpeg)
@ -710,17 +710,19 @@ shall be displayed."
;;;###autoload
(defun imagemagick-register-types ()
"Register the file types that ImageMagick is able to handle."
(let ((im-types (imagemagick-types)))
(dolist (im-inhibit imagemagick-types-inhibit)
(setq im-types (remove im-inhibit im-types)))
(dolist (im-type im-types)
(let ((extension (downcase (symbol-name im-type))))
(push
(cons (concat "\\." extension "\\'") 'image-mode)
auto-mode-alist)
(push
(cons (concat "\\." extension "\\'") 'imagemagick)
image-type-file-name-regexps)))))
(if (fboundp 'imagemagick-types)
(let ((im-types (imagemagick-types)))
(dolist (im-inhibit imagemagick-types-inhibit)
(setq im-types (remove im-inhibit im-types)))
(dolist (im-type im-types)
(let ((extension (downcase (symbol-name im-type))))
(push
(cons (concat "\\." extension "\\'") 'image-mode)
auto-mode-alist)
(push
(cons (concat "\\." extension "\\'") 'imagemagick)
image-type-file-name-regexps))))
(error "Emacs was not built with ImageMagick support")))
(provide 'image)

View file

@ -39,8 +39,6 @@
(eval-when-compile
(require 'cl))
(require 'timer)
(defgroup midnight nil
"Run something every day at midnight."
:group 'calendar
@ -66,12 +64,6 @@ call `cancel-timer' or `timer-activate' on `midnight-timer' instead."
;;; time conversion
(defun midnight-time-float (num)
"Convert the float number of seconds since epoch to the list of 3 integers."
(let* ((div (ash 1 16)) (1st (floor num div)))
(list 1st (floor (- num (* (float div) 1st)))
(round (* 10000000 (mod num 1))))))
(defun midnight-buffer-display-time (&optional buffer)
"Return the time-stamp of BUFFER, or current buffer, as float."
(with-current-buffer (or buffer (current-buffer))

View file

@ -682,6 +682,8 @@ scroll the window of possible completions."
(t t)))))
(defun completion--flush-all-sorted-completions (&rest _ignore)
(remove-hook 'after-change-functions
'completion--flush-all-sorted-completions t)
(setq completion-cycling nil)
(setq completion-all-sorted-completions nil))
@ -1236,6 +1238,8 @@ Point needs to be somewhere between START and END."
(assert (<= start (point)) (<= (point) end))
;; FIXME: undisplay the *Completions* buffer once the completion is done.
(with-wrapper-hook
;; FIXME: Maybe we should use this hook to provide a "display
;; completions" operation as well.
completion-in-region-functions (start end collection predicate)
(let ((minibuffer-completion-table collection)
(minibuffer-completion-predicate predicate)
@ -1247,7 +1251,9 @@ Point needs to be somewhere between START and END."
(defvar completion-at-point-functions '(tags-completion-at-point-function)
"Special hook to find the completion table for the thing at point.
It is called without any argument and should return either nil,
Each function on this hook is called in turns without any argument and should
return either nil to mean that it is not applicable at point,
or t to mean that it already performed completion (discouraged),
or a function of no argument to perform completion (discouraged),
or a list of the form (START END COLLECTION &rest PROPS) where
START and END delimit the entity to complete and should include point,
@ -1265,7 +1271,7 @@ The completion method is determined by `completion-at-point-functions'."
'completion-at-point-functions)))
(cond
((functionp res) (funcall res))
(res
((consp res)
(let* ((plist (nthcdr 3 res))
(start (nth 0 res))
(end (nth 1 res))
@ -1273,7 +1279,8 @@ The completion method is determined by `completion-at-point-functions'."
(or (plist-get plist :annotation-function)
completion-annotate-function)))
(completion-in-region start end (nth 2 res)
(plist-get plist :predicate)))))))
(plist-get plist :predicate))))
(res)))) ;Maybe completion already happened and the function returned t.
;;; Key bindings.
@ -1480,8 +1487,9 @@ except that it passes the file name through `substitute-in-file-name'."
'completion--file-name-table)
"Internal subroutine for `read-file-name'. Do not call this.")
(defvar read-file-name-function nil
"If this is non-nil, `read-file-name' does its work by calling this function.")
(defvar read-file-name-function 'read-file-name-default
"The function called by `read-file-name' to do its work.
It should accept the same arguments as `read-file-name'.")
(defcustom read-file-name-completion-ignore-case
(if (memq system-type '(ms-dos windows-nt darwin cygwin))
@ -1519,7 +1527,7 @@ such as making the current buffer visit no file in the case of
(declare-function x-file-dialog "xfns.c"
(prompt dir &optional default-filename mustmatch only-dir-p))
(defun read-file-name-defaults (&optional dir initial)
(defun read-file-name--defaults (&optional dir initial)
(let ((default
(cond
;; With non-nil `initial', use `dir' as the first default.
@ -1586,6 +1594,12 @@ treated as equivalent to nil.
See also `read-file-name-completion-ignore-case'
and `read-file-name-function'."
(funcall (or read-file-name-function #'read-file-name-default)
prompt dir default-filename mustmatch initial predicate))
(defun read-file-name-default (prompt &optional dir default-filename mustmatch initial predicate)
"Default method for reading file names.
See `read-file-name' for the meaning of the arguments."
(unless dir (setq dir default-directory))
(unless (file-name-absolute-p dir) (setq dir (expand-file-name dir)))
(unless default-filename
@ -1607,9 +1621,6 @@ and `read-file-name-function'."
(minibuffer--double-dollars dir)))
(initial (cons (minibuffer--double-dollars initial) 0)))))
(if read-file-name-function
(funcall read-file-name-function
prompt dir default-filename mustmatch initial predicate)
(let ((completion-ignore-case read-file-name-completion-ignore-case)
(minibuffer-completing-file-name t)
(pred (or predicate 'file-exists-p))
@ -1645,7 +1656,7 @@ and `read-file-name-function'."
(lambda ()
(with-current-buffer
(window-buffer (minibuffer-selected-window))
(read-file-name-defaults dir initial)))))
(read-file-name--defaults dir initial)))))
(completing-read prompt 'read-file-name-internal
pred mustmatch insdef
'file-name-history default-filename)))
@ -1719,7 +1730,7 @@ and `read-file-name-function'."
(if history-delete-duplicates
(delete val1 file-name-history)
file-name-history)))))))
val)))))
val))))
(defun internal-complete-buffer-except (&optional buffer)
"Perform completion on all buffers excluding BUFFER.

View file

@ -211,7 +211,7 @@ until a successful connection is made."
:type '(repeat string))
(defcustom imap-process-connection-type nil
"*Value for `process-connection-type' to use for Kerberos4, GSSAPI and SSL.
"*Value for `process-connection-type' to use for Kerberos4, GSSAPI, shell, and SSL.
The `process-connection-type' variable controls the type of device
used to communicate with subprocesses. Values are nil to use a
pipe, or t or `pty' to use a pty. The value has no effect if the
@ -770,6 +770,7 @@ sure of changing the value of `foo'."
(let* ((port (or port imap-default-port))
(coding-system-for-read imap-coding-system-for-read)
(coding-system-for-write imap-coding-system-for-write)
(process-connection-type imap-process-connection-type)
(process (start-process
name buffer shell-file-name shell-command-switch
(format-spec

View file

@ -491,6 +491,7 @@ If ARG is non-nil, instead prompt for connection parameters."
(defvar rcirc-server nil) ; server provided by server
(defvar rcirc-server-name nil) ; server name given by 001 response
(defvar rcirc-timeout-timer nil)
(defvar rcirc-user-authenticated nil)
(defvar rcirc-user-disconnect nil)
(defvar rcirc-connecting nil)
(defvar rcirc-process nil)
@ -828,18 +829,21 @@ The list is updated automatically by `defun-rcirc-command'.")
(defun rcirc-completion-at-point ()
"Function used for `completion-at-point-functions' in `rcirc-mode'."
(let* ((beg (save-excursion
(if (re-search-backward " " rcirc-prompt-end-marker t)
(1+ (point))
rcirc-prompt-end-marker)))
(table (if (and (= beg rcirc-prompt-end-marker)
(eq (char-after beg) ?/))
(delete-dups
(nconc
(sort (copy-sequence rcirc-client-commands) 'string-lessp)
(sort (copy-sequence rcirc-server-commands) 'string-lessp)))
(rcirc-channel-nicks (rcirc-buffer-process) rcirc-target))))
(list beg (point) table)))
(and (rcirc-looking-at-input)
(let* ((beg (save-excursion
(if (re-search-backward " " rcirc-prompt-end-marker t)
(1+ (point))
rcirc-prompt-end-marker)))
(table (if (and (= beg rcirc-prompt-end-marker)
(eq (char-after beg) ?/))
(delete-dups
(nconc (sort (copy-sequence rcirc-client-commands)
'string-lessp)
(sort (copy-sequence rcirc-server-commands)
'string-lessp)))
(rcirc-channel-nicks (rcirc-buffer-process)
rcirc-target))))
(list beg (point) table))))
(defvar rcirc-completions nil)
(defvar rcirc-completion-start nil)
@ -848,6 +852,8 @@ The list is updated automatically by `defun-rcirc-command'.")
"Cycle through completions from list of nicks in channel or IRC commands.
IRC command completion is performed only if '/' is the first input char."
(interactive)
(unless (rcirc-looking-at-input)
(error "Point not located after rcirc prompt"))
(if (eq last-command this-command)
(setq rcirc-completions
(append (cdr rcirc-completions) (list (car rcirc-completions))))
@ -855,9 +861,10 @@ IRC command completion is performed only if '/' is the first input char."
(table (rcirc-completion-at-point)))
(setq rcirc-completion-start (car table))
(setq rcirc-completions
(all-completions (buffer-substring rcirc-completion-start
(cadr table))
(nth 2 table)))))
(and rcirc-completion-start
(all-completions (buffer-substring rcirc-completion-start
(cadr table))
(nth 2 table))))))
(let ((completion (car rcirc-completions)))
(when completion
(delete-region rcirc-completion-start (point))

View file

@ -6,6 +6,7 @@
;; Maintainer: FSF
;; Keywords: abbrev
;; Package: emacs
;; Obsolete-since: 24.1
;; This file is part of GNU Emacs.

View file

@ -648,7 +648,7 @@ detailed description of this mode.
(set (make-local-variable 'gud-minor-mode) 'gdbmi)
(setq comint-input-sender 'gdb-send)
(when (ring-empty-p comint-input-ring) ; cf shell-mode
(let ((hfile (expand-file-name (or (getenv "GBDHISTFILE")
(let ((hfile (expand-file-name (or (getenv "GDBHISTFILE")
(if (eq system-type 'ms-dos)
"_gdb_history"
".gdb_history"))))

View file

@ -3346,16 +3346,16 @@ and KILLP is t if a prefix arg was specified."
(delete-char 1)))
(forward-char -1)
(setq count (1- count))))))
(delete-backward-char
(let ((skip (cond ((eq backward-delete-char-untabify-method 'hungry) " \t")
(let* ((skip (cond ((eq backward-delete-char-untabify-method 'hungry) " \t")
((eq backward-delete-char-untabify-method 'all)
" \t\n\r"))))
(if skip
(let ((wh (- (point) (save-excursion (skip-chars-backward skip)
(point)))))
(+ arg (if (zerop wh) 0 (1- wh))))
arg))
killp))
" \t\n\r")))
(n (if skip
(let ((wh (- (point) (save-excursion (skip-chars-backward skip)
(point)))))
(+ arg (if (zerop wh) 0 (1- wh))))
arg)))
;; Avoid warning about delete-backward-char
(with-no-warnings (delete-backward-char n killp))))
(defun zap-to-char (arg char)
"Kill up to and including ARGth occurrence of CHAR.

View file

@ -1122,6 +1122,8 @@ is converted into a string by expressing it in decimal."
(make-obsolete-variable 'define-key-rebound-commands nil "23.2")
(make-obsolete-variable 'redisplay-end-trigger-functions 'jit-lock-register "23.1")
(make-obsolete-variable 'deferred-action-list 'post-command-hook "24.1")
(make-obsolete-variable 'deferred-action-function 'post-command-hook "24.1")
(make-obsolete 'window-redisplay-end-trigger nil "23.1")
(make-obsolete 'set-window-redisplay-end-trigger nil "23.1")

View file

@ -207,6 +207,12 @@ a symbol as a valid THING."
(cons opoint end))))
(error nil)))))
;; Defuns
(put 'defun 'beginning-op 'beginning-of-defun)
(put 'defun 'end-op 'end-of-defun)
(put 'defun 'forward-op 'end-of-defun)
;; Filenames and URLs www.com/foo%32bar
(defvar thing-at-point-file-name-chars "-~/[:alnum:]_.${}#%,:"

View file

@ -122,9 +122,6 @@
:group 'pcl-cvs
:prefix "log-view-")
;; Needed because log-view-mode-map inherits from widget-keymap. (Bug#5311)
(require 'wid-edit)
(easy-mmode-defmap log-view-mode-map
'(
;; FIXME: (copy-keymap special-mode-map) instead

View file

@ -45,10 +45,12 @@ AC_DEFUN([gl_EARLY],
# Code from module mktime:
# Code from module multiarch:
# Code from module readlink:
# Code from module socklen:
# Code from module stat:
# Code from module stdbool:
# Code from module stddef:
# Code from module stdint:
# Code from module stdio:
# Code from module stdlib:
# Code from module strftime:
# Code from module symlink:
@ -111,6 +113,8 @@ AC_DEFUN([gl_INIT],
# Code from module readlink:
gl_FUNC_READLINK
gl_UNISTD_MODULE_INDICATOR([readlink])
# Code from module socklen:
gl_TYPE_SOCKLEN_T
# Code from module stat:
gl_FUNC_STAT
gl_SYS_STAT_MODULE_INDICATOR([stat])
@ -120,6 +124,8 @@ AC_DEFUN([gl_INIT],
gl_STDDEF_H
# Code from module stdint:
gl_STDINT_H
# Code from module stdio:
gl_STDIO_H
# Code from module stdlib:
gl_STDLIB_H
# Code from module strftime:
@ -305,6 +311,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/stdbool.in.h
lib/stddef.in.h
lib/stdint.in.h
lib/stdio.in.h
lib/stdlib.in.h
lib/strftime.c
lib/strftime.h
@ -327,11 +334,13 @@ AC_DEFUN([gl_FILE_LIST], [
m4/mktime.m4
m4/multiarch.m4
m4/readlink.m4
m4/socklen.m4
m4/st_dm_mode.m4
m4/stat.m4
m4/stdbool.m4
m4/stddef_h.m4
m4/stdint.m4
m4/stdio_h.m4
m4/stdlib_h.m4
m4/strftime.m4
m4/symlink.m4

77
m4/socklen.m4 Normal file
View file

@ -0,0 +1,77 @@
# socklen.m4 serial 10
dnl Copyright (C) 2005-2007, 2009-2011 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl From Albert Chin, Windows fixes from Simon Josefsson.
dnl Check for socklen_t: historically on BSD it is an int, and in
dnl POSIX 1g it is a type of its own, but some platforms use different
dnl types for the argument to getsockopt, getpeername, etc.:
dnl HP-UX 10.20, IRIX 6.5, OSF/1 4.0, Interix 3.5, BeOS.
dnl So we have to test to find something that will work.
AC_DEFUN([gl_TYPE_SOCKLEN_T],
[AC_REQUIRE([gl_CHECK_SOCKET_HEADERS])dnl
AC_CHECK_TYPE([socklen_t], ,
[AC_MSG_CHECKING([for socklen_t equivalent])
AC_CACHE_VAL([gl_cv_socklen_t_equiv],
[# Systems have either "struct sockaddr *" or
# "void *" as the second argument to getpeername
gl_cv_socklen_t_equiv=
for arg2 in "struct sockaddr" void; do
for t in int size_t "unsigned int" "long int" "unsigned long int"; do
AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
[[#include <sys/types.h>
#include <sys/socket.h>
int getpeername (int, $arg2 *, $t *);]],
[[$t len;
getpeername (0, 0, &len);]])],
[gl_cv_socklen_t_equiv="$t"])
test "$gl_cv_socklen_t_equiv" != "" && break
done
test "$gl_cv_socklen_t_equiv" != "" && break
done
])
if test "$gl_cv_socklen_t_equiv" = ""; then
AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
fi
AC_MSG_RESULT([$gl_cv_socklen_t_equiv])
AC_DEFINE_UNQUOTED([socklen_t], [$gl_cv_socklen_t_equiv],
[type to use in place of socklen_t if not defined])],
[gl_SOCKET_HEADERS])])
dnl On mingw32, socklen_t is in ws2tcpip.h ('int'), so we try to find
dnl it there too. But on Cygwin, wc2tcpip.h must not be included. Users
dnl of this module should use the same include pattern as gl_SOCKET_HEADERS.
dnl When you change this macro, keep also in sync:
dnl - gl_CHECK_SOCKET_HEADERS,
dnl - the Include section of modules/socklen.
AC_DEFUN([gl_SOCKET_HEADERS],
[
/* <sys/types.h> is not needed according to POSIX, but the
<sys/socket.h> in i386-unknown-freebsd4.10 and
powerpc-apple-darwin5.5 required it. */
#include <sys/types.h>
#if HAVE_SYS_SOCKET_H
# include <sys/socket.h>
#elif HAVE_WS2TCPIP_H
# include <ws2tcpip.h>
#endif
])
dnl Tests for the existence of the header for socket facilities.
dnl Defines the C macros HAVE_SYS_SOCKET_H, HAVE_WS2TCPIP_H.
dnl This macro must match gl_SOCKET_HEADERS.
AC_DEFUN([gl_CHECK_SOCKET_HEADERS],
[AC_CHECK_HEADERS_ONCE([sys/socket.h])
if test $ac_cv_header_sys_socket_h = no; then
dnl We cannot use AC_CHECK_HEADERS_ONCE here, because that would make
dnl the check for those headers unconditional; yet cygwin reports
dnl that the headers are present but cannot be compiled (since on
dnl cygwin, all socket information should come from sys/socket.h).
AC_CHECK_HEADERS([ws2tcpip.h])
fi
])

140
m4/stdio_h.m4 Normal file
View file

@ -0,0 +1,140 @@
# stdio_h.m4 serial 33
dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_STDIO_H],
[
AC_REQUIRE([gl_STDIO_H_DEFAULTS])
AC_REQUIRE([AC_C_INLINE])
gl_NEXT_HEADERS([stdio.h])
dnl No need to create extra modules for these functions. Everyone who uses
dnl <stdio.h> likely needs them.
GNULIB_FPRINTF=1
GNULIB_PRINTF=1
GNULIB_VFPRINTF=1
GNULIB_VPRINTF=1
GNULIB_FPUTC=1
GNULIB_PUTC=1
GNULIB_PUTCHAR=1
GNULIB_FPUTS=1
GNULIB_PUTS=1
GNULIB_FWRITE=1
dnl This ifdef is just an optimization, to avoid performing a configure
dnl check whose result is not used. It does not make the test of
dnl GNULIB_STDIO_H_SIGPIPE or GNULIB_SIGPIPE redundant.
m4_ifdef([gl_SIGNAL_SIGPIPE], [
gl_SIGNAL_SIGPIPE
if test $gl_cv_header_signal_h_SIGPIPE != yes; then
REPLACE_STDIO_WRITE_FUNCS=1
AC_LIBOBJ([stdio-write])
fi
])
dnl Check for declarations of anything we want to poison if the
dnl corresponding gnulib module is not in use, and which is not
dnl guaranteed by C89.
gl_WARN_ON_USE_PREPARE([[#include <stdio.h>
]], [dprintf fpurge fseeko ftello getdelim getline popen renameat
snprintf tmpfile vdprintf vsnprintf])
])
AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
[
dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
AC_REQUIRE([gl_STDIO_H_DEFAULTS])
gl_MODULE_INDICATOR_SET_VARIABLE([$1])
dnl Define it also as a C macro, for the benefit of the unit tests.
gl_MODULE_INDICATOR_FOR_TESTS([$1])
])
AC_DEFUN([gl_STDIO_H_DEFAULTS],
[
GNULIB_DPRINTF=0; AC_SUBST([GNULIB_DPRINTF])
GNULIB_FCLOSE=0; AC_SUBST([GNULIB_FCLOSE])
GNULIB_FFLUSH=0; AC_SUBST([GNULIB_FFLUSH])
GNULIB_FOPEN=0; AC_SUBST([GNULIB_FOPEN])
GNULIB_FPRINTF=0; AC_SUBST([GNULIB_FPRINTF])
GNULIB_FPRINTF_POSIX=0; AC_SUBST([GNULIB_FPRINTF_POSIX])
GNULIB_FPURGE=0; AC_SUBST([GNULIB_FPURGE])
GNULIB_FPUTC=0; AC_SUBST([GNULIB_FPUTC])
GNULIB_FPUTS=0; AC_SUBST([GNULIB_FPUTS])
GNULIB_FREOPEN=0; AC_SUBST([GNULIB_FREOPEN])
GNULIB_FSEEK=0; AC_SUBST([GNULIB_FSEEK])
GNULIB_FSEEKO=0; AC_SUBST([GNULIB_FSEEKO])
GNULIB_FTELL=0; AC_SUBST([GNULIB_FTELL])
GNULIB_FTELLO=0; AC_SUBST([GNULIB_FTELLO])
GNULIB_FWRITE=0; AC_SUBST([GNULIB_FWRITE])
GNULIB_GETDELIM=0; AC_SUBST([GNULIB_GETDELIM])
GNULIB_GETLINE=0; AC_SUBST([GNULIB_GETLINE])
GNULIB_OBSTACK_PRINTF=0; AC_SUBST([GNULIB_OBSTACK_PRINTF])
GNULIB_OBSTACK_PRINTF_POSIX=0; AC_SUBST([GNULIB_OBSTACK_PRINTF_POSIX])
GNULIB_PERROR=0; AC_SUBST([GNULIB_PERROR])
GNULIB_POPEN=0; AC_SUBST([GNULIB_POPEN])
GNULIB_PRINTF=0; AC_SUBST([GNULIB_PRINTF])
GNULIB_PRINTF_POSIX=0; AC_SUBST([GNULIB_PRINTF_POSIX])
GNULIB_PUTC=0; AC_SUBST([GNULIB_PUTC])
GNULIB_PUTCHAR=0; AC_SUBST([GNULIB_PUTCHAR])
GNULIB_PUTS=0; AC_SUBST([GNULIB_PUTS])
GNULIB_REMOVE=0; AC_SUBST([GNULIB_REMOVE])
GNULIB_RENAME=0; AC_SUBST([GNULIB_RENAME])
GNULIB_RENAMEAT=0; AC_SUBST([GNULIB_RENAMEAT])
GNULIB_SNPRINTF=0; AC_SUBST([GNULIB_SNPRINTF])
GNULIB_SPRINTF_POSIX=0; AC_SUBST([GNULIB_SPRINTF_POSIX])
GNULIB_STDIO_H_SIGPIPE=0; AC_SUBST([GNULIB_STDIO_H_SIGPIPE])
GNULIB_TMPFILE=0; AC_SUBST([GNULIB_TMPFILE])
GNULIB_VASPRINTF=0; AC_SUBST([GNULIB_VASPRINTF])
GNULIB_VDPRINTF=0; AC_SUBST([GNULIB_VDPRINTF])
GNULIB_VFPRINTF=0; AC_SUBST([GNULIB_VFPRINTF])
GNULIB_VFPRINTF_POSIX=0; AC_SUBST([GNULIB_VFPRINTF_POSIX])
GNULIB_VPRINTF=0; AC_SUBST([GNULIB_VPRINTF])
GNULIB_VPRINTF_POSIX=0; AC_SUBST([GNULIB_VPRINTF_POSIX])
GNULIB_VSNPRINTF=0; AC_SUBST([GNULIB_VSNPRINTF])
GNULIB_VSPRINTF_POSIX=0; AC_SUBST([GNULIB_VSPRINTF_POSIX])
dnl Assume proper GNU behavior unless another module says otherwise.
HAVE_DECL_FPURGE=1; AC_SUBST([HAVE_DECL_FPURGE])
HAVE_DECL_FSEEKO=1; AC_SUBST([HAVE_DECL_FSEEKO])
HAVE_DECL_FTELLO=1; AC_SUBST([HAVE_DECL_FTELLO])
HAVE_DECL_GETDELIM=1; AC_SUBST([HAVE_DECL_GETDELIM])
HAVE_DECL_GETLINE=1; AC_SUBST([HAVE_DECL_GETLINE])
HAVE_DECL_OBSTACK_PRINTF=1; AC_SUBST([HAVE_DECL_OBSTACK_PRINTF])
HAVE_DECL_SNPRINTF=1; AC_SUBST([HAVE_DECL_SNPRINTF])
HAVE_DECL_VSNPRINTF=1; AC_SUBST([HAVE_DECL_VSNPRINTF])
HAVE_DPRINTF=1; AC_SUBST([HAVE_DPRINTF])
HAVE_FSEEKO=1; AC_SUBST([HAVE_FSEEKO])
HAVE_FTELLO=1; AC_SUBST([HAVE_FTELLO])
HAVE_RENAMEAT=1; AC_SUBST([HAVE_RENAMEAT])
HAVE_VASPRINTF=1; AC_SUBST([HAVE_VASPRINTF])
HAVE_VDPRINTF=1; AC_SUBST([HAVE_VDPRINTF])
REPLACE_DPRINTF=0; AC_SUBST([REPLACE_DPRINTF])
REPLACE_FCLOSE=0; AC_SUBST([REPLACE_FCLOSE])
REPLACE_FFLUSH=0; AC_SUBST([REPLACE_FFLUSH])
REPLACE_FOPEN=0; AC_SUBST([REPLACE_FOPEN])
REPLACE_FPRINTF=0; AC_SUBST([REPLACE_FPRINTF])
REPLACE_FPURGE=0; AC_SUBST([REPLACE_FPURGE])
REPLACE_FREOPEN=0; AC_SUBST([REPLACE_FREOPEN])
REPLACE_FSEEK=0; AC_SUBST([REPLACE_FSEEK])
REPLACE_FSEEKO=0; AC_SUBST([REPLACE_FSEEKO])
REPLACE_FTELL=0; AC_SUBST([REPLACE_FTELL])
REPLACE_FTELLO=0; AC_SUBST([REPLACE_FTELLO])
REPLACE_GETDELIM=0; AC_SUBST([REPLACE_GETDELIM])
REPLACE_GETLINE=0; AC_SUBST([REPLACE_GETLINE])
REPLACE_OBSTACK_PRINTF=0; AC_SUBST([REPLACE_OBSTACK_PRINTF])
REPLACE_PERROR=0; AC_SUBST([REPLACE_PERROR])
REPLACE_POPEN=0; AC_SUBST([REPLACE_POPEN])
REPLACE_PRINTF=0; AC_SUBST([REPLACE_PRINTF])
REPLACE_REMOVE=0; AC_SUBST([REPLACE_REMOVE])
REPLACE_RENAME=0; AC_SUBST([REPLACE_RENAME])
REPLACE_RENAMEAT=0; AC_SUBST([REPLACE_RENAMEAT])
REPLACE_SNPRINTF=0; AC_SUBST([REPLACE_SNPRINTF])
REPLACE_SPRINTF=0; AC_SUBST([REPLACE_SPRINTF])
REPLACE_STDIO_WRITE_FUNCS=0; AC_SUBST([REPLACE_STDIO_WRITE_FUNCS])
REPLACE_TMPFILE=0; AC_SUBST([REPLACE_TMPFILE])
REPLACE_VASPRINTF=0; AC_SUBST([REPLACE_VASPRINTF])
REPLACE_VDPRINTF=0; AC_SUBST([REPLACE_VDPRINTF])
REPLACE_VFPRINTF=0; AC_SUBST([REPLACE_VFPRINTF])
REPLACE_VPRINTF=0; AC_SUBST([REPLACE_VPRINTF])
REPLACE_VSNPRINTF=0; AC_SUBST([REPLACE_VSNPRINTF])
REPLACE_VSPRINTF=0; AC_SUBST([REPLACE_VSPRINTF])
])

View file

@ -286,7 +286,7 @@ echo "Making links to top-level files"
ln INSTALL README BUGS move-if-change ${tempdir}
ln ChangeLog Makefile.in configure configure.in ${tempdir}
ln config.bat make-dist update-subdirs vpath.sed .dir-locals.el ${tempdir}
ln mkinstalldirs config.sub config.guess install-sh ${tempdir}
ln config.sub config.guess install-sh ${tempdir}
ln aclocal.m4 ${tempdir}
ln compile depcomp missing ${tempdir}
ln arg-nonnull.h c++defs.h warn-on-use.h ${tempdir}

View file

@ -1,162 +0,0 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
scriptversion=2009-04-28.21; # UTC
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain.
#
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
IFS=" "" $nl"
errstatus=0
dirmode=
usage="\
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
Create each directory DIR (with mode MODE, if specified), including all
leading file name components.
Report bugs to <bug-automake@gnu.org>."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage"
exit $?
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--version)
echo "$0 $scriptversion"
exit $?
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file
do
if test -d "$file"; then
shift
else
break
fi
done
case $# in
0) exit 0 ;;
esac
# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
# mkdir -p a/c at the same time, both will detect that a is missing,
# one will create a, then the other will try to create a and die with
# a "File exists" error. This is a problem when calling mkinstalldirs
# from a parallel make. We use --version in the probe to restrict
# ourselves to GNU mkdir, which is thread-safe.
case $dirmode in
'')
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
else
# On NextStep and OpenStep, the `mkdir' command does not
# recognize any option. It will interpret all options as
# directories to create, and then abort because `.' already
# exists.
test -d ./-p && rmdir ./-p
test -d ./--version && rmdir ./--version
fi
;;
*)
if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
test ! -d ./--version; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
else
# Clean up after NextStep and OpenStep mkdir.
for d in ./-m ./-p ./--version "./$dirmode";
do
test -d $d && rmdir $d
done
fi
;;
esac
for file
do
case $file in
/*) pathcomp=/ ;;
*) pathcomp= ;;
esac
oIFS=$IFS
IFS=/
set fnord $file
shift
IFS=$oIFS
for d
do
test "x$d" = x && continue
pathcomp=$pathcomp$d
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp=$pathcomp/
done
done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View file

@ -1,3 +1,10 @@
2011-03-25 Eli Zaretskii <eliz@gnu.org>
* sedlibmk.inp: Adapt to addition of the gnulib stdio module.
Add a description of what needs to be done when a new gnulib
module is added.
(MKDIR_P): Fix replacement command.
2011-02-26 Eli Zaretskii <eliz@gnu.org>
* sedlibmk.inp (BITSIZEOF_PTRDIFF_T, BITSIZEOF_SIG_ATOMIC_T)

View file

@ -16,6 +16,81 @@
#
# ----------------------------------------------------------------------
#
# Checklist to add a new gnulib module:
#
# . If the module includes source files that need to be compiled, add
# the corresponding .o file names to the list that gets assigned to
# the gl_LIBOBJS variable.
#
# . If the module defines functions that need to replace DJGPP
# functions, edit the appropriate REPLACE_foo variables to 1;
# otherwise edit them to zero:
#
# /^REPLACE_CALLOC *=/s/@REPLACE_CALLOC@/0/
#
# . If the module is a header or adds headers, edit the corresponding
# variable to either an empty value or to the name of the header.
# Examples:
#
# /^STDINT_H *=/s/@[^@\n]*@/stdint.h/ -- stdint.h is needed
# /^STDDEF_H *=/s/@[^@\n]*@// -- stddef.h is not needed
#
# . Also edit the NEXT_foo and NEXT_AS_FIRST_DIRECTIVE_foo_H variable
# as appropriately: to an empty value if the gnulib header is not
# used, and to the corresponding DJGPP header name otherwise.
# Examples:
#
# /^NEXT_STDDEF_H *=/s/@[^@\n]*@//
# /^NEXT_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
# /^NEXT_AS_FIRST_DIRECTIVE_GETOPT_H *=/s/@[^@\n]*@/<getopt.h>/
# /^NEXT_AS_FIRST_DIRECTIVE_STDDEF_H *=/s/@[^@\n]*@//
#
# . Note that some gnulib headers cannot be left unused: those for
# which there's no corresponding foo_H variable in
# autogen/Makefile.in (example: stdio.h). For these the "not
# needed" path is not applicable.
#
# . If the header is needed, edit all the variables it uses as
# appropriate. In general, if DJGPP has the corresponding feature,
# the value of the corresponding HAVE_foo should be set to what
# DJGPP has, and the corresponding GNULIB_foo variable should be
# edited to zero. If the feature is not available, the HAVE_foo
# variable should be edited to zero and the corresponding
# GNULIB_foo variable should be edited to 1 if the gnulib
# replacement can work for DJGPP (a rare phenomenon), zero
# otherwise.
#
# . Some gnulib header files have more complex recipes in
# autogen/Makefile.in than others. The tell-tale sign of such a
# recipe is that the input redirection from the .in.h file is not
# present at the end of the command, like this:
#
# -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
# } > $@-t && \
# mv $@-t $@
#
# as opposed to this:
#
# -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
# < $(srcdir)/sys_stat.in.h; \
# } > $@-t && \
# mv $@-t $@
#
# For those recipes that do _not_ have redirection at the end of
# the command, add a block of Sed commands like this:
#
# /^stdio\.h:/,/^ [ ]*mv /{
# s/'\; \\ *$/' >> $@-t/
# }
#
# The following Awk script is useful for editing portions of
# autogen/Makefile.in into Sed commands that define the corresponding
# variables to zero (which is what is required in the absolute
# majority of cases):
#
# { printf "/^%s *=/s/%s/0/\n",$1,$3}
#
# ----------------------------------------------------------------------
# Replace @..@ constants.
/^\# @configure_input@/s!@configure_input@!lib/Makefile. Generated from Makefile.in by config.bat!
/^@SET_MAKE@$/s/@SET_MAKE@//
@ -64,6 +139,7 @@ am__cd = cd
/^GNULIB_CANONICALIZE_FILE_NAME *=/s/@GNULIB_CANONICALIZE_FILE_NAME@/0/
/^GNULIB_CHOWN *=/s/@GNULIB_CHOWN@/0/
/^GNULIB_CLOSE *=/s/@GNULIB_CLOSE@/0/
/^GNULIB_DPRINTF *=/s/@GNULIB_DPRINTF@/0/
/^GNULIB_DUP2 *=/s/@GNULIB_DUP2@/0/
/^GNULIB_DUP3 *=/s/@GNULIB_DUP3@/1/
/^GNULIB_ENVIRON *=/s/@GNULIB_ENVIRON@/0/
@ -72,15 +148,31 @@ am__cd = cd
/^GNULIB_FCHDIR *=/s/@GNULIB_FCHDIR@/0/
/^GNULIB_FCHOWNAT *=/s/@GNULIB_FCHOWNAT@/0/
/^GNULIB_FCHMODAT *=/s/@GNULIB_FCHMODAT@/0/
/^GNULIB_FCLOSE *=/s/@GNULIB_FCLOSE@/0/
/^GNULIB_FFLUSH *=/s/@GNULIB_FFLUSH@/0/
/^GNULIB_FOPEN *=/s/@GNULIB_FOPEN@/0/
/^GNULIB_FPRINTF *=/s/@GNULIB_FPRINTF@/0/
/^GNULIB_FPRINTF_POSIX *=/s/@GNULIB_FPRINTF_POSIX@/0/
/^GNULIB_FPURGE *=/s/@GNULIB_FPURGE@/0/
/^GNULIB_FPUTC *=/s/@GNULIB_FPUTC@/0/
/^GNULIB_FPUTS *=/s/@GNULIB_FPUTS@/0/
/^GNULIB_FREOPEN *=/s/@GNULIB_FREOPEN@/0/
/^GNULIB_FSEEK *=/s/@GNULIB_FSEEK@/0/
/^GNULIB_FSEEKO *=/s/@GNULIB_FSEEKO@/0/
/^GNULIB_FSTATAT *=/s/@GNULIB_FSTATAT@/0/
/^GNULIB_FSYNC *=/s/@GNULIB_FSYNC@/0/
/^GNULIB_FTELL *=/s/@GNULIB_FTELL@/0/
/^GNULIB_FTELLO *=/s/@GNULIB_FTELLO@/0/
/^GNULIB_FTRUNCATE *=/s/@GNULIB_FTRUNCATE@/0/
/^GNULIB_FUTIMENS *=/s/@GNULIB_FUTIMENS@/0/
/^GNULIB_FWRITE *=/s/@GNULIB_FWRITE@/0/
/^GNULIB_GETCWD *=/s/@GNULIB_GETCWD@/0/
/^GNULIB_GETDELIM *=/s/@GNULIB_GETDELIM@/0/
/^GNULIB_GETDOMAINNAME *=/s/@GNULIB_GETDOMAINNAME@/0/
/^GNULIB_GETDTABLESIZE *=/s/@GNULIB_GETDTABLESIZE@/0/
/^GNULIB_GETGROUPS *=/s/@GNULIB_GETGROUPS@/0/
/^GNULIB_GETHOSTNAME *=/s/@GNULIB_GETHOSTNAME@/0/
/^GNULIB_GETLINE *=/s/@GNULIB_GETLINE@/0/
/^GNULIB_GETLOADAVG *=/s/@GNULIB_GETLOADAVG@/1/
/^GNULIB_GETLOGIN *=/s/@GNULIB_GETLOGIN@/0/
/^GNULIB_GETLOGIN_R *=/s/@GNULIB_GETLOGIN_R@/0/
@ -108,22 +200,37 @@ am__cd = cd
/^GNULIB_MKSTEMPS *=/s/@GNULIB_MKSTEMPS@/0/
/^GNULIB_MKTIME *=/s/@GNULIB_MKTIME@/0/
/^GNULIB_NANOSLEEP *=/s/@GNULIB_NANOSLEEP@/0/
/^GNULIB_OBSTACK_PRINTF *=/s/@GNULIB_OBSTACK_PRINTF@/0/
/^GNULIB_OBSTACK_PRINTF_POSIX *=/s/@GNULIB_OBSTACK_PRINTF_POSIX@/0/
/^GNULIB_PERROR *=/s/@GNULIB_PERROR@/0/
/^GNULIB_PIPE *=/s/@GNULIB_PIPE@/0/
/^GNULIB_PIPE2 *=/s/@GNULIB_PIPE2@/0/
/^GNULIB_POPEN *=/s/@GNULIB_POPEN@/0/
/^GNULIB_PREAD *=/s/@GNULIB_PREAD@/0/
/^GNULIB_PRINTF *=/s/@GNULIB_PRINTF@/0/
/^GNULIB_PRINTF_POSIX *=/s/@GNULIB_PRINTF_POSIX@/0/
/^GNULIB_PTSNAME *=/s/@GNULIB_PTSNAME@/0/
/^GNULIB_PUTC *=/s/@GNULIB_PUTC@/0/
/^GNULIB_PUTCHAR *=/s/@GNULIB_PUTCHAR@/0/
/^GNULIB_PUTENV *=/s/@GNULIB_PUTENV@/0/
/^GNULIB_PUTS *=/s/@GNULIB_PUTS@/0/
/^GNULIB_PWRITE *=/s/@GNULIB_PWRITE@/0/
/^GNULIB_RANDOM_R *=/s/@GNULIB_RANDOM_R@/0/
/^GNULIB_READLINK *=/s/@GNULIB_READLINK@/0/
/^GNULIB_READLINKAT *=/s/@GNULIB_READLINKAT@/0/
/^GNULIB_REALLOC_POSIX *=/s/@GNULIB_REALLOC_POSIX@/0/
/^GNULIB_REALPATH *=/s/@GNULIB_REALPATH@/0/
/^GNULIB_REMOVE *=/s/@GNULIB_REMOVE@/0/
/^GNULIB_RENAME *=/s/@GNULIB_RENAME@/0/
/^GNULIB_RENAMEAT *=/s/@GNULIB_RENAMEAT@/0/
/^GNULIB_RMDIR *=/s/@GNULIB_RMDIR@/0/
/^GNULIB_RPMATCH *=/s/@GNULIB_RPMATCH@/0/
/^GNULIB_SETENV *=/s/@GNULIB_SETENV@/0/
/^GNULIB_SLEEP *=/s/@GNULIB_SLEEP@/0/
/^GNULIB_SNPRINTF *=/s/@GNULIB_SNPRINTF@/0/
/^GNULIB_SPRINTF_POSIX *=/s/@GNULIB_SPRINTF_POSIX@/0/
/^GNULIB_STAT *=/s/@GNULIB_STAT@/0/
/^GNULIB_STDIO_H_SIGPIPE *=/s/@GNULIB_STDIO_H_SIGPIPE@/0/
/^GNULIB_STRPTIME *=/s/@GNULIB_STRPTIME@/0/
/^GNULIB_STRTOD *=/s/@GNULIB_STRTOD@/0/
/^GNULIB_STRTOLL *=/s/@GNULIB_STRTOLL@/0/
@ -133,6 +240,7 @@ am__cd = cd
/^GNULIB_SYSTEM_POSIX *=/s/@GNULIB_SYSTEM_POSIX@/0/
/^GNULIB_TIMEGM *=/s/@GNULIB_TIMEGM@/0/
/^GNULIB_TIME_R *=/s/@GNULIB_TIME_R@/1/
/^GNULIB_TMPFILE *=/s/@GNULIB_TMPFILE@/0/
/^GNULIB_TTYNAME_R *=/s/@GNULIB_TTYNAME_R@/0/
/^GNULIB_UNISTD_H_GETOPT *=/s/@GNULIB_UNISTD_H_GETOPT@/1/
/^GNULIB_UNISTD_H_SIGPIPE *=/s/@GNULIB_UNISTD_H_SIGPIPE@/0/
@ -142,6 +250,14 @@ am__cd = cd
/^GNULIB_UNSETENV *=/s/@GNULIB_UNSETENV@/1/
/^GNULIB_USLEEP *=/s/@GNULIB_USLEEP@/0/
/^GNULIB_UTIMENSAT *=/s/@GNULIB_UTIMENSAT@/0/
/^GNULIB_VASPRINTF *=/s/@GNULIB_VASPRINTF@/0/
/^GNULIB_VDPRINTF *=/s/@GNULIB_VDPRINTF@/0/
/^GNULIB_VFPRINTF *=/s/@GNULIB_VFPRINTF@/0/
/^GNULIB_VFPRINTF_POSIX *=/s/@GNULIB_VFPRINTF_POSIX@/0/
/^GNULIB_VPRINTF *=/s/@GNULIB_VPRINTF@/0/
/^GNULIB_VPRINTF_POSIX *=/s/@GNULIB_VPRINTF_POSIX@/0/
/^GNULIB_VSNPRINTF *=/s/@GNULIB_VSNPRINTF@/0/
/^GNULIB_VSPRINTF_POSIX *=/s/@GNULIB_VSPRINTF_POSIX@/0/
/^GNULIB_WCTOMB *=/s/@GNULIB_WCTOMB@/0/
/^GNULIB_WRITE *=/s/@GNULIB_WRITE@/0/
/^GNULIB__EXIT *=/s/@GNULIB__EXIT@/0/
@ -150,15 +266,24 @@ am__cd = cd
/^HAVE_CHOWN *=/s/@HAVE_CHOWN@/1/
/^HAVE_DECL_ENVIRON *=/s/@HAVE_DECL_ENVIRON@/1/
/^HAVE_DECL_FCHDIR *=/s/@HAVE_DECL_FCHDIR@/0/
/^HAVE_DECL_FPURGE *=/s/@HAVE_DECL_FPURGE@//
/^HAVE_DECL_FSEEKO *=/s/@HAVE_DECL_FSEEKO@/0/
/^HAVE_DECL_FTELLO *=/s/@HAVE_DECL_FTELLO@/0/
/^HAVE_DECL_GETDELIM *=/s/@HAVE_DECL_GETDELIM@/0/
/^HAVE_DECL_GETDOMAINNAME *=/s/@HAVE_DECL_GETDOMAINNAME@/0/
/^HAVE_DECL_GETLINE *=/s/@HAVE_DECL_GETLINE@/0/
/^HAVE_DECL_GETLOADAVG *=/s/@HAVE_DECL_GETLOADAVG@/0/
/^HAVE_DECL_GETLOGIN_R *=/s/@HAVE_DECL_GETLOGIN_R@/0/
/^HAVE_DECL_GETPAGESIZE *=/s/@HAVE_DECL_GETPAGESIZE@/1/
/^HAVE_DECL_GETUSERSHELL *=/s/@HAVE_DECL_GETUSERSHELL@/0/
/^HAVE_DECL_LOCALTIME_R *=/s/@HAVE_DECL_LOCALTIME_R@/0/
/^HAVE_DECL_OBSTACK_PRINTF *=/s/@HAVE_DECL_OBSTACK_PRINTF@/0/
/^HAVE_DECL_SETENV *=/s/@HAVE_DECL_SETENV@/1/
/^HAVE_DECL_SNPRINTF *=/s/@HAVE_DECL_SNPRINTF@/0/
/^HAVE_DECL_TTYNAME_R *=/s/@HAVE_DECL_TTYNAME_R@/0/
/^HAVE_DECL_UNSETENV *=/s/@HAVE_DECL_UNSETENV@/0/
/^HAVE_DECL_VSNPRINTF *=/s/@HAVE_DECL_VSNPRINTF@/0/
/^HAVE_DPRINTF *=/s/@HAVE_DPRINTF@/0/
/^HAVE_DUP2 *=/s/@HAVE_DUP2@/1/
/^HAVE_DUP3 *=/s/@HAVE_DUP3@/0/
/^HAVE_EUIDACCESS *=/s/@HAVE_EUIDACCESS@/0/
@ -166,8 +291,10 @@ am__cd = cd
/^HAVE_FCHDIR *=/s/@HAVE_FCHDIR@/0/
/^HAVE_FCHMODAT *=/s/@HAVE_FCHMODAT@/0/
/^HAVE_FCHOWNAT *=/s/@HAVE_FCHOWNAT@/0/
/^HAVE_FSEEKO *=/s/@HAVE_FSEEKO@/0/
/^HAVE_FSTATAT *=/s/@HAVE_FSTATAT@/0/
/^HAVE_FSYNC *=/s/@HAVE_FSYNC@/1/
/^HAVE_FTELLO *=/s/@HAVE_FTELLO@/0/
/^HAVE_FTRUNCATE *=/s/@HAVE_FTRUNCATE@/1/
/^HAVE_FUTIMENS *=/s/@HAVE_FUTIMENS@/0/
/^HAVE_GETDTABLESIZE *=/s/@HAVE_GETDTABLESIZE@/0/
@ -208,6 +335,7 @@ am__cd = cd
/^HAVE_READLINK *=/s/@HAVE_READLINK@/0/
/^HAVE_READLINKAT *=/s/@HAVE_READLINKAT@/0/
/^HAVE_REALPATH *=/s/@HAVE_REALPATH@/0/
/^HAVE_RENAMEAT *=/s/@HAVE_RENAMEAT@/0/
/^HAVE_RPMATCH *=/s/@HAVE_RPMATCH@/0/
/^HAVE_SETENV *=/s/@HAVE_SETENV@/1/
/^HAVE_SIGNED_SIG_ATOMIC_T *=/s/@HAVE_SIGNED_SIG_ATOMIC_T@/1/
@ -234,6 +362,8 @@ am__cd = cd
/^HAVE_UNSIGNED_LONG_LONG_INT *=/s/@HAVE_UNSIGNED_LONG_LONG_INT@/1/
/^HAVE_USLEEP *=/s/@HAVE_USLEEP@/1/
/^HAVE_UTIMENSAT *=/s/@HAVE_UTIMENSAT@/0/
/^HAVE_VASPRINTF *=/s/@HAVE_VASPRINTF@/0/
/^HAVE_VDPRINTF *=/s/@HAVE_VDPRINTF@/0/
/^HAVE_WCHAR_H *=/s/@HAVE_WCHAR_H@/1/
/^HAVE_WCHAR_T *=/s/@HAVE_WCHAR_T@/1/
/^HAVE_XSERVER *=/s/@HAVE_XSERVER@/0/
@ -250,12 +380,14 @@ am__cd = cd
/^NEXT_AS_FIRST_DIRECTIVE_GETOPT_H *=/s/@[^@\n]*@/<getopt.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDDEF_H *=/s/@[^@\n]*@//
/^NEXT_AS_FIRST_DIRECTIVE_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDIO_H *=/s/@[^@\n]*@/<stdio.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDLIB_H *=/s/@[^@\n]*@/<stdlib.h>/
/^NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H *=/s!@[^@\n]*@!<sys/stat.h>!
/^NEXT_AS_FIRST_DIRECTIVE_TIME_H *=/s/@[^@\n]*@/<time.h>/
/^NEXT_AS_FIRST_DIRECTIVE_UNISTD_H *=/s/@[^@\n]*@/<unistd.h>/
/^NEXT_GETOPT_H *=/s/@[^@\n]*@/<getopt.h>/
/^NEXT_STDDEF_H *=/s/@[^@\n]*@//
/^NEXT_STDIO_H *=/s/@[^@\n]*@/<stdio.h>/
/^NEXT_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
/^NEXT_STDLIB_H *=/s/@[^@\n]*@/<stdlib.h>/
/^NEXT_SYS_STAT_H *=/s!@[^@\n]*@!<sys/stat.h>!
@ -270,13 +402,27 @@ am__cd = cd
/^REPLACE_CANONICALIZE_FILE_NAME *=/s/@REPLACE_CANONICALIZE_FILE_NAME@/0/
/^REPLACE_CHOWN *=/s/@REPLACE_CHOWN@/0/
/^REPLACE_CLOSE *=/s/@REPLACE_CLOSE@/0/
/^REPLACE_DPRINTF *=/s/@REPLACE_DPRINTF@/0/
/^REPLACE_DUP *=/s/@REPLACE_DUP@/0/
/^REPLACE_DUP2 *=/s/@REPLACE_DUP2@/0/
/^REPLACE_FCHOWNAT *=/s/@REPLACE_FCHOWNAT@/0/
/^REPLACE_FCLOSE *=/s/@REPLACE_FCLOSE@/0/
/^REPLACE_FFLUSH *=/s/@REPLACE_FFLUSH@/0/
/^REPLACE_FOPEN *=/s/@REPLACE_FOPEN@/0/
/^REPLACE_FPRINTF *=/s/@REPLACE_FPRINTF@/0/
/^REPLACE_FPURGE *=/s/@REPLACE_FPURGE@/0/
/^REPLACE_FREOPEN *=/s/@REPLACE_FREOPEN@/0/
/^REPLACE_FSEEK *=/s/@REPLACE_FSEEK@/0/
/^REPLACE_FSEEKO *=/s/@REPLACE_FSEEKO@/0/
/^REPLACE_FSTAT *=/s/@REPLACE_FSTAT@/0/
/^REPLACE_FSTATAT *=/s/@REPLACE_FSTATAT@/0/
/^REPLACE_FTELL *=/s/@REPLACE_FTELL@/0/
/^REPLACE_FTELLO *=/s/@REPLACE_FTELLO@/0/
/^REPLACE_GETCWD *=/s/@REPLACE_GETCWD@/0/
/^REPLACE_GETDELIM *=/s/@REPLACE_GETDELIM@/0/
/^REPLACE_GETDOMAINNAME *=/s/@REPLACE_GETDOMAINNAME@/0/
/^REPLACE_GETGROUPS *=/s/@REPLACE_GETGROUPS@/0/
/^REPLACE_GETLINE *=/s/@REPLACE_GETLINE@/0/
/^REPLACE_GETLOGIN_R *=/s/@REPLACE_GETLOGIN_R@/0/
/^REPLACE_GETPAGESIZE *=/s/@REPLACE_GETPAGESIZE@/0/
/^REPLACE_LCHOWN *=/s/@REPLACE_LCHOWN@/0/
@ -294,25 +440,42 @@ am__cd = cd
/^REPLACE_MKTIME *=/s/@REPLACE_MKTIME@/0/
/^REPLACE_NANOSLEEP *=/s/@REPLACE_NANOSLEEP@/0/
/^REPLACE_NULL *=/s/@REPLACE_NULL@/0/
/^REPLACE_OBSTACK_PRINTF *=/s/@REPLACE_OBSTACK_PRINTF@/0/
/^REPLACE_PERROR *=/s/@REPLACE_PERROR@/0/
/^REPLACE_POPEN *=/s/@REPLACE_POPEN@/0/
/^REPLACE_PREAD *=/s/@REPLACE_PREAD@/0/
/^REPLACE_PRINTF *=/s/@REPLACE_PRINTF@/0/
/^REPLACE_PUTENV *=/s/@REPLACE_PUTENV@/0/
/^REPLACE_PWRITE *=/s/@REPLACE_PWRITE@/0/
/^REPLACE_READLINK *=/s/@REPLACE_READLINK@/0/
/^REPLACE_REALLOC *=/s/@REPLACE_REALLOC@/0/
/^REPLACE_REALPATH *=/s/@REPLACE_REALPATH@/0/
/^REPLACE_REMOVE *=/s/@REPLACE_REMOVE@/0/
/^REPLACE_RENAME *=/s/@REPLACE_RENAME@/0/
/^REPLACE_RENAMEAT *=/s/@REPLACE_RENAMEAT@/0/
/^REPLACE_RMDIR *=/s/@REPLACE_RMDIR@/0/
/^REPLACE_SETENV *=/s/@REPLACE_SETENV@/0/
/^REPLACE_SLEEP *=/s/@REPLACE_SLEEP@/0/
/^REPLACE_SNPRINTF *=/s/@REPLACE_SNPRINTF@/0/
/^REPLACE_SPRINTF *=/s/@REPLACE_SPRINTF@/0/
/^REPLACE_STAT *=/s/@REPLACE_STAT@/0/
/^REPLACE_STDIO_WRITE_FUNCS *=/s/@REPLACE_STDIO_WRITE_FUNCS@/0/
/^REPLACE_STRTOD *=/s/@REPLACE_STRTOD@/0/
/^REPLACE_SYMLINK *=/s/@REPLACE_SYMLINK@/0/
/^REPLACE_TIMEGM *=/s/@REPLACE_TIMEGM@/0/
/^REPLACE_TMPFILE *=/s/@REPLACE_TMPFILE@/0/
/^REPLACE_TTYNAME_R *=/s/@REPLACE_TTYNAME_R@/0/
/^REPLACE_UNLINK *=/s/@REPLACE_UNLINK@/0/
/^REPLACE_UNLINKAT *=/s/@REPLACE_UNLINKAT@/0/
/^REPLACE_UNSETENV *=/s/@REPLACE_UNSETENV@/0/
/^REPLACE_USLEEP *=/s/@REPLACE_USLEEP@/0/
/^REPLACE_UTIMENSAT *=/s/@REPLACE_UTIMENSAT@/0/
/^REPLACE_VASPRINTF *=/s/@REPLACE_VASPRINTF@/0/
/^REPLACE_VDPRINTF *=/s/@REPLACE_VDPRINTF@/0/
/^REPLACE_VFPRINTF *=/s/@REPLACE_VFPRINTF@/0/
/^REPLACE_VPRINTF *=/s/@REPLACE_VPRINTF@/0/
/^REPLACE_VSNPRINTF *=/s/@REPLACE_VSNPRINTF@/0/
/^REPLACE_VSPRINTF *=/s/@REPLACE_VSPRINTF@/0/
/^REPLACE_WCTOMB *=/s/@REPLACE_WCTOMB@/0/
/^REPLACE_WRITE *=/s/@REPLACE_WRITE@/0/
/^SIG_ATOMIC_T_SUFFIX *=/s/@SIG_ATOMIC_T_SUFFIX@//
@ -368,10 +531,13 @@ s/^ [ ]*{ echo \(.*\) && \\/ djecho \1 > $@-t/
s/ \&\& \\ *$//
s/\.in-h\; *\\$/.in-h >> $@-t/
/^ [ ]*} /d
/^stdio\.h:/,/^ [ ]*mv /{
s/'\; \\ *$/' >> $@-t/
}
/^stdlib\.h:/,/^ [ ]*mv /{
s/'\; \\ *$/' >> $@-t/
}
/^unistd\.h:/,/^ [ ]*mv /{
s/'\; \\ *$/' >> $@-t/
}
s!\$(MKDIR_P)[ ][ ]*sys!command.com /c "if not exist sys\stat.h md sys"!
s!\$(MKDIR_P)[ ][ ]*sys!command.com /c "if not exist sys\\stat.h md sys"!

View file

@ -1,3 +1,18 @@
2011-03-27 Glenn Morris <rgm@gnu.org>
* config.nt: Remove RETSIGTYPE, SIGTYPE (identical to void).
2011-03-25 Juanma Barranquero <lekktu@gmail.com>
* addpm.c (main): Remove unused variable `retval'.
* preprep.c (main): Remove unused variable `ptr'.
2011-03-23 Juanma Barranquero <lekktu@gmail.com>
* cmdproxy.c: Include <ctype.h>.
(make_absolute): Remove unused variable `i'.
2011-02-27 Eli Zaretskii <eliz@gnu.org>
* inc/unistd.h (readlink, symlink): Declare prototypes.

View file

@ -274,8 +274,6 @@ main (int argc, char *argv[])
{
if (strlen (start_folder) < (MAX_PATH - 20))
{
BOOL retval;
strcat (start_folder, "\\Gnu Emacs");
if (CreateDirectory (start_folder, NULL)
|| GetLastError () == ERROR_ALREADY_EXISTS)
@ -307,8 +305,6 @@ main (int argc, char *argv[])
/* Ensure there is enough room for "...\GNU Emacs\Emacs.lnk". */
if (strlen (start_folder) < (MAX_PATH - 20))
{
BOOL retval;
strcat (start_folder, "\\Gnu Emacs");
if (CreateDirectory (start_folder, NULL)
|| GetLastError () == ERROR_ALREADY_EXISTS)

View file

@ -33,6 +33,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <malloc.h> /* alloca */
#include <stdlib.h> /* getenv */
#include <string.h> /* strlen */
#include <ctype.h> /* isspace, isalpha */
/* We don't want to include stdio.h because we are already duplicating
lots of it here */
@ -251,7 +252,6 @@ make_absolute (const char *prog)
char curdir[MAX_PATH];
char *p, *path;
const char *fname;
int i;
/* At least partial absolute path specified; search there. */
if ((isalpha (prog[0]) && prog[1] == ':') ||

View file

@ -393,15 +393,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#undef STACK_DIRECTION
#endif
/* Define the return type of signal handlers if the s-xxx file
did not already do so. */
#define RETSIGTYPE void
/* SIGTYPE is the macro we actually use. */
#ifndef SIGTYPE
#define SIGTYPE RETSIGTYPE
#endif
#ifdef emacs /* Don't do this for lib-src. */
/* Tell regex.c to use a type compatible with Emacs. */
#define RE_TRANSLATE_TYPE Lisp_Object

View file

@ -765,7 +765,6 @@ main (int argc, char **argv)
PIMAGE_NT_HEADERS nt_header;
file_data in_file, out_file;
char out_filename[MAX_PATH], in_filename[MAX_PATH];
const char *ptr;
strcpy (in_filename, argv[1]);
strcpy (out_filename, argv[2]);

View file

@ -1,3 +1,431 @@
2011-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
* eval.c (struct backtrace): Don't cheat with negative numbers, but do
steal a few bits to be more compact.
(interactive_p, Fbacktrace, Fbacktrace_frame, mark_backtrace):
Remove unneeded casts.
* bytecode.c (Fbyte_code): CAR and CDR can GC.
2011-03-30 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
* keyboard.c (Fexecute_extended_command): Do log the "suggest key
binding" message (bug#7967).
2011-03-30 Paul Eggert <eggert@cs.ucla.edu>
Fix more problems found by GCC 4.6.0's static checks.
* unexelf.c (unexec) [! (defined _SYSTYPE_SYSV || defined __sgi)]:
Remove unused local var.
* editfns.c (Fmessage_box): Remove unused local var.
* xdisp.c (try_window_reusing_current_matrix, x_produce_glyphs):
(note_mode_line_or_margin_highlight, note_mouse_highlight):
Omit unused local vars.
* window.c (shrink_windows): Omit unused local var.
* menu.c (digest_single_submenu): Omit unused local var.
* dispnew.c (update_window) [PERIODIC_PREEMPTION_CHECKING]:
Omit unused local var.
* keyboard.c (parse_modifiers_uncached, parse_modifiers):
Don't assume string length fits in int.
(keyremap_step, read_key_sequence): Use size_t for sizes.
(read_key_sequence): Don't check last_real_key_start redundantly.
* callproc.c (Fcall_process, Fcall_process_region): Use SAFE_ALLOCA
instead of alloca (Bug#8344).
* eval.c (Fbacktrace): Don't assume nargs fits in int.
(Fbacktrace_frame): Don't assume nframes fits in int.
* syntax.c (scan_sexps_forward): Avoid pointer wraparound.
* xterm.c (x_make_frame_visible, same_x_server): Redo to avoid overflow
concerns.
* term.c (produce_glyphless_glyph): Remove unnecessary test.
* cm.c (calccost): Turn while-do into do-while, for clarity.
* keyboard.c (syms_of_keyboard): Use the same style as later
in this function when indexing through an array. This also
works around GCC bug 48267.
* image.c (tiff_load): Fix off-by-one image count (Bug#8336).
* xselect.c (x_check_property_data): Return correct size (Bug#8335).
* chartab.c (sub_char_table_ref_and_range): Redo for slight
efficiency gain, and to bypass a gcc -Wstrict-overflow warning.
* keyboard.c, keyboard.h (num_input_events): Now size_t.
This avoids undefined behavior on integer overflow, and is a bit
more convenient anyway since it is compared to a size_t variable.
Variadic C functions now count arguments with size_t, not int.
This avoids an unnecessary limitation on 64-bit machines, which
caused (substring ...) to crash on large vectors (Bug#8344).
* lisp.h (struct Lisp_Subr.function.aMANY): Now takes size_t, not int.
(DEFUN_ARGS_MANY, internal_condition_case_n, safe_call): Likewise.
All variadic functions and their callers changed accordingly.
(struct gcpro.nvars): Now size_t, not int. All uses changed.
* data.c (arith_driver, float_arith_driver): Likewise.
* editfns.c (general_insert_function): Likewise.
* eval.c (struct backtrace.nargs, interactive_p)
(internal_condition_case_n, run_hook_with_args, apply_lambda)
(funcall_lambda, mark_backtrace): Likewise.
* fns.c (concat): Likewise.
* frame.c (x_set_frame_parameters): Likewise.
* fns.c (get_key_arg): Now accepts and returns size_t, and returns
0 if not found, not -1. All callers changed.
* alloc.c (garbage_collect): Don't assume stack size fits in int.
(stack_copy_size): Now size_t, not int.
(stack_copy, stack_copy_size): Define only if MAX_SAVE_STACK > 0.
2011-03-28 Juanma Barranquero <lekktu@gmail.com>
* coding.c (encode_designation_at_bol): Remove parameter `charbuf_end',
unused since 2002-03-01T01:17:24Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
All callers changed.
* lisp.h (multibyte_char_to_unibyte):
* character.c (multibyte_char_to_unibyte): Remove parameter `rev_tbl',
unused since 2002-03-01T01:16:34Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
* character.h (CHAR_TO_BYTE8):
* cmds.c (internal_self_insert):
* editfns.c (general_insert_function):
* keymap.c (push_key_description):
* search.c (Freplace_match):
* xdisp.c (message_dolog, set_message_1): All callers changed.
2011-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
* keyboard.c (safe_run_hook_funcall): New function.
(safe_run_hooks_1, safe_run_hooks_error, safe_run_hooks): On error,
don't set the hook to nil, but remove the offending function instead.
(Qcommand_hook_internal): Remove, unused.
(syms_of_keyboard): Don't initialize Qcommand_hook_internal nor define
Vcommand_hook_internal.
* eval.c (enum run_hooks_condition): Remove.
(funcall_nil, funcall_not): New functions.
(run_hook_with_args): Call each function through a `funcall' argument.
Remove `cond' argument, now redundant.
(Frun_hooks, Frun_hook_with_args, Frun_hook_with_args_until_success)
(Frun_hook_with_args_until_failure): Adjust accordingly.
(run_hook_wrapped_funcall, Frun_hook_wrapped): New functions.
2011-03-28 Juanma Barranquero <lekktu@gmail.com>
* dispextern.h (string_buffer_position): Remove declaration.
* print.c (strout): Remove parameter `multibyte', unused since
1999-08-21T19:30:21Z!gerd@gnu.org. All callers changed.
* search.c (boyer_moore): Remove parameters `len', `pos' and `lim',
never used since function introduction in 1998-02-08T21:33:56Z!rms@gnu.org.
All callers changed.
* w32.c (_wsa_errlist): Use braces for struct initializers.
* xdisp.c (string_buffer_position_lim): Remove parameter `w',
never used since function introduction in 2001-03-09T18:41:50Z!gerd@gnu.org.
All callers changed.
(string_buffer_position): Likewise. Also, make static (it's never
used outside xdisp.c).
(cursor_row_p): Remove parameter `w', unused since
2000-10-17T16:08:57Z!gerd@gnu.org. All callers changed.
(decode_mode_spec): Remove parameter `precision', introduced during
Gerd Moellmann's rewrite at 1999-07-21T21:43:52Z!gerd@gnu.org, but never used.
All callers changed.
2011-03-27 Jan Djärv <jan.h.d@swipnet.se>
* nsterm.m (syms_of_nsterm): Use doc: for ns-auto-hide-menu-bar.
2011-03-27 Anders Lindgren <andlind@gmail.com>
* nsterm.m (ns_menu_bar_is_hidden): New variable.
(ns_constrain_all_frames, ns_menu_bar_should_be_hidden)
(ns_update_auto_hide_menu_bar): New functions.
(ns_update_begin): Call ns_update_auto_hide_menu_bar.
(applicationDidBecomeActive): Call ns_update_auto_hide_menu_bar and
ns_constrain_all_frames.
(constrainFrameRect): Return at once if ns_menu_bar_should_be_hidden.
(syms_of_nsterm): DEFVAR ns-auto-hide-menu-bar, init to Qnil.
2011-03-27 Jan Djärv <jan.h.d@swipnet.se>
* nsmenu.m (runDialogAt): Remove argument to timer_check.
2011-03-27 Glenn Morris <rgm@gnu.org>
* syssignal.h: Replace RETSIGTYPE with void.
* atimer.c, data.c, dispnew.c, emacs.c, floatfns.c, keyboard.c:
* keyboard.h, lisp.h, process.c, sysdep.c, xterm.c:
Replace SIGTYPE with void everywhere.
* s/usg5-4-common.h (SIGTYPE): Remove definition.
* s/template.h (SIGTYPE): Remove commented out definition.
2011-03-26 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (redisplay_window): Don't check buffer's clip_changed
flag as a prerequisite for invoking try_scrolling. (Bug#6671)
2011-03-26 Juanma Barranquero <lekktu@gmail.com>
* w32.c (read_unc_volume): Use parameter `henum', instead of
global variable `wget_enum_handle'.
* keymap.c (describe_vector): Remove parameters `indices' and
`char_table_depth', unused since 2002-03-01T01:43:26Z!handa@m17n.org.
(describe_map, Fdescribe_vector): Adjust calls to `describe_vector'.
* keyboard.h (timer_check, show_help_echo): Remove unused parameters.
* keyboard.c (timer_check): Remove parameter `do_it_now',
unused since 1996-04-12T06:01:29Z!rms@gnu.org.
(show_help_echo): Remove parameter `ok_to_overwrite_keystroke_echo',
unused since 2008-04-19T19:30:53Z!monnier@iro.umontreal.ca.
* keyboard.c (read_char):
* w32menu.c (w32_menu_display_help):
* xmenu.c (show_help_event, menu_help_callback):
Adjust calls to `show_help_echo'.
* gtkutil.c (xg_maybe_add_timer):
* keyboard.c (readable_events):
* process.c (wait_reading_process_output):
* xmenu.c (x_menu_wait_for_event): Adjust calls to `timer_check'.
* insdel.c (adjust_markers_gap_motion):
Remove; no-op since 1998-01-02T21:29:48Z!rms@gnu.org.
(gap_left, gap_right): Don't call it.
2011-03-25 Chong Yidong <cyd@stupidchicken.com>
* xdisp.c (handle_fontified_prop): Discard changes to clip_changed
incurred during fontification.
2011-03-25 Juanma Barranquero <lekktu@gmail.com>
* buffer.c (defvar_per_buffer): Remove unused parameter `doc'.
(DEFVAR_PER_BUFFER): Don't pass it.
* dispnew.c (row_equal_p, add_row_entry): Remove unused parameter `w'.
(scrolling_window): Don't pass it.
2011-03-25 Juanma Barranquero <lekktu@gmail.com>
* dispextern.h (glyph_matric): Use #if GLYPH_DEBUG, not #ifdef.
* fileio.c (check_executable) [DOS_NT]: Remove unused variables `len'
and `suffix'.
(Fset_file_selinux_context) [HAVE_LIBSELINUX]: Move here declaration
of variables specific to SELinux and computation of `encoded_absname'.
* image.c (XPutPixel): Remove unused variable `height'.
* keyboard.c (make_lispy_event): Remove unused variable `hpos'.
* unexw32.c (get_section_info): Remove unused variable `section'.
* w32.c (stat): Remove unused variables `drive_root' and `devtype'.
(system_process_attributes): Remove unused variable `sess'.
(sys_read): Remove unused variable `err'.
* w32fns.c (top): Wrap variables with #if GLYPH_DEBUG, not #ifdef.
(w32_wnd_proc): Remove unused variable `isdead'.
(unwind_create_frame): Use #if GLYPH_DEBUG, not #ifdef.
(Fx_server_max_request_size): Remove unused variable `dpyinfo'.
(x_create_tip_frame): Remove unused variable `tem'.
* w32inevt.c (w32_console_read_socket):
Remove unused variable `no_events'.
* w32term.c (x_draw_composite_glyph_string_foreground):
Remove unused variable `width'.
2011-03-24 Juanma Barranquero <lekktu@gmail.com>
* w32term.c (x_set_glyph_string_clipping):
Don't pass uninitialized region to CombineRgn.
2011-03-23 Juanma Barranquero <lekktu@gmail.com>
* w32fns.c (x_set_menu_bar_lines): Remove unused variable `olines'.
(w32_wnd_proc): Pass NULL to Windows API, not uninitialized buffer.
(Fx_close_connection): Remove unused variable `i'.
* w32font.c (w32font_draw): Return number of glyphs.
(w32font_open_internal): Remove unused variable `i'.
(w32font_driver): Add missing initializer.
* w32menu.c (utf8to16): Remove unused variable `utf16'.
(fill_in_menu): Remove unused variable `items_added'.
* w32term.c (last_mouse_press_frame): Remove static global variable.
(w32_clip_to_row): Remove unused variable `f'.
(x_delete_terminal): Remove unused variable `i'.
* w32uniscribe.c (uniscribe_shape): Remove unused variable `nclusters'.
(NOTHING): Remove unused static global variable.
(uniscribe_check_otf): Remove unused variable `table'.
(uniscribe_font_driver): Add missing initializers.
2011-03-23 Julien Danjou <julien@danjou.info>
* term.c (Fsuspend_tty, Fresume_tty):
* minibuf.c (read_minibuf, run_exit_minibuf_hook):
* window.c (temp_output_buffer_show):
* insdel.c (signal_before_change):
* frame.c (Fhandle_switch_frame):
* fileio.c (Fdo_auto_save):
* emacs.c (Fkill_emacs):
* editfns.c (save_excursion_restore):
* cmds.c (internal_self_insert):
* callint.c (Fcall_interactively):
* buffer.c (Fkill_all_local_variables):
* keyboard.c (Fcommand_execute, Fsuspend_emacs, safe_run_hooks_1):
Use Frun_hooks.
(command_loop_1): Use Frun_hooks. Call safe_run_hooks
unconditionnaly since it does the check itself.
2011-03-23 Paul Eggert <eggert@cs.ucla.edu>
Fix more problems found by GCC 4.5.2's static checks.
* coding.c (encode_coding_raw_text): Avoid unnecessary test
the first time through the loop, since we know p0 < p1 then.
This also avoids a gcc -Wstrict-overflow warning.
* lisp.h (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Avoid 'int' overflow
leading to a memory leak, possible in functions like
load_charset_map_from_file that can allocate an unbounded number
of objects (Bug#8318).
* xmenu.c (set_frame_menubar): Use EMACS_UINT, not int, for indexes
that could (at least in theory) be that large.
* xdisp.c (message_log_check_duplicate): Return unsigned long, not int.
This is less likely to overflow, and avoids undefined behavior if
overflow does occur. All callers changed. Use strtoul to scan
for the unsigned long integer.
(pint2hrstr): Simplify and tune code slightly.
This also avoids a (bogus) GCC warning with gcc -Wstrict-overflow.
* scroll.c (do_scrolling): Work around GCC bug 48228.
See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48228>.
* frame.c (Fmodify_frame_parameters): Simplify loop counter.
This also avoids a warning with gcc -Wstrict-overflow.
(validate_x_resource_name): Simplify count usage.
This also avoids a warning with gcc -Wstrict-overflow.
* fileio.c (Fcopy_file): Report error if fchown or fchmod
fail (Bug#8306).
* emacs.c (Fdaemon_initialized): Do not ignore I/O errors (Bug#8303).
* process.c (Fmake_network_process): Use socklen_t, not int,
where POSIX says socklen_t is required in portable programs.
This fixes a porting bug on hosts like 64-bit HP-UX, where
socklen_t is wider than int (Bug#8277).
(Fmake_network_process, server_accept_connection):
(wait_reading_process_output, read_process_output):
Likewise.
* process.c: Rename or move locals to avoid shadowing.
(list_processes_1, Fmake_network_process):
(read_process_output_error_handler, exec_sentinel_error_handler):
Rename or move locals.
(Fmake_network_process): Define label "retry_connect" only if needed.
(Fnetwork_interface_info): Fix pointer signedness.
(process_send_signal): Add cast to avoid pointer signedness problem.
(FIRST_PROC_DESC, IF_NON_BLOCKING_CONNECT): Remove unused macros.
(create_process): Use 'volatile' to avoid vfork clobbering (Bug#8298).
Make tparam.h and terminfo.c consistent.
* cm.c (tputs, tgoto, BC, UP): Remove extern decls.
Include tparam.h instead, since it declares them.
* cm.h (PC): Remove extern decl; tparam.h now does this.
* deps.mk (cm.o, terminfo.o): Depend on tparam.h.
* terminfo.c: Include tparam.h, to check interfaces.
(tparm): Make 1st arg a const pointer in decl. Put it at top level.
(tparam): Adjust signature to match interface in tparam.h;
this removes some undefined behavior. Check that outstring and len
are zero, which they always are with Emacs.
* tparam.h (PC, BC, UP): New extern decls.
* xftfont.c (xftfont_shape): Now static, and defined only if needed.
(xftfont_open): Rename locals to avoid shadowing.
* ftfont.c (ftfont_resolve_generic_family): Fix pointer signedness.
(ftfont_otf_capability, ftfont_shape): Omit decls if not needed.
(OTF_TAG_SYM): Omit macro if not needed.
(ftfont_list): Remove unused local.
(get_adstyle_property, ftfont_pattern_entity):
(ftfont_lookup_cache, ftfont_open, ftfont_anchor_point):
Rename locals to avoid shadowing.
* xfont.c (xfont_list_family): Mark var as initialized.
* xml.c (make_dom): Now static.
* composite.c (composition_compute_stop_pos): Rename local to
avoid shadowing.
(composition_reseat_it): Remove unused locals.
(find_automatic_composition, composition_adjust_point): Likewise.
(composition_update_it): Mark var as initialized.
(find_automatic_composition): Mark vars as initialized,
with a FIXME (Bug#8290).
character.h: Rename locals to avoid shadowing.
* character.h (PREV_CHAR_BOUNDARY, FETCH_STRING_CHAR_ADVANCE):
(FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE, FETCH_CHAR_ADVANCE):
(FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, BUF_INC_POS):
(BUF_DEC_POS): Be more systematic about renaming local temporaries
to avoid shadowing.
* textprop.c (property_change_between_p): Remove; unused.
* intervals.c (interval_start_pos): Now static.
* intervals.h (CHECK_TOTAL_LENGTH): Avoid empty "else".
* atimer.c (start_atimer, append_atimer_lists, set_alarm):
Rename locals to avoid shadowing.
* sound.c (wav_play, au_play, Fplay_sound_internal):
Fix pointer signedness.
(alsa_choose_format): Remove unused local var.
(wav_play): Initialize a variable to 0, to prevent undefined
behavior (Bug#8278).
* region-cache.c (insert_cache_boundary): Redo var to avoid shadowing.
* region-cache.h (pp_cache): New decl, for gcc -Wmissing-prototypes.
* callproc.c (Fcall_process): Use 'volatile' to avoid vfork
clobbering (Bug#8298).
* sysdep.c (sys_subshell): Likewise.
Previously, the sys_subshell 'volatile' was incorrectly IF_LINTted out.
* lisp.h (child_setup): Now NO_RETURN unless DOS_NT.
This should get cleaned up, so that child_setup has the
same signature on all platforms.
* callproc.c (call_process_cleanup): Now static.
(relocate_fd): Rename locals to avoid shadowing.
2011-03-22 Chong Yidong <cyd@stupidchicken.com>
* xterm.c (x_clear_frame): Remove XClearWindow call. This appears
not to be necessary, and produces flickering.
2011-03-20 Glenn Morris <rgm@gnu.org>
* config.in: Remove file.
@ -138,8 +566,8 @@
gcc -Wbad-function-cast warning.
(default_value, arithcompare, arith_driver, arith_error): Now static.
(store_symval_forwarding): Rename local to avoid shadowing.
(Fmake_variable_buffer_local, Fmake_local_variable): Mark
variables as initialized.
(Fmake_variable_buffer_local, Fmake_local_variable):
Mark variables as initialized.
(do_blv_forwarding, do_symval_forwarding): Remove; unused.
* alloc.c (check_cons_list): Do not define unless GC_CHECK_CONS_LIST.
@ -393,8 +821,8 @@
(BUF_PT_BYTE): Rewrite to handle indirect buffers (Bug#8219).
These macros can no longer be used for assignment.
* buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Assign
struct members directly, instead of using BUF_BEGV etc.
* buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
Assign struct members directly, instead of using BUF_BEGV etc.
(record_buffer_markers, fetch_buffer_markers): New functions for
recording and fetching special buffer markers.
(set_buffer_internal_1, set_buffer_temp): Use them.
@ -515,8 +943,8 @@
* term.c (encode_terminal_code): Now external again, used by
w32console.c and msdos.c.
* makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)): Depend
on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
* makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)):
Depend on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
2011-03-11 Paul Eggert <eggert@cs.ucla.edu>
@ -580,8 +1008,8 @@
(x_delete_glyphs, x_ins_del_lines): Mark with NO_RETURN.
(x_connection_closed): Tell GCC not to suggest NO_RETURN.
* xfaces.c (clear_face_cache, Fx_list_fonts, Fface_font): Rename
or move locals to avoid shadowing.
* xfaces.c (clear_face_cache, Fx_list_fonts, Fface_font):
Rename or move locals to avoid shadowing.
(tty_defined_color, merge_face_heights): Now static.
(free_realized_faces_for_fontset): Remove; not used.
(Fx_list_fonts): Mark variable that gcc -Wuninitialized
@ -739,12 +1167,12 @@
(xg_prepare_tooltip, xg_hide_tooltip): Call gdk_window_get_screen.
(xg_prepare_tooltip, create_dialog, menubar_map_cb)
(xg_update_frame_menubar, xg_tool_bar_detach_callback)
(xg_tool_bar_attach_callback, xg_update_tool_bar_sizes): Call
gtk_widget_get_preferred_size.
(xg_tool_bar_attach_callback, xg_update_tool_bar_sizes):
Call gtk_widget_get_preferred_size.
(xg_frame_resized): gdk_window_get_geometry only takes 5
parameters.
(xg_win_to_widget, xg_event_is_for_menubar): Call
gdk_x11_window_lookup_for_display.
(xg_win_to_widget, xg_event_is_for_menubar):
Call gdk_x11_window_lookup_for_display.
(xg_set_widget_bg): New function.
(delete_cb): New function.
(xg_create_frame_widgets): connect delete-event to delete_cb.
@ -840,7 +1268,7 @@
(produce_glyphless_glyph): Make a pointer "const"
since it might point to immutable storage.
(update_window_cursor): Now static, since it's not used elsewhere.
(SKIP_GLYPHS): Removed unused macro.
(SKIP_GLYPHS): Remove unused macro.
2011-03-06 Michael Shields <shields@msrl.com> (tiny change)
@ -7337,7 +7765,7 @@
* xterm.c (x_send_scroll_bar_event, SET_SAVED_MENU_EVENT)
(handle_one_xevent, x_check_errors, xim_initialize, x_term_init):
Likewise.
* character.h (BCOPY_SHORT): Removed.
* character.h (BCOPY_SHORT): Remove.
* config.in: Regenerate.
* dispnew.c (safe_bcopy): Only define as dummy if PROFILING.
* emacs.c (main) [PROFILING]: Don't declare
@ -10342,8 +10770,8 @@
(POSIX_SIGNALS): Do not define.
Remove support for old UNIX System V systems.
* s/unixware.h: Add the contents of s/usg-5-4-2.h.
* s/usg-5-4-2.h: Remove.
* s/unixware.h: Add the contents of s/usg5-4-2.h.
* s/usg5-4-2.h: Remove.
Remove support for Solaris on PPC and for old versions.
* s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
@ -19126,7 +19554,7 @@
Set xftfont_info->ft_size. Don't unlock the face. Check BDF
properties if appropriate.
(xftfont_close): Unlock the face.
(xftfont_anchor_point, xftfont_shape): Deleted.
(xftfont_anchor_point, xftfont_shape): Delete.
(syms_of_xftfont): Don't set members anchor_point and shape of
xftfont_driver.
@ -21031,7 +21459,7 @@
Delete externs.
(fontset_from_font_name): Extern it.
(FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
(FONT_INFO_FROM_FACE): Deleted.
(FONT_INFO_FROM_FACE): Delete.
(face_for_font): Adjust prototype.
* fontset.c: Throughout the file, delete all USE_FONT_BACKEND
@ -21048,7 +21476,7 @@
(fontset_compare_rfontdef): New function.
(reorder_font_vector): Remove the argument CHARSET-ID. Sort
rfont-defs by qsort. Adjusted for the change of font-group vector.
(load_font_get_repertory): Deleted.
(load_font_get_repertory): Delete.
(fontset_find_font): Use new macros to ref/set elements of
font-def and rfont-def.
(fontset_font): Fix the timing of remembering that no font for C.
@ -21064,11 +21492,11 @@
font-def.
(Fnew_fontset): Use font_unparse_xlfd to generate
FONTSET_ASCII (fontset).
(new_fontset_from_font_name): Deleted.
(new_fontset_from_font_name): Delete.
(fontset_from_font): Rename from new_fontset_from_font. Check if
a fontset is already created for the font. FIx updating of
Vfontset_alias_alist.
(fontset_ascii_font): Deleted.
(fontset_ascii_font): Delete.
(Ffont_info): Adjust for the format change of font-spec.
(Finternal_char_font): Likewise.
(Ffontset_info): Likewise.
@ -21096,7 +21524,7 @@
(ftfont_list): Return a list, not vector.
(ftfont_match): Use ftfont_spec_pattern to get a pattern.
(ftfont_list_family): Don't downcase names.
(ftfont_free_entity): Deleted.
(ftfont_free_entity): Delete.
(ftfont_open): Return a font-object. Adjusted for the change of
struct font. Get underline_thickness and underline_position from
font property. Don't update dpyinfo->smallest_font_height and
@ -21148,13 +21576,13 @@
(QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
(Qp): Extern them.
(clear_font_table, load_face_font, xlfd_lookup_field_contents):
Deleted.
(struct font_name): Deleted.
(xlfd_numeric_value, xlfd_symbolic_value): Deleted.
Delete.
(struct font_name): Delete.
(xlfd_numeric_value, xlfd_symbolic_value): Delete.
(compare_fonts_by_sort_order): New function.
(xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
(xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
Deleted.
Delete.
(Fx_family_fonts): Use font_list_entities, and sort fonts by
compare_fonts_by_sort_order.
(Fx_font_family_list): Call Ffont_family_list.
@ -21167,9 +21595,9 @@
(free_font_names, sort_fonts, x_face_list_fonts)
(face_font_available_p, sorted_font_list, cmp_font_names)
(font_list_1, concat_font_list, font_list, remove_duplicates):
Deleted.
Delete.
(Fx_list_fonts): Use Ffont_list.
(LFACE_AVGWIDTH): Deleted.
(LFACE_AVGWIDTH): Delete.
(check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
by FONTP.
(lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
@ -21191,7 +21619,7 @@
(Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
(lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
Compare fonts by EQ.
(lookup_non_ascii_face): Deleted.
(lookup_non_ascii_face): Delete.
(face_for_font): The 2nd argument changed.
(x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
Check atomic font properties by case insensitive.
@ -21214,7 +21642,7 @@
* xfont.c: Include <stdlib.h> and "ccl.h".
(struct xfont_info): New structure.
(xfont_query_font): Deleted.
(xfont_query_font): Delete.
(xfont_find_ccl_program): Rename from x_find_ccl_program and
moved from xterm.c.
(xfont_driver): Adjust for the change of struct font_driver.
@ -21230,7 +21658,7 @@
dpyinfo->smallest_char_width.
(xfont_close): Don't free struct font.
(xfont_prepare_face): Adjust for the change of struct font.
(xfont_done_face): Deleted.
(xfont_done_face): Delete.
(xfont_has_char): Adjust for the change of struct font.
(xfont_encode_char, xfont_draw): Likewise.
(xfont_check): New function.
@ -21260,7 +21688,7 @@
* xterm.c: Throughout the file, delete all USE_FONT_BACKEND
conditionals. Don't check enable_font_backend. Delete all codes
used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
(x_per_char_metric, x_encode_char): Deleted.
(x_per_char_metric, x_encode_char): Delete.
(x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
(x_compute_glyph_string_overhangs): Adjust for the change of
`struct face'.
@ -21269,10 +21697,10 @@
(x_draw_glyph_string): Likewise. Use font->underline_position and
font->underline_thickness.
(x_new_font): Rename from x_new_fontset2.
(x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
(x_new_fontset, x_get_font_info, x_list_fonts): Delete.
(x_check_font): Call `check' method of a font driver.
(x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
(x_query_font, x_get_font_repertory): Deleted.
(x_query_font, x_get_font_repertory): Delete.
(x_find_ccl_program): Rename and moved to xfont.c.
(x_redisplay_interface): Adjust for the change of `struct
redisplay_interface'.

View file

@ -254,8 +254,10 @@ const char *pending_malloc_warning;
/* Buffer in which we save a copy of the C stack at each GC. */
#if MAX_SAVE_STACK > 0
static char *stack_copy;
static int stack_copy_size;
static size_t stack_copy_size;
#endif
/* Non-zero means ignore malloc warnings. Set during initialization.
Currently not used. */
@ -2705,7 +2707,7 @@ DEFUN ("list", Flist, Slist, 0, MANY, 0,
doc: /* Return a newly created list with specified arguments as elements.
Any number of arguments, even zero arguments, are allowed.
usage: (list &rest OBJECTS) */)
(int nargs, register Lisp_Object *args)
(size_t nargs, register Lisp_Object *args)
{
register Lisp_Object val;
val = Qnil;
@ -2921,10 +2923,10 @@ DEFUN ("vector", Fvector, Svector, 0, MANY, 0,
doc: /* Return a newly created vector with specified arguments as elements.
Any number of arguments, even zero arguments, are allowed.
usage: (vector &rest OBJECTS) */)
(register int nargs, Lisp_Object *args)
(register size_t nargs, Lisp_Object *args)
{
register Lisp_Object len, val;
register int i;
register size_t i;
register struct Lisp_Vector *p;
XSETFASTINT (len, nargs);
@ -2952,10 +2954,10 @@ argument to catch the left-over arguments. If such an integer is used, the
arguments will not be dynamically bound but will be instead pushed on the
stack before executing the byte-code.
usage: (make-byte-code ARGLIST BYTE-CODE CONSTANTS DEPTH &optional DOCSTRING INTERACTIVE-SPEC &rest ELEMENTS) */)
(register int nargs, Lisp_Object *args)
(register size_t nargs, Lisp_Object *args)
{
register Lisp_Object len, val;
register int i;
register size_t i;
register struct Lisp_Vector *p;
XSETFASTINT (len, nargs);
@ -4238,7 +4240,7 @@ static void
check_gcpros (void)
{
struct gcpro *p;
int i;
size_t i;
for (p = gcprolist; p; p = p->next)
for (i = 0; i < p->nvars; ++i)
@ -4847,7 +4849,7 @@ returns nil, because real GC can't be done. */)
{
register struct specbinding *bind;
char stack_top_variable;
register int i;
register size_t i;
int message_p;
Lisp_Object total[8];
int count = SPECPDL_INDEX ();
@ -4913,21 +4915,26 @@ returns nil, because real GC can't be done. */)
#if MAX_SAVE_STACK > 0
if (NILP (Vpurify_flag))
{
i = &stack_top_variable - stack_bottom;
if (i < 0) i = -i;
if (i < MAX_SAVE_STACK)
char *stack;
size_t stack_size;
if (&stack_top_variable < stack_bottom)
{
if (stack_copy == 0)
stack_copy = (char *) xmalloc (stack_copy_size = i);
else if (stack_copy_size < i)
stack_copy = (char *) xrealloc (stack_copy, (stack_copy_size = i));
if (stack_copy)
stack = &stack_top_variable;
stack_size = stack_bottom - &stack_top_variable;
}
else
{
stack = stack_bottom;
stack_size = &stack_top_variable - stack_bottom;
}
if (stack_size <= MAX_SAVE_STACK)
{
if (stack_copy_size < stack_size)
{
if ((EMACS_INT) (&stack_top_variable - stack_bottom) > 0)
memcpy (stack_copy, stack_bottom, i);
else
memcpy (stack_copy, &stack_top_variable, i);
stack_copy = (char *) xrealloc (stack_copy, stack_size);
stack_copy_size = stack_size;
}
memcpy (stack_copy, stack, stack_size);
}
}
#endif /* MAX_SAVE_STACK > 0 */

View file

@ -64,7 +64,7 @@ static void set_alarm (void);
static void schedule_atimer (struct atimer *);
static struct atimer *append_atimer_lists (struct atimer *,
struct atimer *);
SIGTYPE alarm_signal_handler (int signo);
void alarm_signal_handler (int signo);
/* Start a new atimer of type TYPE. TIME specifies when the timer is
@ -86,7 +86,7 @@ SIGTYPE alarm_signal_handler (int signo);
to cancel_atimer; don't free it yourself. */
struct atimer *
start_atimer (enum atimer_type type, EMACS_TIME time, atimer_callback fn,
start_atimer (enum atimer_type type, EMACS_TIME timestamp, atimer_callback fn,
void *client_data)
{
struct atimer *t;
@ -94,10 +94,10 @@ start_atimer (enum atimer_type type, EMACS_TIME time, atimer_callback fn,
/* Round TIME up to the next full second if we don't have
itimers. */
#ifndef HAVE_SETITIMER
if (EMACS_USECS (time) != 0)
if (EMACS_USECS (timestamp) != 0)
{
EMACS_SET_USECS (time, 0);
EMACS_SET_SECS (time, EMACS_SECS (time) + 1);
EMACS_SET_USECS (timestamp, 0);
EMACS_SET_SECS (timestamp, EMACS_SECS (timestamp) + 1);
}
#endif /* not HAVE_SETITIMER */
@ -123,18 +123,18 @@ start_atimer (enum atimer_type type, EMACS_TIME time, atimer_callback fn,
switch (type)
{
case ATIMER_ABSOLUTE:
t->expiration = time;
t->expiration = timestamp;
break;
case ATIMER_RELATIVE:
EMACS_GET_TIME (t->expiration);
EMACS_ADD_TIME (t->expiration, t->expiration, time);
EMACS_ADD_TIME (t->expiration, t->expiration, timestamp);
break;
case ATIMER_CONTINUOUS:
EMACS_GET_TIME (t->expiration);
EMACS_ADD_TIME (t->expiration, t->expiration, time);
t->interval = time;
EMACS_ADD_TIME (t->expiration, t->expiration, timestamp);
t->interval = timestamp;
break;
}
@ -187,24 +187,24 @@ cancel_atimer (struct atimer *timer)
}
/* Append two lists of atimers LIST1 and LIST2 and return the
/* Append two lists of atimers LIST_1 and LIST_2 and return the
result list. */
static struct atimer *
append_atimer_lists (struct atimer *list1, struct atimer *list2)
append_atimer_lists (struct atimer *list_1, struct atimer *list_2)
{
if (list1 == NULL)
return list2;
else if (list2 == NULL)
return list1;
if (list_1 == NULL)
return list_2;
else if (list_2 == NULL)
return list_1;
else
{
struct atimer *p;
for (p = list1; p->next; p = p->next)
for (p = list_1; p->next; p = p->next)
;
p->next = list2;
return list1;
p->next = list_2;
return list_1;
}
}
@ -287,28 +287,28 @@ set_alarm (void)
{
if (atimers)
{
EMACS_TIME now, time;
EMACS_TIME now, timestamp;
#ifdef HAVE_SETITIMER
struct itimerval it;
#endif
/* Determine s/us till the next timer is ripe. */
EMACS_GET_TIME (now);
EMACS_SUB_TIME (time, atimers->expiration, now);
EMACS_SUB_TIME (timestamp, atimers->expiration, now);
#ifdef HAVE_SETITIMER
/* Don't set the interval to 0; this disables the timer. */
if (EMACS_TIME_LE (atimers->expiration, now))
{
EMACS_SET_SECS (time, 0);
EMACS_SET_USECS (time, 1000);
EMACS_SET_SECS (timestamp, 0);
EMACS_SET_USECS (timestamp, 1000);
}
memset (&it, 0, sizeof it);
it.it_value = time;
it.it_value = timestamp;
setitimer (ITIMER_REAL, &it, 0);
#else /* not HAVE_SETITIMER */
alarm (max (EMACS_SECS (time), 1));
alarm (max (EMACS_SECS (timestamp), 1));
#endif /* not HAVE_SETITIMER */
}
}
@ -388,7 +388,7 @@ run_timers (void)
/* Signal handler for SIGALRM. SIGNO is the signal number, i.e.
SIGALRM. */
SIGTYPE
void
alarm_signal_handler (int signo)
{
#ifndef SYNC_INPUT
@ -442,4 +442,3 @@ init_atimer (void)
/* pending_signals is initialized in init_keyboard.*/
signal (SIGALRM, alarm_signal_handler);
}

View file

@ -2520,8 +2520,7 @@ The first thing this function does is run
the normal hook `change-major-mode-hook'. */)
(void)
{
if (!NILP (Vrun_hooks))
call1 (Vrun_hooks, Qchange_major_mode_hook);
Frun_hooks (1, &Qchange_major_mode_hook);
/* Make sure none of the bindings in local_var_alist
remain swapped in, in their symbols. */
@ -5225,12 +5224,12 @@ init_buffer (void)
#define DEFVAR_PER_BUFFER(lname, vname, type, doc) \
do { \
static struct Lisp_Buffer_Objfwd bo_fwd; \
defvar_per_buffer (&bo_fwd, lname, vname, type, 0); \
defvar_per_buffer (&bo_fwd, lname, vname, type); \
} while (0)
static void
defvar_per_buffer (struct Lisp_Buffer_Objfwd *bo_fwd, const char *namestring,
Lisp_Object *address, Lisp_Object type, char *doc)
Lisp_Object *address, Lisp_Object type)
{
struct Lisp_Symbol *sym;
int offset;

View file

@ -425,7 +425,7 @@ according to which any remaining arguments are pushed on the stack
before executing BYTESTR.
usage: (byte-code BYTESTR VECTOR MAXDEP &optional ARGS-TEMPLATE &rest ARGS) */)
(int nargs, Lisp_Object *args)
(size_t nargs, Lisp_Object *args)
{
Lisp_Object args_tmpl = nargs >= 4 ? args[3] : Qnil;
int pnargs = nargs >= 4 ? nargs - 4 : 0;
@ -631,7 +631,16 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
{
Lisp_Object v1;
v1 = TOP;
TOP = CAR (v1);
if (CONSP (v1))
TOP = XCAR (v1);
else if (NILP (v1))
TOP = Qnil;
else
{
BEFORE_POTENTIAL_GC ();
wrong_type_argument (Qlistp, v1);
AFTER_POTENTIAL_GC ();
}
break;
}
@ -657,7 +666,17 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
{
Lisp_Object v1;
v1 = TOP;
TOP = CDR (v1);
if (CONSP (v1))
TOP = XCDR (v1);
else if (NILP (v1))
TOP = Qnil;
else
{
BEFORE_POTENTIAL_GC ();
wrong_type_argument (Qlistp, v1);
AFTER_POTENTIAL_GC ();
}
break;
break;
}
@ -994,13 +1013,13 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
v1 = POP;
v2 = TOP;
CHECK_NUMBER (v2);
AFTER_POTENTIAL_GC ();
op = XINT (v2);
immediate_quit = 1;
while (--op >= 0 && CONSP (v1))
v1 = XCDR (v1);
immediate_quit = 0;
TOP = CAR (v1);
AFTER_POTENTIAL_GC ();
break;
}

View file

@ -269,8 +269,9 @@ invoke it. If KEYS is omitted or nil, the return value of
recorded as a call to the function named callint_argfuns[varies[i]]. */
int *varies;
register int i, j;
int count, foo;
register size_t i, j;
size_t count;
int foo;
char prompt1[100];
char *tem1;
int arg_from_tty = 0;
@ -430,8 +431,7 @@ invoke it. If KEYS is omitted or nil, the return value of
error ("Attempt to select inactive minibuffer window");
/* If the current buffer wants to clean up, let it. */
if (!NILP (Vmouse_leave_buffer_hook))
call1 (Vrun_hooks, Qmouse_leave_buffer_hook);
Frun_hooks (1, &Qmouse_leave_buffer_hook);
Fselect_window (w, Qnil);
}

Some files were not shown because too many files have changed in this diff Show more