autoconf-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

upstream files sync


From: Eric Blake
Subject: upstream files sync
Date: Wed, 8 Oct 2008 15:42:49 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

I wanted to pick up today's GNUmakefile change, but got tired of my manual 
upgrade procedure.  This automates things, and removes CVS cruft (of course, it 
adds a dependency on having a gnulib checkout in the right location, but 
as 'make fetch' is something intended for a maintainer, who will be customizing 
cfg.mk appropriately anyway, and since it is not part of 'make dist', this 
isn't too much of a burdern).

I'm omitting the upstream diffs here.

From: Eric Blake <address@hidden>
Date: Wed, 8 Oct 2008 09:33:48 -0600
Subject: [PATCH] Resync from gnulib.

* cfg.mk (cvs_executable_files, cvs_files): Rewrite...
(fetch): ...into new target.
(executable-update): Delete, now that it is unused.
* maint.mk (update, local_updates, cvs_files, gnulib_repo)
(wget-update, cvs-update): Likewise.
* HACKING (Update the foreign files): Document new procedure.
* GNUmakefile: Resync from upstream, via new 'make fetch'.
* build-aux/config.guess: Likewise.

Signed-off-by: Eric Blake <address@hidden>
---
 ChangeLog              |   12 +++++++++++
 GNUmakefile            |   10 ++++++--
 HACKING                |    6 +---
 build-aux/config.guess |    7 ++++-
 cfg.mk                 |   51 +++++++++++++++++++----------------------------
 maint.mk               |   38 -----------------------------------
 6 files changed, 47 insertions(+), 77 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index f072ae4..3832161 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2008-10-08  Eric Blake  <address@hidden>
+
+       Resync from gnulib.
+       * cfg.mk (cvs_executable_files, cvs_files): Rewrite...
+       (fetch): ...into new target.
+       (executable-update): Delete, now that it is unused.
+       * maint.mk (update, local_updates, cvs_files, gnulib_repo)
+       (wget-update, cvs-update): Likewise.
+       * HACKING (Update the foreign files): Document new procedure.
+       * GNUmakefile: Resync from upstream, via new 'make fetch'.
+       * build-aux/config.guess: Likewise.
+
 2008-10-07  Eric Blake  <address@hidden>
 
        Ensure _AS_CLEANUP is defined.
diff --git a/GNUmakefile b/GNUmakefile
index 4b4cf15..7816416 100644
diff --git a/HACKING b/HACKING
index 27848e5..c7adfa4 100644
--- a/HACKING
+++ b/HACKING
@@ -101,10 +101,8 @@ environment, such as your GPG key and the location of a 
gnulib
 checkout.
 
 ** Update the foreign files
-Running `make update' in the top level should make it all for you.
-FIXME - this is broken as of 2.62, now that most upstream files are
-stored in git rather than CVS.  Until this is fixed, manually copy the
-files listed in cfg.mk from a gnulib git checkout.
+Running `make fetch' in the top level should grab it all for you; you
+should check the results before committing them in git.
 
 ** Set the version number
 Update the version number in NEWS (with version, date, and release
diff --git a/build-aux/config.guess b/build-aux/config.guess
index c7607c7..f0f0d36 100755
diff --git a/cfg.mk b/cfg.mk
index 54da291..c4bbb4f 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -38,42 +38,33 @@ url_dir_list = \
 # The GnuPG ID of the key used to sign the tarballs.
 gpg_key_ID = F4850180
 
-# Files to update automatically.
-cvs_executable_files = \
-  $(srcdir)/build-aux/announce-gen \
-  $(srcdir)/build-aux/config.guess \
-  $(srcdir)/build-aux/config.sub \
-  $(srcdir)/build-aux/elisp-comp \
-  $(srcdir)/build-aux/git-version-gen \
-  $(srcdir)/build-aux/gnupload \
-  $(srcdir)/build-aux/install-sh \
-  $(srcdir)/build-aux/mdate-sh \
-  $(srcdir)/build-aux/missing \
-  $(srcdir)/build-aux/vc-list-files
-
-cvs_files = $(cvs_executable_files) \
-  $(srcdir)/build-aux/texinfo.tex \
-  $(srcdir)/doc/fdl.texi \
-  $(srcdir)/doc/make-stds.texi \
-  $(srcdir)/doc/standards.texi \
-  $(srcdir)/GNUmakefile
-
-# Keep executables executable.  Make it robust to parallel makes.
-local_updates = executable-update
+# The local directory containing the checked-out copy of gnulib used in this
+# release.
+gnulib_dir = '$(abs_srcdir)'/../gnulib
 
-.PHONY: executable-update
-# autom4te-update is defined in Makefile.am.
-executable-update: wget-update cvs-update autom4te-update
-       chmod a+x $(cvs_executable_files)
+# Update files from gnulib.
+.PHONY: fetch
+fetch:
+       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
+       cp $(gnulib_dir)/build-aux/elisp-comp $(srcdir)/build-aux
+       cp $(gnulib_dir)/build-aux/git-version-gen $(srcdir)/build-aux
+       cp $(gnulib_dir)/build-aux/gnupload $(srcdir)/build-aux
+       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/vc-list-files $(srcdir)/build-aux
+       cp $(gnulib_dir)/build-aux/texinfo.tex $(srcdir)/build-aux
+       cp $(gnulib_dir)/doc/fdl.texi $(srcdir)/doc
+       cp $(gnulib_dir)/doc/make-stds.texi $(srcdir)/doc
+       cp $(gnulib_dir)/doc/standards.texi $(srcdir)/doc
+       cp $(gnulib_dir)/top/GNUmakefile $(srcdir)
 
 # Tests not to run.
 local-checks-to-skip ?= \
   changelog-check sc_unmarked_diagnostics
 
-# The local directory containing the checked-out copy of gnulib used in this
-# release.  For now, used solely for generating the web-manual.
-gnulib_dir = '$(abs_srcdir)'/../gnulib
-
 .PHONY: web-manual
 web-manual:
        @cd $(srcdir)/doc ; \
diff --git a/maint.mk b/maint.mk
index 7149adf..227720e 100644
--- a/maint.mk
+++ b/maint.mk
@@ -549,44 +549,6 @@ www-gnu = http://www.gnu.org
 # Use mv, if you don't have/want move-if-change.
 move_if_change ?= move-if-change
 
-
-# --------------------- #
-# Updating everything.  #
-# --------------------- #
-
-.PHONY: update
-local_updates ?= cvs-update
-update: $(local_updates)
-
-
-# -------------------------- #
-# Updating GNU build tools.  #
-# -------------------------- #
-
-cvs_files ?= \
-  $(srcdir)/build-aux/depcomp \
-  $(srcdir)/build-aux/install-sh \
-  $(srcdir)/build-aux/missing
-gnulib_repo=:pserver:address@hidden:/sources/gnulib
-.PHONY: wget-update
-wget-update: $(get-targets)
-
-.PHONY: cvs-update
-cvs-update:
-       fail=;                                                          \
-       for f in $(cvs_files) dummy; do                                 \
-         test $$f = dummy && continue;                                 \
-         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; };                                 \
-         file=$$(expr "X$$f" : 'X$(srcdir)/\(.*\)');                   \
-         echo checking out $$file...;                                  \
-         $(CVS) -d $(gnulib_repo) co -p gnulib/$$file >$$f.t           \
-           && $(move_if_change) $$f.t $$f;                             \
-       done;                                                           \
-       test "$$fail" && exit 1
-
 emit_upload_commands:
        @echo =====================================
        @echo =====================================
-- 
1.6.0.2







reply via email to

[Prev in Thread] Current Thread [Next in Thread]