From 45582049625748adf00c2c508f2021decc59ecc2 Mon Sep 17 00:00:00 2001 From: Jerry Ma Date: Fri, 14 Mar 2025 23:37:01 +0800 Subject: [PATCH] Fix libavif build on VS2019 syntax error (#649) * Test old source of libavif * Test old source of libavif * Fix libavif 1.2.0 bug --- src/SPC/builder/windows/library/libavif.php | 2 ++ src/globals/test-extensions.php | 17 +++++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/SPC/builder/windows/library/libavif.php b/src/SPC/builder/windows/library/libavif.php index 86f6748a..c9c966a7 100644 --- a/src/SPC/builder/windows/library/libavif.php +++ b/src/SPC/builder/windows/library/libavif.php @@ -12,6 +12,8 @@ class libavif extends WindowsLibraryBase protected function build(): void { + // workaround for libavif 1.2.0 bug + FileSystem::replaceFileStr($this->source_dir . '\src\read.c', 'avifFileType ftyp = {};', 'avifFileType ftyp = { 0 };'); // reset cmake FileSystem::resetDir($this->source_dir . '\build'); diff --git a/src/globals/test-extensions.php b/src/globals/test-extensions.php index ee5911d7..d63b4604 100644 --- a/src/globals/test-extensions.php +++ b/src/globals/test-extensions.php @@ -14,17 +14,18 @@ declare(strict_types=1); // test php version $test_php_version = [ '8.1', - '8.2', - '8.3', + // '8.2', + // '8.3', '8.4', ]; // test os (macos-13, macos-14, ubuntu-latest, windows-latest are available) $test_os = [ - 'macos-13', - 'macos-14', - 'ubuntu-latest', - // 'windows-latest', + // 'macos-13', + // 'macos-14', + // 'ubuntu-latest', + 'windows-2019', + 'windows-latest', ]; // whether enable thread safe @@ -41,13 +42,13 @@ $prefer_pre_built = false; // If you want to test your added extensions and libs, add below (comma separated, example `bcmath,openssl`). $extensions = match (PHP_OS_FAMILY) { 'Linux', 'Darwin' => 'gettext', - 'Windows' => 'bcmath', + 'Windows' => 'gd', }; // 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' => '', - 'Windows' => '', + 'Windows' => 'libavif', }; // Please change your test base combination. We recommend testing with `common`.