[tbb-commits] [tor-browser-bundle/maint-4.0] Bug 14422: Make incrementals by default.

mikeperry at torproject.org mikeperry at torproject.org
Thu Feb 19 20:28:40 UTC 2015


commit 52cb62cd7bd24ba03f3939457c7c2309b3a746e8
Author: Mike Perry <mikeperry-git at torproject.org>
Date:   Wed Feb 18 18:47:48 2015 -0800

    Bug 14422: Make incrementals by default.
    
    Also create a "resume" rule to make it easier to resume a build, including
    remaking incrementals, and update the documentation.
    
    Also remove the -beta rules, as we don't use those.
---
 gitian/Makefile        |   41 ++++++++++-------------------------------
 gitian/README.build    |    6 +++---
 gitian/hash-bundles.sh |   23 +++++++++++++++++------
 3 files changed, 30 insertions(+), 40 deletions(-)

diff --git a/gitian/Makefile b/gitian/Makefile
index 33403b5..ce362ff 100644
--- a/gitian/Makefile
+++ b/gitian/Makefile
@@ -1,18 +1,21 @@
 TORSOCKS = torsocks
 
-all: clean prep build
+all: clean resume
 
-nightly: clean prep-nightly build-nightly
+nightly: clean resume-nightly
 
-alpha: clean prep-alpha build-alpha
+alpha: clean resume-alpha
 
-beta: clean prep-beta build-beta
+resume: prep build incrementals hash
+
+resume-nightly: prep-nightly build-nightly
+
+resume-alpha: prep-alpha build-alpha incrementals-alpha hash-alpha
 
 build:
 	./mkbundle-linux.sh
 	./mkbundle-windows.sh
 	./mkbundle-mac.sh
-	./hash-bundles.sh
 
 build-nightly:
 	./mkbundle-linux.sh versions.nightly
@@ -24,22 +27,12 @@ build-alpha:
 	./mkbundle-linux.sh versions.alpha
 	./mkbundle-windows.sh versions.alpha
 	./mkbundle-mac.sh versions.alpha
-	./hash-bundles.sh versions.alpha
-
-build-beta:
-	./mkbundle-linux.sh versions.beta
-	./mkbundle-windows.sh versions.beta
-	./mkbundle-mac.sh versions.beta
-	./hash-bundles.sh versions.beta
 
 incrementals:
-	../tools/update-responses/gen_incrementals release
+	../tools/update-responses/gen_incrementals release || echo 'Warning: could not generate incremental MARs.' >&2
 
 incrementals-alpha:
-	../tools/update-responses/gen_incrementals alpha
-
-incrementals-beta:
-	../tools/update-responses/gen_incrementals beta
+	../tools/update-responses/gen_incrementals alpha || echo 'Warning: could not generate incremental MARs.' >&2
 
 update_responses:
 	../tools/update-responses/update_responses release
@@ -47,8 +40,6 @@ update_responses:
 update_responses-alpha:
 	../tools/update-responses/update_responses alpha
 
-update_responses-beta:
-	../tools/update-responses/update_responses beta
 
 hash:
 	./hash-bundles.sh versions
@@ -56,9 +47,6 @@ hash:
 hash-alpha:
 	./hash-bundles.sh versions.alpha
 
-hash-beta:
-	./hash-bundles.sh versions.beta
-
 hash-nightly:
 	./hash-bundles.sh versions.nightly
 
@@ -71,9 +59,6 @@ sign-alpha:
 sign-nightly:
 	./upload-signature.sh versions.nightly
 
-sign-beta:
-	$(TORSOCKS) ./upload-signature.sh versions.beta
-
 match:
 	$(TORSOCKS) ./check-match.sh versions
 
@@ -83,9 +68,6 @@ match-nightly:
 match-alpha:
 	$(TORSOCKS) ./check-match.sh versions.alpha
 
-match-beta:
-	$(TORSOCKS) ./check-match.sh versions.beta
-
 prep:
 	./check-prerequisites.sh
 	$(TORSOCKS) ./fetch-inputs.sh ../../gitian-builder/inputs/ versions
@@ -98,9 +80,6 @@ prep-alpha:
 	./check-prerequisites.sh
 	$(TORSOCKS) ./fetch-inputs.sh ../../gitian-builder/inputs/ versions.alpha
 
-prep-beta:
-	./check-prerequisites.sh
-	$(TORSOCKS) ./fetch-inputs.sh ../../gitian-builder/inputs/ versions.beta
 
 clean: clean-utils clean-tor clean-browser clean-pt clean-bundle
 	rm -f ../../gitian-builder/inputs/*.yml
diff --git a/gitian/README.build b/gitian/README.build
index b3e8be5..e4f5d58 100644
--- a/gitian/README.build
+++ b/gitian/README.build
@@ -143,13 +143,13 @@ Partial Rebuilds:
 
   Each stage leaves build artifacts in ../../gitian-builder/inputs/ for use
   in later stages. If the artifact files for a given stage are present, that
-  stage is skipped by a 'make build'.
+  stage is skipped by a 'make resume'.
 
   No other dependency checking on build stages is performed.
 
   If you wish to rebuild only a given stage, there are several 'make clean-'
   targets to remove the artifacts for that stage. Running a subsequent
-  'make build' after that will rebuild only those targets that have been
+  'make resume' after that will rebuild only those targets that have been
   cleaned, and then re-package everything again as well.
 
   Note that if any of the source inputs, or the Ubuntu buildchain tools, or
@@ -165,7 +165,7 @@ Known Issues and Quirks:
 
   1. Sometimes, fresh VM installs can fail. If your build hangs while trying
      to connect to the target or during the SSH banner, it might be worth
-     running 'make vmclean && make build' to clean your VM images, but still
+     running 'make vmclean && make resume' to clean your VM images, but still
      resume the build process as the component you left off at.  Remember,
      'make' by itself runs a clean rule that will wipe your previous builds by
      default.
diff --git a/gitian/hash-bundles.sh b/gitian/hash-bundles.sh
index 2684158..962630a 100755
--- a/gitian/hash-bundles.sh
+++ b/gitian/hash-bundles.sh
@@ -23,11 +23,22 @@ sha256sum `ls -1 | grep -v '\.incremental\.mar$' | sort` > sha256sums.txt
 if ls -1 | grep -q '\.incremental\.mar$'
 then
     sha256sum `ls -1 | grep '\.incremental\.mar$' | sort` > sha256sums.incrementals.txt
+    echo
+    echo "If this is an official build, you should now sign your result with: "
+    echo "  make sign"
+    echo
+    echo "In either case, you can check against any official builds with: "
+    echo "  make match"
+else
+    echo
+    echo "It appears that this build did not generate any incremental update (.mar) files"
+    echo
+    echo "If your goal is to reproduce the entire release, you still need to download"
+    echo "the mar files from the previous release from the appropriate directory in: "
+    echo "  https://archive.torproject.org/tor-package-archive/torbrowser/"
+    echo
+    echo "After that, you will need to make the incremental updates with: "
+    echo "  make incrementals && make hash"
 fi
 
-echo
-echo "If this is an official build, you should now sign your result with: "
-echo "  make sign"
-echo
-echo "In either case, you can check against any official builds with: "
-echo "  make match"
+





More information about the tbb-commits mailing list