#!/bin/bash set -ex sudo apt-get update sudo apt-get -y install \ build-essential cmake zlib1g-dev libjpeg-dev libgnutls28-dev \ libssl-dev libtiff-tools ghostscript cmake -S . -B build -DCI_MODE=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DREQUIRE_CRYPTO_OPENSSL=1 -DREQUIRE_CRYPTO_GNUTLS=1 cmake --build build --verbose -j$(nproc) -- -k cd build # Make sure char is signed by default -- see also test-unsigned-char ./qpdf/test_char_sign | grep 'char is signed' # libtests automatically runs with all crypto providers. env QPDF_TEST_COMPARE_IMAGES=1 ctest --verbose # Run just qpdf tests with remaining crypto providers. for i in $(./qpdf/qpdf --show-crypto | tail -n +2); do echo "*** Running qpdf tests with crypto provider $i" env QPDF_CRYPTO_PROVIDER=$i ctest --verbose -R '^qpdf$' done cd .. export TMPDIR=$PWD/dist-tmp rm -rf $TMPDIR ./make_dist --ci mkdir distribution cp $TMPDIR/qpdf*-ci.tar.gz distribution sha256sum distribution/*