mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-10 10:25:36 +08:00
remove separate method from macosbuilder, move method from LinuxBuilder into UnixBuilderBase
This commit is contained in:
@@ -70,35 +70,6 @@ class LinuxBuilder extends UnixBuilderBase
|
|||||||
f_mkdir(BUILD_INCLUDE_PATH, recursive: true);
|
f_mkdir(BUILD_INCLUDE_PATH, recursive: true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @throws FileSystemException
|
|
||||||
* @throws RuntimeException
|
|
||||||
* @throws WrongUsageException
|
|
||||||
*/
|
|
||||||
public function makeAutoconfArgs(string $name, array $libSpecs): string
|
|
||||||
{
|
|
||||||
$ret = '';
|
|
||||||
foreach ($libSpecs as $libName => $arr) {
|
|
||||||
$lib = $this->getLib($libName);
|
|
||||||
if ($lib === null && str_starts_with($libName, 'lib')) {
|
|
||||||
$lib = $this->getLib(substr($libName, 3));
|
|
||||||
}
|
|
||||||
|
|
||||||
$arr = $arr ?? [];
|
|
||||||
|
|
||||||
$disableArgs = $arr[0] ?? null;
|
|
||||||
$prefix = $arr[1] ?? null;
|
|
||||||
if ($lib instanceof LinuxLibraryBase) {
|
|
||||||
logger()->info("{$name} \033[32;1mwith\033[0;1m {$libName} support");
|
|
||||||
$ret .= $lib->makeAutoconfEnv($prefix) . ' ';
|
|
||||||
} else {
|
|
||||||
logger()->info("{$name} \033[31;1mwithout\033[0;1m {$libName} support");
|
|
||||||
$ret .= ($disableArgs ?? "--with-{$libName}=no") . ' ';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return rtrim($ret);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Build PHP from source.
|
* Build PHP from source.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -44,35 +44,6 @@ class MacOSBuilder extends UnixBuilderBase
|
|||||||
f_mkdir(BUILD_INCLUDE_PATH, recursive: true);
|
f_mkdir(BUILD_INCLUDE_PATH, recursive: true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* [deprecated] 生成库构建采用的 autoconf 参数列表
|
|
||||||
*
|
|
||||||
* @param string $name 要构建的 lib 库名,传入仅供输出日志
|
|
||||||
* @param array $lib_specs 依赖的 lib 库的 autoconf 文件
|
|
||||||
*/
|
|
||||||
public function makeAutoconfArgs(string $name, array $lib_specs): string
|
|
||||||
{
|
|
||||||
$ret = '';
|
|
||||||
foreach ($lib_specs as $libName => $arr) {
|
|
||||||
$lib = $this->getLib($libName);
|
|
||||||
if ($lib === null && str_starts_with($libName, 'lib')) {
|
|
||||||
$lib = $this->getLib(substr($libName, 3));
|
|
||||||
}
|
|
||||||
|
|
||||||
$arr = $arr ?? [];
|
|
||||||
|
|
||||||
$disableArgs = $arr[0] ?? null;
|
|
||||||
if ($lib instanceof MacOSLibraryBase) {
|
|
||||||
logger()->info("{$name} \033[32;1mwith\033[0;1m {$libName} support");
|
|
||||||
$ret .= '--with-' . $libName . '=yes ';
|
|
||||||
} else {
|
|
||||||
logger()->info("{$name} \033[31;1mwithout\033[0;1m {$libName} support");
|
|
||||||
$ret .= ($disableArgs ?? "--with-{$libName}=no") . ' ';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return rtrim($ret);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get dynamically linked macOS frameworks
|
* Get dynamically linked macOS frameworks
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ declare(strict_types=1);
|
|||||||
namespace SPC\builder\unix;
|
namespace SPC\builder\unix;
|
||||||
|
|
||||||
use SPC\builder\BuilderBase;
|
use SPC\builder\BuilderBase;
|
||||||
|
use SPC\builder\linux\library\LinuxLibraryBase;
|
||||||
use SPC\builder\linux\LinuxBuilder;
|
use SPC\builder\linux\LinuxBuilder;
|
||||||
use SPC\exception\FileSystemException;
|
use SPC\exception\FileSystemException;
|
||||||
use SPC\exception\RuntimeException;
|
use SPC\exception\RuntimeException;
|
||||||
@@ -90,6 +91,35 @@ abstract class UnixBuilderBase extends BuilderBase
|
|||||||
return $extra;
|
return $extra;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @throws FileSystemException
|
||||||
|
* @throws RuntimeException
|
||||||
|
* @throws WrongUsageException
|
||||||
|
*/
|
||||||
|
public function makeAutoconfArgs(string $name, array $libSpecs): string
|
||||||
|
{
|
||||||
|
$ret = '';
|
||||||
|
foreach ($libSpecs as $libName => $arr) {
|
||||||
|
$lib = $this->getLib($libName);
|
||||||
|
if ($lib === null && str_starts_with($libName, 'lib')) {
|
||||||
|
$lib = $this->getLib(substr($libName, 3));
|
||||||
|
}
|
||||||
|
|
||||||
|
$arr = $arr ?? [];
|
||||||
|
|
||||||
|
$disableArgs = $arr[0] ?? null;
|
||||||
|
$prefix = $arr[1] ?? null;
|
||||||
|
if ($lib instanceof LinuxLibraryBase) {
|
||||||
|
logger()->info("{$name} \033[32;1mwith\033[0;1m {$libName} support");
|
||||||
|
$ret .= "--with-{$libName}=no " . $lib->makeAutoconfEnv($prefix) . ' ';
|
||||||
|
} else {
|
||||||
|
logger()->info("{$name} \033[31;1mwithout\033[0;1m {$libName} support");
|
||||||
|
$ret .= ($disableArgs ?? "--with-{$libName}=no") . ' ';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return rtrim($ret);
|
||||||
|
}
|
||||||
|
|
||||||
public function proveLibs(array $sorted_libraries): void
|
public function proveLibs(array $sorted_libraries): void
|
||||||
{
|
{
|
||||||
// search all supported libs
|
// search all supported libs
|
||||||
|
|||||||
Reference in New Issue
Block a user