Skip to content

Commit

Permalink
Shuffle maintainer-specific rules.
Browse files Browse the repository at this point in the history
* Makefile.am (maintainer-check-tests): Delete.
(autom4te-update): Move...
* cfg.mk (autom4te-update): ...here.
(fetch): Depend on autom4te-update.  Split...
(gnulib-update): ...into new rule.  Import move-if-change from
gnulib.
* maint.mk (maintainer-distcheck): Absorb former maintainer-check
rule.
* build-aux/move-if-change: New file, undistributed.
* .gitattributes: Handle new upstream file.
* .gitignore: Ignore maintainer cruft.
* HACKING: Update maintainer instructions.
* build-aux/config.guess: Update from upstream.
* build-aux/config.sub: Likewise.
* build-aux/gendocs.sh: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/gendocs_template: Likewise.
* doc/standards.texi: Likewise.

Signed-off-by: Eric Blake <[email protected]>
  • Loading branch information
ebblake committed Apr 21, 2009
1 parent e430ff0 commit c474ab9
Show file tree
Hide file tree
Showing 14 changed files with 169 additions and 56 deletions.
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
# See README-hacking for ideas on making these settings useful.
*.texi* diff=texinfo
ChangeLog merge=merge-changelog

# Exempt upstream files from whitespace rules.
config.guess -whitespace
config.sub -whitespace
elisp-comp -whitespace
install-sh -whitespace
mdate-sh -whitespace
missing -whitespace
move-if-change -whitespace
texinfo.tex -whitespace
fdl.texi -whitespace
fdl-1.3.texi -whitespace
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
.#*
.version
CVS
Fetchdir
INSTALL
Makefile
Makefile.in
Expand Down
22 changes: 22 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,25 @@
2009-04-21 Eric Blake <[email protected]>

Shuffle maintainer-specific rules.
* Makefile.am (maintainer-check-tests): Delete.
(autom4te-update): Move...
* cfg.mk (autom4te-update): ...here.
(fetch): Depend on autom4te-update. Split...
(gnulib-update): ...into new rule. Import move-if-change from
gnulib.
* maint.mk (maintainer-distcheck): Absorb former maintainer-check
rule.
* build-aux/move-if-change: New file, undistributed.
* .gitattributes: Handle new upstream file.
* .gitignore: Ignore maintainer cruft.
* HACKING: Update maintainer instructions.
* build-aux/config.guess: Update from upstream.
* build-aux/config.sub: Likewise.
* build-aux/gendocs.sh: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/gendocs_template: Likewise.
* doc/standards.texi: Likewise.

2009-04-19 Ralf Wildenhues <[email protected]>

