aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README-maintainer21
-rwxr-xr-xappimage/entrypoint6
-rwxr-xr-xmake_windows_releases23
3 files changed, 26 insertions, 24 deletions
diff --git a/README-maintainer b/README-maintainer
index 5a22d93f..ed4c7bc6 100644
--- a/README-maintainer
+++ b/README-maintainer
@@ -126,17 +126,21 @@ gpg --detach-sign --armor qpdf-$version.tar.gz
For iterating on the release during testing, pass `--no-tests` to
make_dist to skip the test suite.
-* Generate a signed AppImage using the docker image in appimage.
- Arguments to the docker container are arguments to git clone. The
- build should be made off the exact commit that will be officially
- tagged as the release but built prior to tagging the release.
+* Generate an AppImage using the docker image in appimage. Arguments
+ to the docker container are arguments to git clone. The build should
+ be made off the exact commit that will be officially tagged as the
+ release but built prior to tagging the release. We used to create
+ signed AppImages, but this is problematic for various reasons (older
+ gpg on the build image, problems embedding the key in the AppImage
+ because of ELF issues), and we are signing the AppImages externally,
+ so it doesn't really matter.
+
Example:
cd appimage
docker build -t qpdfbuild .
\rm -rf /tmp/build
mkdir -p /tmp/build
-cp -rLp ~/.gnupg/. /tmp/build/.gnupg
docker run --privileged -ti --rm -v /tmp/build:/tmp/build qpdfbuild https://github.com/jberkenbilt/qpdf -b work
The AppImage in /tmp/build/qpdf/appimage/build should be called
@@ -152,9 +156,10 @@ docker run --privileged -ti --rm -v /tmp/build:/tmp/build qpdfbuild https://gith
shield, and go to "View Features". Disable all features. Disable
antivirus until next restart.
* In each window simultaneously, run ./make_windows_releases
- * NOTE: For now, test failure is not fatal for 32-bit Windows
- builds because of unknown fragility in the test environment.
- Check test logs carefully. Tests must pass on 64-bit.
+ * NOTE: For now, test failures are not fatal because of unknown
+ fragility in the Windows test environment. If any tests fail,
+ test logs are copied to qtest-*. Check test logs carefully
+ before accepting the releases.
* Copy the four resulting zip files into the release archive area
* Re-enable anti-virus software
diff --git a/appimage/entrypoint b/appimage/entrypoint
index 39c2ab61..b1ee7eb0 100755
--- a/appimage/entrypoint
+++ b/appimage/entrypoint
@@ -4,8 +4,8 @@ if [ "$SKIP_TESTS" = "1" ]; then
touch /tmp/skip-tests
fi
if [ $(id -u) = 0 ]; then
- if [ ! -d /tmp/build/.gnupg ]; then
- echo "/tmp/build must exist and must contain .gnupg"
+ if [ ! -d /tmp/build ]; then
+ echo "/tmp/build must exist"
exit 2
fi
id=$(stat -c %u /tmp/build)
@@ -25,4 +25,4 @@ cd qpdf
if [ -f /tmp/skip-tests ]; then
export SKIP_TESTS=1
fi
-./appimage/build-appimage --sign
+./appimage/build-appimage
diff --git a/make_windows_releases b/make_windows_releases
index d8fbbcd8..51908165 100755
--- a/make_windows_releases
+++ b/make_windows_releases
@@ -31,19 +31,16 @@ set -x
cwd=`pwd`
PATH=$cwd/libqpdf/build:$PATH
-rm -rf install-mingw$wordsize install-msvc$wordsize
-
-./config-msvc
-make -j8
-make -k check || test $wordsize = 32
-make install
-make distclean
-
-./config-mingw
-make -j8
-make -k check || test $wordsize = 32
-make install
-make distclean
+for i in msvc mingw; do
+ rm -rf {install,qtest}-$i$wordsize
+ ./config-$i
+ make -j8
+ make -k check || \
+ { mkdir qtest-$i$wordsize; \
+ tar cf - */build/qtest.log | (cd qtest-$i$wordsize; tar xf -) }
+ make install
+ make distclean
+done
touch win.$wordsize