branch-1_4 use gnupload

Eric Blake <[email protected]>
Newsgroups gmane.comp.gnu.m4.patches
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Now that gnulib supplies gnupload, I can simplify releases (and I am
planning on releasing 1.4.6 this week).  I actually used gnupload from
coreutils last time for 1.4.5, but it was rather awkward and not worth
documenting till now.  This is an interesting patch - gnupload will be
available to anyone who bootstraps, but is intentionally not part of the
distribution in any Makefile.am, because only a maintainer needs to
upload.  So only the distributed files show in the changelog, although the
patch is against all of CVS.

I will be porting this, and several other gnulib-tool --import patches, to
CVS head next.

2006-08-22  Eric Blake  <[email protected]>

	* m4/gnulib-cache.m4: Augment with gnulib-tool --import gnupload.
	* Makefile.maint (fetch): Simplify, now that we can use gnupload.

- --
Life is short - so eat dessert first!

Eric Blake             [email protected]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.1 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFE62nj84KuGfSFAYARApyEAKChKwSRsW48UzsoCgitFfCb8gsNwgCeOP27
NbVD/6Bo/xJZ8ohdSkpIXrA=
=4tOh
-----END PGP SIGNATURE-----

_______________________________________________
M4-patches mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/m4-patches
m4.patch128 (text/plain, 7.6 KB)
Index: HACKING
===================================================================
RCS file: /sources/m4/m4/HACKING,v
retrieving revision 1.1.2.2
diff -u -p -r1.1.2.2 HACKING
--- HACKING	20 Jul 2006 15:33:20 -0000	1.1.2.2
+++ HACKING	22 Aug 2006 20:23:53 -0000
@@ -182,13 +182,6 @@ yyyy-mm-dd  Name of Author  <email@addre
 * Run ./configure (or create a build directory first and run configure
   from there, if you want to keep the build tree separate).
 
-* Run `make -fMakefile.maint fetch' (or `make -f../Makefile.maint fetch'
-  if you are running from a VPATH build directory, where `../' is the
-  relative path to the directory with `configure' in it), which will
-  fetch new versions of the files that are maintained outside of m4.  If
-  you are using GNU make, the included GNUmakefile allows you to leave
-  off the '-fMakefile.maint'.
-
 * Run `make distcheck'.  If there are any problems, fix them and start
   again.
 
@@ -197,20 +190,19 @@ yyyy-mm-dd  Name of Author  <email@addre
 * Run `make -fMakefile.maint cvs-dist' (or `make -f../Makefile.maint
   cvs-dist' if you are running from a VPATH build directory, where `../'
   is the relative path to the directory with `configure' in it), which
-  will build a release tarball (with `make distcheck'), tag the tree
-  with release-$(VERSION) and generate the gpg signature files.
+  will build a release tarball (with `make distcheck') and tag the tree
+  with release-$(VERSION).
 
 * Run 'make -f[../]Makefile.maint deltas' (pass
   LASTRELEASE=maj.min[.mic[alpha]] if needed) to create both diff and
-  xdelta files between the previous release tarball and the new with
-  detached gpg signature files and clear signed directive files.
+  xdelta files between the previous release tarball and the new.
 
-* Upload release tarball, diff file and xdelta file, plus their associated
-  detached gpg signature files and clear signed directive files to
-  ftp-upload.gnu.org.  If the upload is destined for ftp.gnu.org, then the
-  files should be placed in the /incoming/ftp directory.  If the upload is
-  an alpha release destined for alpha.gnu.org, then the files should be
-  placed in the /incoming/alpha directory.
+* Run '[../]./gnupload --to [dest].gnu.org:m4 [files]' to create
+  detached gpg signature and clear signed directive files, and upload
+  the combination to the correct location.  For an alpha release,
+  gnupload will place files in alpha.gnu.org, in /incoming/alpha, and
+  the xdelta file is not strictly necessary.  For a full release,
+  gnupload will place files in ftp.gnu.org, in /incoming/ftp.
 
 * Send announcement to [email protected], [email protected], and
   [email protected].  If not an alpha send to [email protected]
Index: Makefile.maint
===================================================================
RCS file: /sources/m4/m4/Attic/Makefile.maint,v
retrieving revision 1.1.2.7
diff -u -p -r1.1.2.7 Makefile.maint
--- Makefile.maint	15 Jul 2006 21:32:50 -0000	1.1.2.7
+++ Makefile.maint	22 Aug 2006 20:23:53 -0000
@@ -20,7 +20,7 @@
 TEXI2HTML = texi2html
 
 .PHONY: cvs-release
-cvs-release: version-check prev-tarball cvs-news fetch cvs-commit cvs-dist deltas web-manual
+cvs-release: version-check prev-tarball cvs-news cvs-commit cvs-dist deltas web-manual
 	@tarname="$(PACKAGE)-$(VERSION).tar.gz"; \
 	diffname="$(PACKAGE)-$(LASTRELEASE)-$(VERSION).diff.gz"; \
 	xdeltaname="$(PACKAGE)-$(LASTRELEASE)-$(VERSION).xdelta"; \
@@ -73,46 +73,6 @@ cvs-news:
 	  exit 1; \
 	fi
 
-## Program to use to fetch files.
-WGET = wget
-WGETSGO = $(WGET) http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~
-
-## Files that we fetch and which we compare against.
-## FIXME should be a lot more here
-FETCHFILES = \
-./INSTALL \
-./install-sh \
-doc/texinfo.tex
-
-## Fetch the latest versions of files we care about.
-.PHONY: fetch
-fetch:
-	rm -rf Fetchdir > /dev/null 2>&1
-	mkdir Fetchdir
-## If a get fails then that is a problem.
-	(cd Fetchdir && \
-	$(WGETSGO)/autoconf/autoconf/INSTALL; \
-	$(WGETSGO)/automake/automake/lib/install-sh; \
-	$(WGETSGO)/texinfo/texinfo/doc/texinfo.tex; )
-## Don't exit after test because we want to give as many errors as
-## possible.
-	@stat=0; for file in $(FETCHFILES); do \
-	  fetchedfile=Fetchdir/`echo $$file | sed 's,.*/,,g'`; \
-	  if diff -u $(srcdir)/$$file $$fetchedfile \
-	    >>Fetchdir/update.patch 2>/dev/null; then :; \
-	  else \
-	    stat=1; \
-	    echo "Updating $(srcdir)/$$file..."; \
-	    cp $$fetchedfile $(srcdir)/$$file; \
-	  fi; \
-	done; \
-	test $$stat = 1 && \
-	  echo "See Fetchdir/update.patch for a log of the changes."; \
-	exit $$stat
-
-
-GPG = gpg # set it to `:' to avoid gpg operations
-
 .PHONY: cvs-commit
 cvs-commit: cvs-news
 	cd $(srcdir) && $(SHELL) ./commit
@@ -124,14 +84,6 @@ cvs-dist: cvs-news timestamps
 ## Finally, if everything was successful, tag the release
 	cd $(srcdir) \
 	  && $(CVS) -q tag `echo "release-$(VERSION)" | sed 's/\./_/g'`
-## Generate signatures and directives for FSF ftp-upload:
-	for suffix in .gz .bz2; do \
-	  ofile="$(PACKAGE)-$(VERSION).tar$$suffix"; \
-	  $(GPG) --detach-sign $$ofile \
-	  && echo "directory: $(PACKAGE)" > $$ofile.directive \
-	  && $(GPG) --clearsign $$ofile.directive \
-	  && rm -f $$ofile.directive; \
-	done
 
 .PHONY: new-tarball
 new-tarball:
@@ -168,11 +120,7 @@ delta-diff: prev-tarball new-tarball
 	&& tar xzf "../$(PACKAGE)-$(VERSION).tar.gz" \
 	&& $(DIFF) $(DIFF_OPTIONS) \
 		$(PACKAGE)-$(LASTRELEASE) $(PACKAGE)-$(VERSION) \
-		| GZIP=$(GZIP_ENV) gzip -c > $$ofile \
-	&& $(GPG) --detach-sign $$ofile \
-	&& echo "directory: $(PACKAGE)" > $$ofile.directive \
-	&& $(GPG) --clearsign $$ofile.directive \
-	&& rm -f $$ofile.directive
+		| GZIP=$(GZIP_ENV) gzip -c > $$ofile
 
 	rm -rf delta-diff
 
@@ -188,11 +136,7 @@ delta-xdelta: prev-tarball new-tarball g
 	( test -z `$(XDELTA) delta $(XDELTA_OPTIONS) \
 	    $(PACKAGE)-$(LASTRELEASE).tar.gz $(PACKAGE)-$(VERSION).tar.gz \
 	    $$ofile 2>&1` \
-	  && : ) \
-	&& $(GPG) --detach-sign $$ofile \
-	&& echo "directory: $(PACKAGE)" > $$ofile.directive \
-	&& $(GPG) --clearsign $$ofile.directive \
-	&& rm -f $$ofile.directive
+	  && : )
 
 .PHONY: web-manual
 web-manual:
