From e9aff8f1d85c7c4de19a86de7a219102a28d8f60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Dunglas?= Date: Tue, 25 Jun 2024 06:38:38 +0200 Subject: [PATCH] fix: error when building libtiff (#481) * fix: error when building libtiff * Update test-extensions.php * Add test token * Fix windows builds * Fix token * Fix token * Test token * Test token * Test token --------- Co-authored-by: Jerry Ma --- .github/workflows/tests.yml | 20 +++++--------------- src/SPC/builder/unix/library/libtiff.php | 12 +++++++++--- src/globals/test-extensions.php | 4 ++-- 3 files changed, 16 insertions(+), 20 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index d90752c7..86b14e61 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -12,6 +12,9 @@ on: permissions: contents: read +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + jobs: php-cs-fixer: runs-on: ubuntu-latest @@ -129,13 +132,6 @@ jobs: extensions: curl, openssl, mbstring ini-values: memory_limit=-1 - - name: "Use test token if exists" - if: matrix.os != 'windows-latest' - run: | - if [ "${{ secrets.TEST_GH_TOKEN }}" != "" ]; then - echo "GITHUB_TOKEN=${{ secrets.TEST_GH_TOKEN }}" >> $GITHUB_ENV - fi - - name: "Cache composer packages" id: composer-cache uses: actions/cache@v4 @@ -170,15 +166,9 @@ jobs: bin/spc install-pkg upx echo "UPX_CMD=$(php src/globals/test-extensions.php upx)" >> $GITHUB_ENV - - name: "Run Build Tests (download)" - uses: nick-fields/retry@v3 - with: - timeout_minutes: 10 - max_attempts: 3 - retry_on: error - command: | - bin/spc download --for-extensions="$(php src/globals/test-extensions.php extensions)" --for-libs="$(php src/globals/test-extensions.php libs)" --with-php=${{ matrix.php }} --ignore-cache-sources=php-src,libcares --debug --retry=3 + run: | + bin/spc download --for-extensions="$(php src/globals/test-extensions.php extensions)" --for-libs="$(php src/globals/test-extensions.php libs)" --with-php=${{ matrix.php }} --ignore-cache-sources=php-src --debug --retry=5 - name: "Run Build Tests (build, *nix)" if: matrix.os != 'windows-latest' diff --git a/src/SPC/builder/unix/library/libtiff.php b/src/SPC/builder/unix/library/libtiff.php index 08e6e7eb..4c93acea 100644 --- a/src/SPC/builder/unix/library/libtiff.php +++ b/src/SPC/builder/unix/library/libtiff.php @@ -15,14 +15,20 @@ trait libtiff */ protected function build(): void { - shell()->cd($this->source_dir) + $shell = shell()->cd($this->source_dir) ->exec( './configure ' . '--enable-static --disable-shared ' . '--disable-cxx ' . '--prefix=' - ) - ->exec('make clean') + ); + + // TODO: Remove this check when https://gitlab.com/libtiff/libtiff/-/merge_requests/635 will be merged and released + if (file_exists($this->source_dir . '/html')) { + $shell->exec('make clean'); + } + + $shell ->exec("make -j{$this->builder->concurrency}") ->exec('make install DESTDIR=' . BUILD_ROOT_PATH); $this->patchPkgconfPrefix(['libtiff-4.pc']); diff --git a/src/globals/test-extensions.php b/src/globals/test-extensions.php index 16aff9e9..ec97f329 100644 --- a/src/globals/test-extensions.php +++ b/src/globals/test-extensions.php @@ -19,13 +19,13 @@ $upx = true; // If you want to test your added extensions and libs, add below (comma separated, example `bcmath,openssl`). $extensions = match (PHP_OS_FAMILY) { - 'Linux', 'Darwin' => 'libxml,xlswriter,openssl,core,hash,json,standard,SPL,HASH,REFLECTION,zend-opcache', + 'Linux', 'Darwin' => 'imagick', 'Windows' => 'mbstring,pdo_sqlite,mbregex', }; // If you want to test lib-suggests feature with extension, add them below (comma separated, example `libwebp,libavif`). $with_libs = match (PHP_OS_FAMILY) { - 'Linux', 'Darwin' => '', + 'Linux', 'Darwin' => 'libtiff', 'Windows' => '', };