mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-09 09:55:37 +08:00
Add macports support (#1179)
This commit is contained in:
20
src/StaticPHP/Toolchain/ClangPortsToolchain.php
Normal file
20
src/StaticPHP/Toolchain/ClangPortsToolchain.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace StaticPHP\Toolchain;
|
||||
|
||||
use StaticPHP\Util\GlobalEnvManager;
|
||||
|
||||
class ClangPortsToolchain extends ClangNativeToolchain
|
||||
{
|
||||
public function initEnv(): void
|
||||
{
|
||||
$macports_prefix = getenv('MACPORTS_PREFIX') ?: '/opt/local';
|
||||
GlobalEnvManager::putenv("SPC_DEFAULT_CC={$macports_prefix}/bin/clang");
|
||||
GlobalEnvManager::putenv("SPC_DEFAULT_CXX={$macports_prefix}/bin/clang++");
|
||||
GlobalEnvManager::putenv("SPC_DEFAULT_AR={$macports_prefix}/bin/llvm-ar");
|
||||
GlobalEnvManager::putenv('SPC_DEFAULT_LD=ld');
|
||||
GlobalEnvManager::addPathIfNotExists("{$macports_prefix}/bin");
|
||||
}
|
||||
}
|
||||
@@ -41,6 +41,7 @@ class ToolchainManager
|
||||
'Windows' => MSVCToolchain::class,
|
||||
'Darwin' => match (getenv('SPC_USE_LLVM') ?: 'system') {
|
||||
'brew' => ClangBrewToolchain::class,
|
||||
'port' => ClangPortsToolchain::class,
|
||||
default => ClangNativeToolchain::class,
|
||||
},
|
||||
default => throw new WrongUsageException('Unsupported OS family: ' . PHP_OS_FAMILY),
|
||||
|
||||
Reference in New Issue
Block a user