Index: m4/gnulib-cache.m4
===================================================================
RCS file: /sources/m4/m4/m4/Attic/gnulib-cache.m4,v
retrieving revision 1.1.2.12
diff -u -p -r1.1.2.12 gnulib-cache.m4
--- m4/gnulib-cache.m4	18 Aug 2006 23:11:36 -0000	1.1.2.12
+++ m4/gnulib-cache.m4	22 Aug 2006 20:23:53 -0000
@@ -15,10 +15,10 @@
 
 
 # Specification in the form of a command-line invocation:
-#   gnulib-tool --import --dir=. --lib=libm4 --source-base=lib --m4-base=m4 --doc-base=doc --aux-dir=. --no-libtool --macro-prefix=M4 alloca binary-io cloexec close-stream error fdl fopen-safer free gendocs getopt mkstemp obstack regex stdlib-safer strtol tmpfile-safer unlocked-io verror xalloc xvasprintf
+#   gnulib-tool --import --dir=. --lib=libm4 --source-base=lib --m4-base=m4 --doc-base=doc --aux-dir=. --no-libtool --macro-prefix=M4 alloca binary-io cloexec close-stream error fdl fopen-safer free gendocs getopt gnupload mkstemp obstack regex stdlib-safer strtol tmpfile-safer unlocked-io verror xalloc xvasprintf
 
 # Specification in the form of a few gnulib-tool.m4 macro invocations:
-gl_MODULES([alloca binary-io cloexec close-stream error fdl fopen-safer free gendocs getopt mkstemp obstack regex stdlib-safer strtol tmpfile-safer unlocked-io verror xalloc xvasprintf])
+gl_MODULES([alloca binary-io cloexec close-stream error fdl fopen-safer free gendocs getopt gnupload mkstemp obstack regex stdlib-safer strtol tmpfile-safer unlocked-io verror xalloc xvasprintf])
 gl_AVOID([])
 gl_SOURCE_BASE([lib])
 gl_M4_BASE([m4])
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.