[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: update fetch
From: |
Eric Blake |
Subject: |
Re: update fetch |
Date: |
Tue, 22 Jan 2008 14:05:45 -0700 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071031 Thunderbird/2.0.0.9 Mnenhy/0.7.5.666 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
[and adding coreutils]
According to Ralf Wildenhues on 1/22/2008 1:59 PM:
| Hello,
|
| I've started to convert the release rules to git. I'm pretty sure they
| don't work right yet (with Automake I ended up typing them manually),
| but this patch will cause `make git-update' to bring in upstream
| versions of gnulib hosted files.
|
| OK to apply?
Hmm. Makefile.maint claims (inaccurately) to be in sync with coreutils.
We should probably try to resynchronize, especially since Jim's already
tackled the idea of releasing from git.
|
| Update maintenance targets for git.
|
| * Makefile.cfg (git_files): Renamed from cvs_files.
| (git_executable_files): Renamed from cvs_executable_files.
| Adjust users.
| * Makefile.maint: Likewise.
| (GIT): New.
| (this-git-tag): Renamed from this-cvs-tag.
| (git-tag-check): Renamed from cvs-tag-check.
| (git-diff-check): Renamed from cvs-diff-check.
| (git-dist): Renamed from cvs-dist.
| (git-update): Renamed from cvs-update. Adjust to gnulib being
| a git repository now.
| Adjust all users, and adjust usage to git.
|
| diff --git a/Makefile.cfg b/Makefile.cfg
| index 7164e3b..d67b408 100644
| --- a/Makefile.cfg
| +++ b/Makefile.cfg
| @@ -1,5 +1,5 @@
| # Customize Makefile.maint for Autoconf. -*- Makefile -*-
| -# Copyright (C) 2003, 2004, 2006 Free Software Foundation, Inc.
| +# Copyright (C) 2003, 2004, 2006, 2008 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
| @@ -29,7 +29,7 @@ url_dir_list = \
| ftp://$(gnu_rel_host).gnu.org/gnu/autoconf
|
| # Files to update automatically.
| -cvs_executable_files = \
| +git_executable_files = \
| $(srcdir)/build-aux/config.guess \
| $(srcdir)/build-aux/config.sub \
| $(srcdir)/build-aux/elisp-comp \
| @@ -37,7 +37,7 @@ cvs_executable_files = \
| $(srcdir)/build-aux/mdate-sh \
| $(srcdir)/build-aux/missing \
|
| -cvs_files = $(cvs_executable_files) \
| +git_files = $(git_executable_files) \
| $(srcdir)/build-aux/texinfo.tex \
| $(srcdir)/doc/fdl.texi \
| $(srcdir)/doc/make-stds.texi \
| @@ -48,8 +48,8 @@ local_updates = executable-update
|
| .PHONY: executable-update
| # autom4te-update is defined in Makefile.am.
| -executable-update: wget-update cvs-update autom4te-update
| - chmod a+x $(cvs_executable_files)
| +executable-update: wget-update git-update autom4te-update
| + chmod a+x $(git_executable_files)
|
| # Tests not to run.
| local-checks-to-skip ?= \
| diff --git a/Makefile.maint b/Makefile.maint
| index 3a4fe7a..ee2dc06 100644
| --- a/Makefile.maint
| +++ b/Makefile.maint
| @@ -2,7 +2,7 @@
| # This Makefile fragment is shared between the coreutils,
| # CPPI, Bison, and Autoconf.
|
| -# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 Free Software
| +# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2008 Free Software
| # Foundation, Inc.
| #
| # This program is free software: you can redistribute it and/or modify
| @@ -29,6 +29,7 @@ gzip_rsyncable := \
| GZIP_ENV = '--no-name --best $(gzip_rsyncable)'
|
| CVS = cvs
| +GIT = git
|
| # cvsu is part of the cvsutils package: http://www.red-bean.com/cvsutils/
| CVS_LIST = build-aux/vc-list-files
| @@ -45,7 +46,7 @@ VERSION_REGEXP = $(subst .,\.,$(VERSION))
|
| tag-package = $(shell echo "$(PACKAGE)" | tr '[:lower:]' '[:upper:]')
| tag-this-version = $(subst .,_,$(VERSION))
| -this-cvs-tag = $(tag-package)-$(tag-this-version)
| +this-git-tag = $(tag-package)-$(tag-this-version)
| my_distdir = $(PACKAGE)-$(VERSION)
|
| # Old releases are stored here.
| @@ -410,24 +411,21 @@ copyright-check:
| fi
|
|
| -# Sanity checks with the CVS repository.
| -cvs-tag-check:
| - echo $(this-cvs-tag); \
| - if $(CVS) -n log -h README | grep -e $(this-cvs-tag): >/dev/null; then \
| - echo "$(this-cvs-tag) as already been used; not tagging" 1>&2; \
| +# Sanity checks with the git repository.
| +git-tag-check:
| + cd $(srcdir) && echo $(this-git-tag); \
| + if $(GIT) tag -l | grep -e $(this-git-tag): >/dev/null; then \
| + echo "$(this-git-tag) as already been used; not tagging" 1>&2; \
| exit 1; \
| else :; fi
|
| -cvs-diff-check:
| - if $(CVS) diff >cvs-diffs; then \
| - rm cvs-diffs; \
| - else \
| +git-diff-check:
| + cd $(srcdir) && if $(GIT) status -a; then \
| echo "Some files are locally modified:" 1>&2; \
| - cat cvs-diffs; \
| exit 1; \
| fi
|
| -cvs-check: cvs-diff-check cvs-tag-check
| +git-check: git-diff-check git-tag-check
|
| maintainer-distcheck:
| $(MAKE) distcheck
| @@ -437,9 +435,8 @@ maintainer-distcheck:
| # Tag before making distribution. Also, don't make a distribution if
| # checks fail. Also, make sure the NEWS file is up-to-date.
| # FIXME: use dist-hook/my-dist like distcheck-hook/my-distcheck.
| -cvs-dist: $(local-check) cvs-check maintainer-distcheck
| - $(CVS) update po
| - $(CVS) tag -c $(this-cvs-tag)
| +git-dist: $(local-check) git-check maintainer-distcheck
| + $(GIT) tag -s $(this-git-tag)
| $(MAKE) dist
|
| # Use this to make sure we don't run these programs when building
| @@ -511,7 +508,7 @@ move_if_change ?= mv
| # --------------------- #
|
| .PHONY: update
| -local_updates ?= cvs-update
| +local_updates ?= git-update
| update: $(local_updates)
|
|
| @@ -519,27 +516,27 @@ update: $(local_updates)
| # Updating GNU build tools. #
| # -------------------------- #
|
| -cvs_files ?= \
| +git_files ?= \
| $(srcdir)/build-aux/depcomp \
| $(srcdir)/build-aux/install-sh \
| $(srcdir)/build-aux/missing
| -gnulib_repo=:pserver:address@hidden:/sources/gnulib
|
+gnulib_repo='http://git.savannah.gnu.org/gitweb/?a=blob_plain;hb=HEAD;p=gnulib.git;f='
| .PHONY: wget-update
| wget-update: $(get-targets)
|
| -.PHONY: cvs-update
| -cvs-update:
| +.PHONY: git-update
| +git-update:
| fail=; \
| - for f in $(cvs_files) dummy; do \
| + for f in $(git_files) dummy; do \
| test $$f = dummy && continue; \
| test -f $$f || { echo "*** skipping $$f" 1>&2; continue; }; \
| - cvs diff $$f > /dev/null \
| + file=$$(expr "X$$f" : 'X$(srcdir)/\(.*\)'); \
| + (cd $(srcdir) && git status $$file | cat) 3> /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; \
| + echo Retrieving $$file...; \
| + $(WGET) $(gnulib_repo)"$$file" -O $$f.t || fail=:; \
| + $(move_if_change) $$f.t $$f; \
| done; \
| test "$$fail" && exit 1
|
| @@ -562,7 +559,7 @@ alpha beta major: news-date-check changelog-check
$(local-check)
| && { echo $(VERSION) | grep -E '^[0-9]+(\.[0-9]+)+$$' \
| || { echo "invalid version string: $(VERSION)" 1>&2; exit 1;};}\
| || :
| - $(MAKE) cvs-dist
| + $(MAKE) git-dist
| $(MAKE) $(xd-delta)
| $(MAKE) -s announcement RELEASE_TYPE=$@ > /tmp/announce-$(my_distdir)
| ln $(rel-files) $(release_archive_dir)
|
|
|
- --
Don't work too hard, make some time for fun as well!
Eric Blake address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFHllqp84KuGfSFAYARApVTAJ4tgtznviT1uOjY8rdImFXkgD/YFgCdHD0K
MjtNKbIHytQSt0iIndUEVFw=
=bULD
-----END PGP SIGNATURE-----
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: update fetch,
Eric Blake <=