[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fix `make update'
From: |
Ralf Wildenhues |
Subject: |
Re: Fix `make update' |
Date: |
Mon, 10 Apr 2006 22:12:27 +0200 |
User-agent: |
Mutt/1.5.9i |
Hi Paul,
* Paul Eggert wrote on Mon, Apr 10, 2006 at 09:55:17PM CEST:
> Ralf Wildenhues <address@hidden> writes:
>
> > - grep 'enum { COPYRIGHT_YEAR = 2005 };' $(v_etc_file) \
> > + grep 'enum { COPYRIGHT_YEAR = 2006 };' $(v_etc_file) \
>
> This should use "date +%Y" rather than hardwiring the year.
Definitely.
> (There may be problems near 00:00 on January 1, but if that turns into
> an issue, we can standardize on the time zone used in Cambridge,
> Massachusetts. :-)
People should not spend New Year's Eve near a computer.. ;-)
> > - test "$$fail" && exit 1
> > + if test "$$fail"; then exit 1; else :; fi
>
> That last line is confusing and should be just "exit $$status",
> reworking the earlier code accordingly. The code should probably also
> check the status of the other CVS command in that loop. Something
> like this, perhaps:
Yes, good except using `$status' is not portable, and even if this file
does not need to be portable, I like to avoid such pitfalls when that is
easy to do.
Updated patch below. OK?
Cheers, and thanks for the super-quick review!
Ralf
* Makefile.maint (cvs-sv): New macro, to be used..
(config.guess-url_prefix, config.sub-url_prefix)
(texinfo.tex-url_prefix, standards.texi-url_prefix): ..here;
point to CVS text checkout of Gnulib files.
(copyright-check): Bump current year.
(announcement): Do not hard-wire `./announce-gen'.
(cvs-update): Propagate failures of `cvs' and `move-if-change'
correctly.
* Makefile.cfg (executable-update): Use `chmod a+x' instead of
`chmod +x'.
(wget_files): Update config.guess, config.sub, texinfo.tex by
`wget-update', now that their URLs work again.
Index: Makefile.cfg
===================================================================
RCS file: /cvsroot/autoconf/autoconf/Makefile.cfg,v
retrieving revision 1.8
diff -u -r1.8 Makefile.cfg
--- Makefile.cfg 14 May 2005 07:00:39 -0000 1.8
+++ Makefile.cfg 10 Apr 2006 20:08:19 -0000
@@ -1,5 +1,5 @@
# Customize Makefile.maint for Autoconf. -*- Makefile -*-
-# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2006 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,11 +34,10 @@
# Files to update automatically.
wget_files = \
$(srcdir)/doc/standards.texi \
- $(srcdir)/doc/make-stds.texi
-#Currently done by hand:
-# $(srcdir)/config/config.guess
-# $(srcdir)/config/config.sub
-# $(srcdir)/config/texinfo.tex
+ $(srcdir)/doc/make-stds.texi \
+ $(srcdir)/config/config.guess \
+ $(srcdir)/config/config.sub \
+ $(srcdir)/config/texinfo.tex
cvs_files = \
$(srcdir)/config/elisp-comp \
@@ -53,7 +52,7 @@
.PHONY: executable-update
# autom4te-update is defined in Makefile.am.
executable-update: wget-update cvs-update autom4te-update
- chmod +x $(cvs_files) \
+ chmod a+x $(cvs_files) \
$(srcdir)/config/config.guess \
$(srcdir)/config/config.sub
Index: Makefile.maint
===================================================================
RCS file: /cvsroot/autoconf/autoconf/Makefile.maint,v
retrieving revision 1.35
diff -u -r1.35 Makefile.maint
--- Makefile.maint 6 Apr 2006 17:43:52 -0000 1.35
+++ Makefile.maint 10 Apr 2006 20:08:20 -0000
@@ -382,7 +382,7 @@
# Make sure that the copyright date in $(v_etc_file) is up to date.
copyright-check:
@if test -f $(v_etc_file); then \
- grep 'enum { COPYRIGHT_YEAR = 2005 };' $(v_etc_file) \
+ grep "enum { COPYRIGHT_YEAR = `date +%Y` };" $(v_etc_file) \
>/dev/null \
|| { echo 'out of date copyright in $(v_etc_file); update it' 1>&2; \
exit 1; }; \
@@ -484,7 +484,7 @@
rel-files = $(xd-delta) $(DIST_ARCHIVES)
announcement: NEWS ChangeLog $(rel-files)
- @./announce-gen \
+ @$(announce_gen) \
--release-type=$(RELEASE_TYPE) \
--package=$(PACKAGE) \
--prev=$(PREV_VERSION) \
@@ -500,6 +500,7 @@
ftp-gnu = ftp://ftp.gnu.org/gnu
www-gnu = http://www.gnu.org
+cvs-sv = http://cvs.savannah.gnu.org/viewcvs/~checkout~
# Use mv, if you don't have/want move-if-change.
move_if_change ?= move-if-change
@@ -550,14 +551,14 @@
get-targets = $(patsubst %, get-%, $(wget_files))
-config.guess-url_prefix = $(ftp-gnu)/build-aux/
-config.sub-url_prefix = $(ftp-gnu)/build-aux/
+config.guess-url_prefix = $(cvs-sv)/config/config/
+config.sub-url_prefix = $(cvs-sv)/config/config/
ansi2knr.c-url_prefix = ftp://ftp.cs.wisc.edu/ghost/
-texinfo.tex-url_prefix = $(ftp-gnu)/texinfo/
+texinfo.tex-url_prefix = $(cvs-sv)/gnulib/gnulib/build-aux/
-standards.texi-url_prefix = $(www-gnu)/prep/
+standards.texi-url_prefix = $(cvs-sv)/gnulib/gnulib/doc/
make-stds.texi-url_prefix = $(standards.texi-url_prefix)
target = $(patsubst get-%, %, $@)
@@ -580,18 +581,19 @@
.PHONY: cvs-update
cvs-update:
- fail=; \
+ exit_status=0; \
for f in $(cvs_files); do \
test -f $$f || { echo "*** skipping $$f" 1>&2; continue; }; \
cvs diff $$f > /dev/null \
- || { echo "*** $$f is locally modified; skipping it" 1>&2; \
- fail=yes; continue; }; \
+ || { exit_status=$$?; \
+ echo "*** $$f is locally modified; skipping it" 1>&2; \
+ continue; }; \
file=$$(basename $$f); \
echo checking out $$file...; \
$(CVS) -d $(automake_repo) co -p automake/lib/$$file> $$f.t \
- && $(move_if_change) $$f.t $$f; \
+ && $(move_if_change) $$f.t $$f || exit_status=$$?; \
done; \
- test "$$fail" && exit 1
+ exit $$exit_status
emit_upload_commands:
@echo =====================================
- FYI: more updated files, Ralf Wildenhues, 2006/04/06
- Re: FYI: more updated files, Paul Eggert, 2006/04/09
- Re: FYI: more updated files, Ralf Wildenhues, 2006/04/09
- Re: FYI: more updated files, Paul Eggert, 2006/04/09
- Re: FYI: more updated files, Ralf Wildenhues, 2006/04/10
- Re: FYI: more updated files, Paul Eggert, 2006/04/10
- Fix `make update' (was: FYI: more updated files), Ralf Wildenhues, 2006/04/10
- Re: Fix `make update', Paul Eggert, 2006/04/10
- Re: Fix `make update',
Ralf Wildenhues <=
- Re: Fix `make update', Paul Eggert, 2006/04/10
- Re: Fix `make update', Ralf Wildenhues, 2006/04/10
- CVS checkout may not rerun autotools (was: FYI: more updated files), Ralf Wildenhues, 2006/04/10
- Re: CVS checkout may not rerun autotools, Paul Eggert, 2006/04/10
- Re: CVS checkout may not rerun autotools, Ralf Wildenhues, 2006/04/10
- Re: CVS checkout may not rerun autotools, Noah Misch, 2006/04/10
- Re: CVS checkout may not rerun autotools, Ralf Wildenhues, 2006/04/11
- Re: CVS checkout may not rerun autotools, Noah Misch, 2006/04/11
- Re: CVS checkout may not rerun autotools, Ralf Wildenhues, 2006/04/11