Fix rebuilding configure.sh in an alternate build dir
authorWayne Davison <wayne@opencoder.net>
Sun, 28 Jun 2020 18:18:55 +0000 (11:18 -0700)
committerWayne Davison <wayne@opencoder.net>
Sun, 28 Jun 2020 19:55:43 +0000 (12:55 -0700)
Makefile.in
NEWS.md
packaging/patch-update

index e13e241b34d2ebf141ed35215c00cad7aca0ab8f..24156d4b7d1a0a2850c32f351d9508e270ea9419 100644 (file)
@@ -172,17 +172,16 @@ aclocal.m4: $(srcdir)/m4/*.m4
        aclocal -I $(srcdir)/m4
 
 configure.sh config.h.in: configure.ac aclocal.m4
-       @if test -f configure.sh; then cp -p configure.sh configure.sh.old; else touch configure.sh.old; fi
-       @if test -f config.h.in; then cp -p config.h.in config.h.in.old; else touch config.h.in.old; fi
-       autoconf -o configure.sh
-       autoheader && touch config.h.in
-       @if diff configure.sh configure.sh.old >/dev/null 2>&1; then \
+       @test -f "$(srcdir)/configure.sh" && cp -p "$(srcdir)/configure.sh" configure.sh.old || touch configure.sh.old
+       @test -f "$(srcdir)/config.h.in" && cp -p "$(srcdir)/config.h.in" config.h.in.old || touch config.h.in.old
+       (cd "$(srcdir)" && autoconf -o configure.sh && autoheader && touch config.h.in)
+       @if diff "$(srcdir)/configure.sh" configure.sh.old >/dev/null 2>&1; then \
            echo "configure.sh is unchanged."; \
            rm configure.sh.old; \
        else \
            echo "configure.sh has CHANGED."; \
        fi
-       @if diff config.h.in config.h.in.old >/dev/null 2>&1; then \
+       @if diff "$(srcdir)/config.h.in" config.h.in.old >/dev/null 2>&1; then \
            echo "config.h.in is unchanged."; \
            rm config.h.in.old; \
        else \
@@ -203,6 +202,10 @@ reconfigure: configure.sh
        ./config.status --recheck
        ./config.status
 
+.PHONY: restatus
+restatus:
+       ./config.status
+
 Makefile: Makefile.in config.status configure.sh config.h.in
        @if test -f Makefile; then cp -p Makefile Makefile.old; else touch Makefile.old; fi
        @./config.status
diff --git a/NEWS.md b/NEWS.md
index c5c2e1b5b3e108dee4b890a5861179daffc687ef..7e48765ad97af87829df91d7973e6bdf8e72c962 100644 (file)
--- a/NEWS.md
+++ b/NEWS.md
@@ -10,6 +10,8 @@ Protocol: 31 (unchanged)
 
  - Fixed installing rsync-ssl script from an alternate build dir.
 
+ - Fixed the updating of configure.sh from an alternate build dir.
+
  - Apple requires the asm function name to begin with an underscore.
 
  - Avoid a test failure in the daemon test when --atimes is disabled.
index 0970d299d5e0cb720285eb3e7710356c35759e3a..c5bbe1c31c5c5a84014e03383284a8b775f6f300 100755 (executable)
@@ -31,9 +31,11 @@ def main():
 
     starting_branch, args.base_branch = check_git_state(args.base_branch, not args.skip_check, args.patches_dir)
 
+    if not os.path.isdir('.gen-stash'):
+        os.mkdir('.gen-stash', 0o700)
     gen_stash(starting_branch)
     if starting_branch == 'master':
-        cmd_run('md5sum configure.ac >.gen-stash/configure.ac.sum')
+        cmd_chk('md5sum configure.ac >.gen-stash/configure.ac.sum')
 
     master_commit = latest_git_hash(args.base_branch)
 
@@ -213,8 +215,6 @@ def gen_stash(branch):
     for fn in files:
         if not os.path.exists(fn):
             return
-    if not os.path.isdir('.gen-stash'):
-        os.mkdir('.gen-stash', 0o700)
     tar_fn = gen_stash_prep(branch)
     cmd_run(['./prepare-source'])
     cmd_chk(['tar', 'czf', tar_fn, *files])