From edeb5b9f0da87879216741b9eecf34f298544c77 Mon Sep 17 00:00:00 2001 From: henderkes Date: Thu, 7 May 2026 10:29:12 +0700 Subject: [PATCH] fix musl check --- src/SPC/doctor/item/LinuxMuslCheck.php | 7 ++++--- src/SPC/toolchain/MuslToolchain.php | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/SPC/doctor/item/LinuxMuslCheck.php b/src/SPC/doctor/item/LinuxMuslCheck.php index c11bd4c4..b35a97d9 100644 --- a/src/SPC/doctor/item/LinuxMuslCheck.php +++ b/src/SPC/doctor/item/LinuxMuslCheck.php @@ -74,9 +74,10 @@ class LinuxMuslCheck SourcePatcher::patchFile('musl-1.2.5_CVE-2025-26519_0002.patch', SOURCE_PATH . "/{$musl_version_name}"); logger()->info('Installing musl wrapper'); shell()->cd(SOURCE_PATH . "/{$musl_version_name}") - ->exec('CC=gcc CXX=g++ AR=ar LD=ld ./configure --disable-gcc-wrapper') - ->exec('CC=gcc CXX=g++ AR=ar LD=ld make -j') - ->exec("CC=gcc CXX=g++ AR=ar LD=ld {$prefix}make install"); + ->setEnv(['CC' => 'gcc', 'CXX' => 'g++', 'AR' => 'ar', 'LD' => 'ld', 'RANLIB' => 'ranlib']) + ->exec('./configure --disable-gcc-wrapper') + ->exec('make -j') + ->exec("{$prefix}make install"); // TODO: add path using putenv instead of editing /etc/profile return true; } diff --git a/src/SPC/toolchain/MuslToolchain.php b/src/SPC/toolchain/MuslToolchain.php index ac3c7b73..16e8bbf8 100644 --- a/src/SPC/toolchain/MuslToolchain.php +++ b/src/SPC/toolchain/MuslToolchain.php @@ -16,6 +16,7 @@ class MuslToolchain implements ToolchainInterface GlobalEnvManager::putenv("SPC_LINUX_DEFAULT_CC={$arch}-linux-musl-gcc"); GlobalEnvManager::putenv("SPC_LINUX_DEFAULT_CXX={$arch}-linux-musl-g++"); GlobalEnvManager::putenv("SPC_LINUX_DEFAULT_AR={$arch}-linux-musl-ar"); + GlobalEnvManager::putenv("SPC_LINUX_DEFAULT_RANLIB={$arch}-linux-musl-ranlib"); GlobalEnvManager::putenv("SPC_LINUX_DEFAULT_LD={$arch}-linux-musl-ld"); GlobalEnvManager::addPathIfNotExists('/usr/local/musl/bin'); GlobalEnvManager::addPathIfNotExists("/usr/local/musl/{$arch}-linux-musl/bin");