diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d64b7996..03d6b929 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -111,6 +111,13 @@ jobs: - uses: actions/checkout@v3 - name: 'Linux 32-bit' run: build-scripts/build-linux32 + pikepdf: + runs-on: ubuntu-latest + needs: Prebuild + steps: + - uses: actions/checkout@v3 + - name: 'pikepdf' + run: build-scripts/test-pikepdf Fuzzers: runs-on: ubuntu-latest needs: Prebuild diff --git a/build-scripts/test-pikepdf b/build-scripts/test-pikepdf new file mode 100755 index 00000000..e6c8a9a4 --- /dev/null +++ b/build-scripts/test-pikepdf @@ -0,0 +1,18 @@ +#!/bin/bash +set -ex +sudo apt-get update +sudo apt-get -y install \ + build-essential cmake zlib1g-dev libjpeg-dev libgnutls28-dev +cmake -S . -B build -DBUILD_STATIC_LIBS=0 -DCMAKE_BUILD_TYPE=RelWithDebInfo +cmake --build build --verbose -j$(nproc) --target libqpdf -- -k +export QPDF_SOURCE_TREE=$PWD +export QPDF_BUILD_LIBDIR=$QPDF_SOURCE_TREE/build/libqpdf +export LD_LIBRARY_PATH=$QPDF_BUILD_LIBDIR +git clone https://github.com/pikepdf/pikepdf +python3 -m venv v +source v/bin/activate +cd pikepdf +python3 -m pip install --upgrade pip +python3 -m pip install '.[test]' +python3 -m pip install . +pytest -n auto