Thanks for taking the time to report these things! "James Youngman" <[EMAIL PROTECTED]> wrote: > Up to this point I have been doing VPATH builds of coreutils with this layout: > > foo/coreutils - the coreutils sources, from git. > foo/coreutils/gnulib - the gnulib sources, from git. This is where > ootstrap puts it. > foo/compile - build directory; symlink to a directory on a faster filesystem > > This worked for builds but not distcheck. Unfortunately distcheck > assumes the build directory is $(top_srcdir) I think. I also notice > that "make distcheck" fails with GNULIB_SRCDIR in its default > position:
Right, as I explained yesterday ;-) > [...] > ./gnulib/ChangeLog:38198:Copyright (C) 1997-2008 Free Software Foundation, > Inc. > ./gnulib/ChangeLog:38199:Copying and distribution of this file, with > or without modification, > ./gnulib/ChangeLog:38200:are permitted provided the copyright notice > and this notice are preserved. > Makefile.maint: found unexpected prefix in a ChangeLog > make[2]: *** [sc_changelog] Error 1 I've just fixed this by indenting the offending lines in gnulib's ChangeLog file. > If I fix that by moving the gnulib directory and re-running bootstrap > and config.status --recheck, next I fall over the fact that > Makefile.maint assumes I have an archive of previous releases: > > release_archive_dir ?= ../release Yes, that is ugly, and very old. I confess I've never taken the time to fix it, simply creating the required sibling directory. Here's an untested patch ("make distcheck" in progress -- it's not fast) that also removes xdelta support, which is intertwined: the rules to compute xdeltas relied on the previous tarball being available in $(release_archive_dir). diff --git a/Makefile.maint b/Makefile.maint index ec4b79d..db52ac1 100644 --- a/Makefile.maint +++ b/Makefile.maint @@ -56,7 +56,6 @@ endif my_distdir = $(PACKAGE)-$(VERSION) # Old releases are stored here. -# Used for diffs and xdeltas. release_archive_dir ?= ../release # Prevent programs like 'sort' from considering distinct strings to be equal. @@ -477,16 +476,14 @@ makefile_path_separator_check: # Check that `make alpha' will not fail at the end of the process. writable-files: if test -d $(release_archive_dir); then :; else \ - mkdir $(release_archive_dir); \ + for file in $(distdir).tar.gz \ + $(release_archive_dir)/$(distdir).tar.gz; do \ + test -e $$file || continue; \ + test -w $$file \ + || { echo ERROR: $$file is not writable; fail=1; }; \ + done; \ + test "$$fail" && exit 1 || : fi - for file in $(distdir).tar.gz $(xd-delta) \ - $(release_archive_dir)/$(distdir).tar.gz \ - $(release_archive_dir)/$(xd-delta); do \ - test -e $$file || continue; \ - test -w $$file \ - || { echo ERROR: $$file is not writable; fail=1; }; \ - done; \ - test "$$fail" && exit 1 || : v_etc_file = lib/version-etc.c sample-test = tests/sample-test @@ -565,7 +562,7 @@ write_loser = printf '\#!%s\necho $$0: bad path 1>&2; exit 1\n' '$(SHELL)' # Note that "false" itself is a symlink to true, so it too will malfunction. TMPDIR ?= /tmp t=$(TMPDIR)/$(PACKAGE)/test -my-distcheck: $(local-check) $(release_archive_dir)/$(prev-tgz) check +my-distcheck: $(local-check) check -rm -rf $(t) mkdir -p $(t) GZIP=$(GZIP_ENV) $(AMTAR) -C $(t) -zxf $(distdir).tar.gz @@ -618,11 +615,7 @@ rel-check: prev-tgz = $(PACKAGE)-$(PREV_VERSION).tar.gz -# FIXME: stop distributing xdelta files in 2008, unless someone speaks up. -# So far, not one person has said they'd miss this. -xd-delta = $(PACKAGE)-$(PREV_VERSION)-$(VERSION).xdelta - -rel-files = $(xd-delta) $(DIST_ARCHIVES) +rel-files = $(DIST_ARCHIVES) gnulib-version = $$(cd $(gnulib_dir) && git describe) @@ -658,9 +651,6 @@ emit_upload_commands: @echo ===================================== @echo ===================================== -$(xd-delta): $(release_archive_dir)/$(prev-tgz) $(distdir).tar.gz - xdelta delta -9 $^ $@ || : - .PHONY: alpha beta major alpha beta major: $(local-check) writable-files test $@ = major \ @@ -669,10 +659,11 @@ alpha beta major: $(local-check) writable-files || : $(MAKE) vc-dist $(MAKE) news-date-check changelog-check - $(MAKE) $(xd-delta) $(MAKE) -s announcement RELEASE_TYPE=$@ > /tmp/announce-$(my_distdir) - ln $(rel-files) $(release_archive_dir) - chmod a-w $(rel-files) + if test -d $(release_archive_dir); then \ + ln $(rel-files) $(release_archive_dir); \ + chmod a-w $(rel-files); \ + fi $(MAKE) -s emit_upload_commands RELEASE_TYPE=$@ echo $(VERSION) > $(prev_version_file) $(VC) commit -m \ _______________________________________________ Bug-coreutils mailing list Bug-coreutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-coreutils