From: Eric Blake Date: Sat, 14 Mar 2009 22:23:29 +0000 (-0600) Subject: Resync upstream files. X-Git-Tag: v2.63b~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e994faac09d1760b28d9d1e4d95468ffdfc1bdab;p=thirdparty%2Fautoconf.git Resync upstream files. * GNUmakefile: Run 'make fetch'. * build-aux/announce-gen: Likewise. * build-aux/config.guess: Likewise. * build-aux/config.sub: Likewise. * build-aux/gnupload: Likewise. * build-aux/texinfo.tex: Likewise. * build-aux/vc-list-files: Likewise. * doc/gnu-oids.texi: Likewise. * doc/standards.texi: Likewise. Signed-off-by: Eric Blake --- diff --git a/ChangeLog b/ChangeLog index c81ac4c9f..6cef0d2ce 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2009-03-14 Eric Blake + + Resync upstream files. + * GNUmakefile: Run 'make fetch'. + * build-aux/announce-gen: Likewise. + * build-aux/config.guess: Likewise. + * build-aux/config.sub: Likewise. + * build-aux/gnupload: Likewise. + * build-aux/texinfo.tex: Likewise. + * build-aux/vc-list-files: Likewise. + * doc/gnu-oids.texi: Likewise. + * doc/standards.texi: Likewise. + 2009-03-09 Ralf Wildenhues New test for SunStudio `restrict' handling. diff --git a/GNUmakefile b/GNUmakefile index 0fdd3fa73..33eb3aa4d 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -5,7 +5,7 @@ # It is necessary if you want to build targets usually of interest # only to the maintainer. -# Copyright (C) 2001, 2003, 2006-2008 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2006-2009 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -38,6 +38,9 @@ ifeq ($(_have-Makefile),yes) # Make tar archive easier to reproduce. export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner +# Allow the user to add to this in the Makefile. +ALL_RECURSIVE_TARGETS = + include Makefile # Some projects override e.g., _autoreconf here. @@ -61,7 +64,7 @@ ifeq ($(_have-git-version-gen)0,yes$(MAKELEVEL)) && $(_build-aux)/git-version-gen .tarball-version) ifneq ($(_curr-ver),$(VERSION)) ifeq ($(_curr-ver),UNKNOWN) - $(info WARNING: unable to verify if $(VERSION) is correct version) + $(info WARNING: unable to verify if $(VERSION) is the correct version) else ifneq (,$(_is-install-target)) # GNU Coding Standards state that 'make install' should not cause @@ -107,6 +110,18 @@ abort-due-to-no-makefile: endif # Tell version 3.79 and up of GNU make to not build goals in this -# directory in parallel. This is necessary in case someone tries to -# build multiple targets on one command line. +# directory in parallel, in case someone tries to build multiple +# targets, and one of them can cause a recursive target to be invoked. + +# Only set this if Automake doesn't provide it. +AM_RECURSIVE_TARGETS ?= $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) \ + dist distcheck tags ctags + +ALL_RECURSIVE_TARGETS += $(AM_RECURSIVE_TARGETS) + +ifneq ($(word 2, $(MAKECMDGOALS)), ) +ifneq ($(filter $(ALL_RECURSIVE_TARGETS), $(MAKECMDGOALS)), ) .NOTPARALLEL: +endif +endif diff --git a/build-aux/announce-gen b/build-aux/announce-gen index d1a4b255a..e5e749131 100755 --- a/build-aux/announce-gen +++ b/build-aux/announce-gen @@ -1,13 +1,13 @@ #!/usr/bin/perl -w # Generate a release announcement message. -my $VERSION = '2008-12-02 16:28'; # UTC +my $VERSION = '2009-03-05 09:52'; # UTC # The definition above must lie within the first 8 lines in order # for the Emacs time-stamp write hook (at end) to update it. # If you change this file with Emacs, please let the write hook # do its job. Otherwise, update this string manually. -# Copyright (C) 2002-2008 Free Software Foundation, Inc. +# Copyright (C) 2002-2009 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -34,6 +34,7 @@ use POSIX qw(strftime); (my $ME = $0) =~ s|.*/||; my %valid_release_types = map {$_ => 1} qw (alpha beta major); +my @archive_suffixes = ('tar.gz', 'tar.bz2', 'tar.lzma', 'tar.xz'); END { @@ -96,6 +97,8 @@ The following are optional: VERSION is the result of running git describe in the gnulib source directory. required if gnulib is in TOOL_LIST. + --no-print-checksums do not emit MD5 or SHA1 checksums + --archive-suffix=SUF add SUF to the list of archive suffixes --help display this help and exit --version output version information and exit @@ -185,8 +188,7 @@ sub print_checksums (@) print "$dig $f\n"; } } - - + print "\n"; } =item C \@news_file, 'bootstrap-tools=s' => \$bootstrap_tools, 'gnulib-version=s' => \$gnulib_version, + 'print-checksums!' => \$print_checksums_p, + 'archive-suffix=s' => \@archive_suffixes, help => sub { usage 0 }, version => sub { print "$ME version $VERSION\n"; exit }, @@ -426,16 +431,14 @@ sub get_tool_versions ($$) and usage 1; my $my_distdir = "$package_name-$curr_version"; - my $tgz = "$my_distdir.tar.gz"; - my $tbz = "$my_distdir.tar.bz2"; - my $lzma = "$my_distdir.tar.lzma"; - my $xz = "$my_distdir.tar.xz"; my $xd = "$package_name-$prev_version-$curr_version.xdelta"; - my @tarballs = grep {-f $_} ($tgz, $tbz, $lzma, $xz); + my @candidates = map { "$my_distdir.$_" } @archive_suffixes; + my @tarballs = grep {-f $_} @candidates; + @tarballs - or die "$ME: none of $tgz, $tbz, $lzma or $xz were found\n"; + or die "$ME: none of " . join(', ', @candidates) . " were found\n"; my @sizable = @tarballs; -f $xd and push @sizable, $xd; @@ -464,16 +467,16 @@ EOF print_locations ("GPG detached signatures[*]", @url_dir_list, %size, @sig_files); - print_checksums (@sizable); + $print_checksums_p + and print_checksums (@sizable); print <&2 diff --git a/build-aux/config.sub b/build-aux/config.sub index 9489dc786..d546a94b9 100755 --- a/build-aux/config.sub +++ b/build-aux/config.sub @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-12-11' +timestamp='2009-02-03' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -122,6 +122,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in 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 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` @@ -445,6 +446,10 @@ case $basic_machine in basic_machine=m68k-apollo os=-bsd ;; + aros) + basic_machine=i386-pc + os=-aros + ;; aux) basic_machine=m68k-apple os=-aux @@ -1256,8 +1261,9 @@ case $os in -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ + | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ diff --git a/build-aux/gnupload b/build-aux/gnupload index 12c939494..7c34784e4 100755 --- a/build-aux/gnupload +++ b/build-aux/gnupload @@ -1,9 +1,9 @@ #!/bin/sh # Sign files and upload them. -scriptversion=2008-11-12.21 +scriptversion=2009-03-05.20 -# Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation +# Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -23,98 +23,193 @@ scriptversion=2008-11-12.21 set -e GPG='gpg --batch --no-tty' +conffile=.gnuploadrc to= -delete=false +dry_run=false +symlink_files= +delete_files= +delete_symlinks= +collect_var= +dbg= -usage="Usage: $0 [OPTIONS]... FILES... +usage="Usage: $0 [OPTIONS]... [COMMAND] FILES... [[COMMAND] FILES...] -Sign all FILES, and upload them to (or delete them from) selected -destinations, according to +Sign all FILES, and upload them to selected destinations, according to . +Commands: + --delete delete FILES from destination + --symlink create symbolic links + --rmsymlink remove symbolic links + -- treat the remaining arguments as files to upload + Options: --help print this help text and exit --to DEST specify one destination for FILES (multiple --to options are allowed) --user NAME sign with key NAME - --delete delete FILES from destination instead of uploading + --symlink-regex[=EXPR] use sed script EXPR to compute symbolic link names + --dry-run do nothing, show what would have been done --version output version information and exit +If --symlink-regex is given without EXPR, then the link target name +is created by replacing the version information with \`-latest', e.g.: + + foo-1.3.4.tar.gz -> foo-latest.tar.gz + Recognized destinations are: alpha.gnu.org:DIRECTORY savannah.gnu.org:DIRECTORY savannah.nongnu.org:DIRECTORY ftp.gnu.org:DIRECTORY build directive files and upload files by FTP + download.gnu.org.ua:{alpha|ftp}/DIRECTORY + build directive files and upload files by SFTP [user@]host:DIRECTORY upload files with scp -Deletion only works for ftp.gnu.org and alpha.gnu.org (using the -archive: directive). Otherwise it is a no-op. Deleting a file foo also -deletes foo.sig; do not specify the .sig explicitly. +Options and commands are applied in order. If the file $conffile exists +in the current working directory, its contents are prepended to the +actual command line options. Use this to keep your defaults. Comments +(#) and empty lines in $conffile are allowed. + +Examples: +1. Upload automake-1.8.2b.tar.gz and automake-1.8.2b.tar.bz2 to two sites: + gnupload --to sources.redhat.com:~ftp/pub/automake \\ + --to alpha.gnu.org:automake \\ + automake-1.8.2b.tar.gz automake-1.8.2b.tar.bz2 + +2. Same as above, but also create symbolic links to automake-latest.tar.*: + gnupload --to sources.redhat.com:~ftp/pub/automake \\ + --to alpha.gnu.org:automake \\ + --symlink-regex \\ + automake-1.8.2b.tar.gz automake-1.8.2b.tar.bz2 + +3. Symlink automake-1.8.2b.tar.gz to automake-latest.tar.gz and +automake-1.8.2b.tar.bz2 to automake-latest.tar.bz2 on both sites: -Simple single-target single-file examples: - gnupload --to alpha.gnu.org:automake automake-1.8.2b.tar.gz - gnupload --to ftp.gnu.org:automake automake-1.8.3.tar.gz - gnupload --to alpha.gnu.org:automake --delete automake-oops.tar.gz + gnupload --to sources.redhat.com:~ftp/pub/automake \\ + --to alpha.gnu.org:automake \\ + --symlink automake-1.8.2b.tar.gz automake-latest.tar.gz \\ + automake-1.8.2b.tar.bz2 automake-latest.tar.bz2 + +4. Delete automake-1.8.2a.tar.gz and .bz2, remove symlink +automake-latest.tar.gz and upload automake-1.8.2b.tar.gz: -Multiple-target multiple-file example: gnupload --to sources.redhat.com:~ftp/pub/automake \\ --to alpha.gnu.org:automake \\ + --delete automake-1.8.2a.tar.gz automake-1.8.2a.tar.bz2 \\ + --rmsymlink automake-latest.tar.gz \\ + -- \\ automake-1.8.2b.tar.gz automake-1.8.2b.tar.bz2 Report bugs to . Send patches to ." +# Read local configuration file +if test -r "$conffile"; then + echo "$0: Reading configuration file $conffile" + eval set x "`sed 's/#.*$//;/^$/d' \"$conffile\" | tr '\012\015' ' '` \"\$@\"" + shift +fi + while test -n "$1"; do case $1 in - --delete) - delete=true - shift - ;; + -*) + collect_var= + case $1 in --help) echo "$usage" exit $? ;; --to) if test -z "$2"; then - echo "$0: Missing argument for --to" 1>&2 + echo "$0: Missing argument for --to" 1>&2 exit 1 else to="$to $2" - shift 2 + shift fi ;; --user) if test -z "$2"; then - echo "$0: Missing argument for --user" 1>&2 + echo "$0: Missing argument for --user" 1>&2 exit 1 else GPG="$GPG --local-user $2" - shift 2 + shift fi ;; + --delete) + collect_var=delete_files + ;; + --rmsymlink) + collect_var=delete_symlinks + ;; + --symlink-regex=*) + symlink_expr=`expr "$1" : '[^=]*=\(.*\)'` + ;; + --symlink-regex) + symlink_expr='s|-[0-9][0-9\.]*\(-[0-9][0-9]*\)\{0,1\}\.|-latest.|' + ;; + --symlink) + collect_var=symlink_files + ;; + --dry-run|-n) + dry_run=: + ;; --version) echo "gnupload $scriptversion" exit $? ;; + --) + shift + break + ;; -*) echo "$0: Unknown option \`$1', try \`$0 --help'" 1>&2 exit 1 ;; - *) + esac + ;; + *) + if test -z "$collect_var"; then break - ;; + else + eval "$collect_var=\"\$$collect_var $1\"" + fi + ;; esac + shift done -if test $# = 0; then - echo "$0: No file to upload or delete" 1>&2 +dprint() +{ + echo "Running $*..." +} + +if $dry_run; then + dbg=dprint +fi + +if test -z "$to"; then + echo "$0: Missing destination sites" >&2 exit 1 -else - : fi -if $delete; then :; else +if test -n "$symlink_files"; then + x=`echo "$symlink_files" | sed 's/[^ ]//g;s/ //g'` + if test -n "$x"; then + echo "$0: Odd number of symlink arguments" >&2 + exit 1 + fi +fi + +if test $# = 0; then + if test -z "${symlink_files}${delete_files}${delete_symlinks}"; then + echo "$0: No file to upload" 1>&2 + exit 1 + fi +else # Make sure all files exist. We don't want to ask # for the passphrase if the script will fail. for file @@ -122,8 +217,15 @@ if $delete; then :; else if test ! -f $file; then echo "$0: Cannot find \`$file'" 1>&2 exit 1 - else - : + elif test -n "$symlink_expr"; then + linkname=`echo $file | sed "$symlink_expr"` + if test -z "$linkname"; then + echo "$0: symlink expression produces empty results" >&2 + exit 1 + elif test "$linkname" = $file; then + echo "$0: symlink expression does not alter file name" >&2 + exit 1 + fi fi done fi @@ -143,72 +245,164 @@ read -r passphrase stty echo echo -# Nothing to sign if deleting. -if $delete; then :; else +if test $# -ne 0; then for file do echo "Signing $file..." rm -f $file.sig - echo $passphrase | $GPG --passphrase-fd 0 -ba -o $file.sig $file + echo "$passphrase" | $dbg $GPG --passphrase-fd 0 -ba -o $file.sig $file + done +fi + + +# mkdirective DESTDIR BASE FILE STMT +# Arguments: See upload, below +mkdirective () +{ + stmt="$4" + if test -n "$3"; then + stmt=" +filename: $3$stmt" + fi + + cat >${2}.directive<&2 + fi + $dbg ncftpput savannah.gnu.org /incoming/savannah/$destdir $files + ;; + savannah.nongnu.org:*) + if test -z "$files"; then + echo "$0: warning: standalone directives not applicable for $dest" >&2 + fi + $dbg ncftpput savannah.nongnu.org /incoming/savannah/$destdir $files + ;; + download.gnu.org.ua:alpha/*|download.gnu.org.ua:ftp/*) + destdir_p1=`echo "$destdir" | sed 's,^[^/]*/,,'` + destdir_topdir=`echo "$destdir" | sed 's,/.*,,'` + mkdirective "$destdir_p1" "$base" "$file" "$stmt" + echo "$passphrase" | $dbg $GPG --passphrase-fd 0 --clearsign $base.directive + for f in $files $base.directive.asc + do + echo put $f + done | $dbg sftp -b - puszcza.gnu.org.ua:/incoming/$destdir_topdir + ;; + /*) + dest_host=`echo "$dest" | sed 's,:.*,,'` + mkdirective "$destdir" "$base" "$file" "$stmt" + echo "$passphrase" | $dbg $GPG --passphrase-fd 0 --clearsign $base.directive + $dbg cp $files $base.directive.asc $dest_host + ;; + *) + if test -z "$files"; then + echo "$0: warning: standalone directives not applicable for $dest" >&2 + fi + $dbg scp $files $dest + ;; + esac + rm -f $base.directive $base.directive.asc +} + +##### +# Process any standalone directives +stmt= +if test -n "$symlink_files"; then + stmt="$stmt +`mksymlink $symlink_files`" +fi + +for file in $delete_files +do + stmt="$stmt +archive: $file" +done + +for file in $delete_symlinks +do + stmt="$stmt +rmsymlink: $file" +done + +if test -n "$stmt"; then + for dest in $to + do + destdir=`echo $dest | sed 's/[^:]*://'` + upload "$dest" "$destdir" "`hostname`-$$" "" "$stmt" done fi +# Process actual uploads for dest in $to do for file do - # Prepare arguments. - if $delete; then - echo "Removing $file from $dest..." - files= # nothing to upload if deleting - directive="archive: $file" - else - echo "Uploading $file to $dest..." - files="$file $file.sig" - directive="filename: "`basename -- "$file"` - fi + echo "Uploading $file to $dest..." + stmt= + files="$file $file.sig" destdir=`echo $dest | sed 's/[^:]*://'` - - case $dest in - alpha.gnu.org:*) - rm -f $file.directive $file.directive.asc - cat >$file.directive<$file.directive< 1.3.6.1.4.1.11591.5 GNU Mailutils +@c Added 2009-03-03 on request from Simon Josefsson +1.3.6.1.4.1.11591.5 GNU Shishi + 1.3.6.1.4.1.11591.12 digestAlgorithm 1.3.6.1.4.1.11591.12.2 TIGER/192 1.3.6.1.4.1.11591.13 encryptionAlgorithm diff --git a/doc/standards.texi b/doc/standards.texi index bd90a92df..a2ddaf271 100644 --- a/doc/standards.texi +++ b/doc/standards.texi @@ -3,7 +3,7 @@ @setfilename standards.info @settitle GNU Coding Standards @c This date is automagically updated when you save this file: -@set lastupdate November 6, 2008 +@set lastupdate January 31, 2009 @c %**end of header @dircategory GNU organization @@ -27,7 +27,7 @@ The GNU coding standards, last updated @value{lastupdate}. Copyright @copyright{} 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software +2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document @@ -1086,13 +1086,19 @@ is seen, and the program should not perform its normal function. @cindex address for bug reports @cindex bug reports -Near the end of the @samp{--help} option's output there should be a line -that says where to mail bug reports. It should have this format: +Near the end of the @samp{--help} option's output, please place lines +giving the email address for bug reports, the package's home page +(normally @indicateurl{http://www.gnu.org/software/@var{pkg}}, and the +general page for help using GNU programs. The format should be like this: @example -Report bugs to @var{mailing-address}. +Report bugs to: @var{mailing-address} +@var{pkg} home page: +General help using GNU software: @end example +It is ok to mention other appropriate mailing lists and web pages. + @node Option Table @section Table of Long Options