From 6da3f78df69698154c7ad8a7138eab58ed6a102c Mon Sep 17 00:00:00 2001 From: DubbleClick Date: Thu, 24 Jul 2025 15:12:11 +0700 Subject: [PATCH] force disable AVX512 for zig --- src/SPC/builder/unix/library/libjxl.php | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/SPC/builder/unix/library/libjxl.php b/src/SPC/builder/unix/library/libjxl.php index 3646134f..cfeea65c 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,7 +13,8 @@ trait libjxl { protected function build(): void { - UnixCMakeExecutor::create($this) + + $cmake = UnixCMakeExecutor::create($this) ->addConfigureArgs( '-DJPEGXL_ENABLE_TOOLS=OFF', '-DJPEGXL_ENABLE_EXAMPLES=OFF', @@ -24,7 +27,18 @@ trait libjxl '-DJPEGXL_STATIC=' . (SPCTarget::isStatic() ? 'ON' : 'OFF'), '-DJPEGXL_FORCE_SYSTEM_BROTLI=ON', '-DBUILD_TESTING=OFF' - ) - ->build(); + ); + + if (ToolchainManager::getToolchainClass() === ZigToolchain::class) { + $cmake->addConfigureArgs( + '-DCXX_MAVX512F_SUPPORTED:BOOL=FALSE', + '-DCXX_MAVX512DQ_SUPPORTED:BOOL=FALSE', + '-DCXX_MAVX512CD_SUPPORTED:BOOL=FALSE', + '-DCXX_MAVX512BW_SUPPORTED:BOOL=FALSE', + '-DCXX_MAVX512VL_SUPPORTED:BOOL=FALSE' + ); + } + + $cmake->build(); } }