Sync autom4te perl modules from Automake.
Expand Down
5 changes: 3 additions & 2 deletions HACKING
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,10 @@ release:
- Run `make syntax-check'
This makes sure that the source files follow some consistent rules.
The checks live in maint.mk, which is intended to be shared across
several projects.
several projects. (Help in merging this to use gnulib's maint.mk
would be appreciated).

- Run `make maintainer-check'
- Run `make maintainer-distcheck'
This is quite long. It basically runs the test suite using a C++
compiler instead of a C compiler, and within a severe environment
(POSIXLY_CORRECT).
Expand Down
36 changes: 0 additions & 36 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -46,42 +46,6 @@ $(srcdir)/INSTALL: $(top_srcdir)/doc/install.texi
$(top_srcdir)/doc/install.texi
endif

## maintainer-check ##
maintainer-check: maintainer-check-tests
maintainer-check-tests: all
cd tests && $(MAKE) $(AM_MAKEFLAGS) maintainer-check


## ----------------------------------- ##
## Updating Perl files from Automake. ##
## ----------------------------------- ##

WGET = wget
WGETFLAGS = -C off

## Fetch the latest versions of files we care about.
automake_gitweb = \
http://git.savannah.gnu.org/gitweb/?p=automake.git;a=blob_plain;hb=HEAD;
autom4te_files = \
Autom4te/Configure_ac.pm \
Autom4te/Channels.pm \
Autom4te/FileUtils.pm \
Autom4te/Struct.pm \
Autom4te/XFile.pm

autom4te-update:
rm -f -r Fetchdir > /dev/null 2>&1
mkdir -p Fetchdir/Autom4te
for file in $(autom4te_files); do \
infile=`echo $$file | sed 's/Autom4te/Automake/g'`; \
$(WGET) $(WGET_FLAGS) \
"$(automake_gitweb)f=lib/$$infile" \
-O "Fetchdir/$$file" || exit; \
done
perl -pi -e 's/Automake::/Autom4te::/g' Fetchdir/Autom4te/*.pm
for file in $(autom4te_files); do \
$(move_if_change) Fetchdir/$$file $(srcdir)/lib/$$file || exit; \
done

# Version string management. There are two files to be aware of:
# .tarball-version - present only in a distribution tarball, and not in
Expand Down
7 changes: 5 additions & 2 deletions build-aux/config.guess
Original file line number Diff line number Diff line change
Expand Up @@ -1115,8 +1115,11 @@ EOF
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
# 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 ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
Expand Down
3 changes: 2 additions & 1 deletion build-aux/config.sub
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
# Free Software Foundation, Inc.

timestamp='2009-02-03'
timestamp='2009-04-17'

# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
Expand Down Expand Up @@ -272,6 +272,7 @@ case $basic_machine in
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
| moxie \
| mt \
| msp430 \
| nios | nios2 \
Expand Down
8 changes: 4 additions & 4 deletions build-aux/gendocs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# gendocs.sh -- generate a GNU manual in many formats. This script is
# mentioned in maintain.texi. See the help message below for usage details.

scriptversion=2009-01-02.08
scriptversion=2009-04-08.09

# Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009
# Free Software Foundation, Inc.
Expand All @@ -19,7 +19,7 @@ scriptversion=2009-01-02.08
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
# Original author: Mohit Agarwal.
# Send bug reports and any other correspondence to [email protected].

Expand Down Expand Up @@ -98,7 +98,7 @@ You can set the environment variables MAKEINFO, TEXI2DVI, and DVIPS to
control the programs that get executed, and GENDOCS_TEMPLATE_DIR to
control where the gendocs_template file is looked for. (With --docbook,
the environment variables DOCBOOK2HTML, DOCBOOK2PDF, DOCBOOK2PS, and
DOCBOOK2TXT are also respected.)
DOCBOOK2TXT are also respected.)
By default, makeinfo is run in the default (English) locale, since
that's the language of most Texinfo manuals. If you happen to have a
Expand Down Expand Up @@ -247,7 +247,7 @@ if test -z "$use_texi2html"; then
cd ${split_html_dir} || exit 1
tar -czf $dotdot_outdir/${PACKAGE}.html_node.tar.gz -- *.html
)
html_node_tgz_size=`calcsize $outdir/${PACKAGE}.html_node.tar.gz`
html_node_tgz_size=`calcsize $outdir/${PACKAGE}.html_node.tar.gz`
rm -f $outdir/html_node/*.html
mkdir -p $outdir/html_node/
mv ${split_html_dir}/*.html $outdir/html_node/
Expand Down
77 changes: 77 additions & 0 deletions build-aux/move-if-change
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
#!/bin/sh
# Like mv $1 $2, but if the files are the same, just delete $1.
# Status is zero if successful, nonzero otherwise.

VERSION='2007-09-28 23:10'; # 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-2007 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
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.

usage="usage: $0 SOURCE DEST"

help="$usage
or: $0 OPTION
If SOURCE is different than DEST, then move it to DEST; else remove SOURCE.
--help display this help and exit
--version output version information and exit
Report bugs to <[email protected]>."

version=`expr "$VERSION" : '\([^ ]*\)'`
version="move-if-change (gnulib) $version
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law."


for arg
do
case $arg in
--help | --hel | --he | --h)
exec echo "$help" ;;
--version | --versio | --versi | --vers | --ver | --ve | --v)
exec echo "$version" ;;
--)
shift
break ;;
-*)
echo "$0: invalid option: $arg" >&2
exit 1 ;;
*)
break ;;
esac
done

test $# = 2 || { echo "$0: $usage" >&2; exit 1; }

if test -r "$2" && cmp -s -- "$1" "$2"; then
rm -f -- "$1"
else
mv -f -- "$1" "$2"
fi

## Local Variables:
## eval: (add-hook 'write-file-hooks 'time-stamp)
## time-stamp-start: "VERSION='"
## time-stamp-format: "%:y-%02m-%02d %02H:%02M"
## time-stamp-time-zone: "UTC"
## time-stamp-end: "'; # UTC"
## End:
6 changes: 5 additions & 1 deletion build-aux/texinfo.tex
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
\def\texinfoversion{2009-03-22.17}
\def\texinfoversion{2009-03-28.05}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
Expand Down Expand Up @@ -9272,8 +9272,12 @@
@markupsetuplqdefault
@markupsetuprqdefault
@c Gnulib now utterly and painfully insists on no trailing whitespace.
@c So we have to nuke it.
@c Local variables:
@c eval: (add-hook 'write-file-hooks 'time-stamp)
@c eval: (add-hook 'write-file-hooks 'nuke-trailing-whitespace)
@c page-delimiter: "^\\\\message"
@c time-stamp-start: "def\\\\texinfoversion{"
@c time-stamp-format: "%:y-%02m-%02d.%02H"
Expand Down
40 changes: 38 additions & 2 deletions cfg.mk
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,10 @@ gpg_key_ID = F4850180
gnulib_dir = '$(abs_srcdir)'/../gnulib

# Update files from gnulib.
.PHONY: fetch
fetch:
.PHONY: fetch gnulib-update autom4te-update
fetch: gnulib-update autom4te-update

gnulib-update:
cp $(gnulib_dir)/build-aux/announce-gen $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/config.guess $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/config.sub $(srcdir)/build-aux
Expand All @@ -56,6 +58,7 @@ fetch:
cp $(gnulib_dir)/build-aux/install-sh $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/mdate-sh $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/missing $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/move-if-change $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/vc-list-files $(srcdir)/build-aux
cp $(gnulib_dir)/build-aux/texinfo.tex $(srcdir)/build-aux
cp $(gnulib_dir)/doc/fdl.texi $(srcdir)/doc
Expand All @@ -65,6 +68,39 @@ fetch:
cp $(gnulib_dir)/doc/standards.texi $(srcdir)/doc
cp $(gnulib_dir)/top/GNUmakefile $(srcdir)

WGET = wget
WGETFLAGS = -C off

## Fetch the latest versions of files we care about.
automake_gitweb = \
http://git.savannah.gnu.org/gitweb/?p=automake.git;a=blob_plain;hb=HEAD;
autom4te_files = \
Autom4te/Configure_ac.pm \
Autom4te/Channels.pm \
Autom4te/FileUtils.pm \
Autom4te/Struct.pm \
Autom4te/XFile.pm

move_if_change = '$(abs_srcdir)'/build-aux/move-if-change

autom4te-update:
rm -fr Fetchdir > /dev/null 2>&1
mkdir -p Fetchdir/Autom4te
for file in $(autom4te_files); do \
infile=`echo $$file | sed 's/Autom4te/Automake/g'`; \
$(WGET) $(WGET_FLAGS) \
"$(automake_gitweb)f=lib/$$infile" \
-O "Fetchdir/$$file" || exit; \
done
perl -pi -e 's/Automake::/Autom4te::/g' Fetchdir/Autom4te/*.pm
for file in $(autom4te_files); do \
$(move_if_change) Fetchdir/$$file $(srcdir)/lib/$$file || exit; \
done
rm -fr Fetchdir > /dev/null 2>&1
@echo
@echo "Please avoid committing copyright changes until GPLv3 is sorted"
@echo

# Tests not to run.
local-checks-to-skip ?= \
changelog-check sc_unmarked_diagnostics
Expand Down
10 changes: 5 additions & 5 deletions doc/gendocs_template
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<p>This manual (%%PACKAGE%%) is available in the following formats:</p>

<ul>
<li><a href="%%PACKAGE%%.html">HTML
<li><a href="%%PACKAGE%%.html">HTML
(%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li>
<li><a href="html_node/index.html">HTML</a> - with one web page per
node.</li>
Expand All @@ -28,7 +28,7 @@
chapter.</li>
%%ENDIF HTML_CHAPTER%%
<li><a href="%%PACKAGE%%.html.gz">HTML compressed
(%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
(%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on
one web page.</li>
<li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed
(%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> -
Expand Down Expand Up @@ -69,17 +69,17 @@ script</a>.)</p>
<!-- If needed, change the copyright block at the bottom. In general, -->
<!-- all pages on the GNU web server should have the section about -->
<!-- verbatim copying. Please do NOT remove this without talking -->
<!-- with the webmasters first. -->
<!-- with the webmasters first. -->
<!-- Please make sure the copyright date is consistent with the document -->
<!-- and that it is like this "2001, 2002" not this "2001-2002." -->
</div><!-- for id="content", starts in the include above -->
<!--#include virtual="/server/footer.html" -->
<div id="footer">

<p>
Please send FSF &amp; GNU inquiries to
Please send FSF &amp; GNU inquiries to
<a href="mailto:[email protected]"><em>[email protected]</em></a>.
There are also <a href="/contact/">other ways to contact</a>
There are also <a href="/contact/">other ways to contact</a>
the FSF.
<br />
Please send broken links and other corrections or suggestions to
Expand Down
6 changes: 3 additions & 3 deletions doc/standards.texi
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
@setfilename standards.info
@settitle GNU Coding Standards
@c This date is automagically updated when you save this file:
@set lastupdate January 31, 2009
@set lastupdate April 16, 2009
@c %**end of header

@dircategory GNU organization
Expand Down Expand Up @@ -313,7 +313,7 @@ Guile also includes bindings for GTK+/GNOME, making it practical to
write modern GUI functionality within Guile. We don't reject programs
written in other ``scripting languages'' such as Perl and Python, but
using Guile is very important for the overall consistency of the GNU
system.
system.


@node Compatibility
Expand Down Expand Up @@ -4041,7 +4041,7 @@ should contain an explanation of the installation procedure.
The @file{README} file should also refer to the file which contains the
copying conditions. The GNU GPL, if used, should be in a file called
@file{COPYING}. If the GNU LGPL is used, it should be in a file called
@file{COPYING.LIB}.
@file{COPYING.LESSER}.

Naturally, all the source files must be in the distribution. It is okay
to include non-source files in the distribution, provided they are
Expand Down
Loading

0 comments on commit c474ab9

Please sign in to comment.