From 8c8800f156bdf264d1e6bdd8450f4fb98085954c Mon Sep 17 00:00:00 2001 From: DubbleClick Date: Thu, 24 Jul 2025 14:32:47 +0700 Subject: [PATCH] work around it for -target without version... --- src/SPC/builder/unix/library/libjxl.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/SPC/builder/unix/library/libjxl.php b/src/SPC/builder/unix/library/libjxl.php index 3646134f..52784053 100644 --- a/src/SPC/builder/unix/library/libjxl.php +++ b/src/SPC/builder/unix/library/libjxl.php @@ -4,6 +4,8 @@ declare(strict_types=1); namespace SPC\builder\unix\library; +use SPC\toolchain\ToolchainManager; +use SPC\toolchain\ZigToolchain; use SPC\util\executor\UnixCMakeExecutor; use SPC\util\SPCTarget; @@ -11,6 +13,13 @@ trait libjxl { protected function build(): void { + if (ToolchainManager::getToolchainClass() === ZigToolchain::class) { + if (str_contains(getenv('SPC_TARGET'), '.2.')) { + throw new \RuntimeException('Zig toolchain does not support libjxl with target version.'); + } + putenv('CC=gcc'); + putenv('CXX=g++'); + } UnixCMakeExecutor::create($this) ->addConfigureArgs( '-DJPEGXL_ENABLE_TOOLS=OFF', @@ -26,5 +35,9 @@ trait libjxl '-DBUILD_TESTING=OFF' ) ->build(); + if (ToolchainManager::getToolchainClass() === ZigToolchain::class) { + putenv('CC=zig-cc'); + putenv('CXX=zig-c++'); + } } }