mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-03-18 04:44:53 +08:00
Add extension version and env check method (#458)
This commit is contained in:
parent
11076b1355
commit
4ba92b08ca
@ -16,9 +16,8 @@ use SPC\command\DumpLicenseCommand;
|
|||||||
use SPC\command\ExtractCommand;
|
use SPC\command\ExtractCommand;
|
||||||
use SPC\command\InstallPkgCommand;
|
use SPC\command\InstallPkgCommand;
|
||||||
use SPC\command\MicroCombineCommand;
|
use SPC\command\MicroCombineCommand;
|
||||||
|
use SPC\command\SwitchPhpVersionCommand;
|
||||||
use Symfony\Component\Console\Application;
|
use Symfony\Component\Console\Application;
|
||||||
use Symfony\Component\Console\Command\HelpCommand;
|
|
||||||
use Symfony\Component\Console\Command\ListCommand;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* static-php-cli console app entry
|
* static-php-cli console app entry
|
||||||
@ -43,6 +42,7 @@ final class ConsoleApplication extends Application
|
|||||||
new DumpLicenseCommand(),
|
new DumpLicenseCommand(),
|
||||||
new ExtractCommand(),
|
new ExtractCommand(),
|
||||||
new MicroCombineCommand(),
|
new MicroCombineCommand(),
|
||||||
|
new SwitchPhpVersionCommand(),
|
||||||
|
|
||||||
// Dev commands
|
// Dev commands
|
||||||
new AllExtCommand(),
|
new AllExtCommand(),
|
||||||
@ -51,9 +51,4 @@ final class ConsoleApplication extends Application
|
|||||||
]
|
]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function getDefaultCommands(): array
|
|
||||||
{
|
|
||||||
return [new HelpCommand(), new ListCommand()];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,7 +18,7 @@ class opcache extends Extension
|
|||||||
*/
|
*/
|
||||||
public function validate(): void
|
public function validate(): void
|
||||||
{
|
{
|
||||||
if ($this->builder->getPHPVersionID() < 80000) {
|
if ($this->builder->getPHPVersionID() < 80000 && getenv('SPC_SKIP_PHP_VERSION_CHECK') !== 'yes') {
|
||||||
throw new WrongUsageException('Statically compiled PHP with Zend Opcache only available for PHP >= 8.0 !');
|
throw new WrongUsageException('Statically compiled PHP with Zend Opcache only available for PHP >= 8.0 !');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
19
src/SPC/builder/extension/protobuf.php
Normal file
19
src/SPC/builder/extension/protobuf.php
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace SPC\builder\extension;
|
||||||
|
|
||||||
|
use SPC\builder\Extension;
|
||||||
|
use SPC\util\CustomExt;
|
||||||
|
|
||||||
|
#[CustomExt('protobuf')]
|
||||||
|
class protobuf extends Extension
|
||||||
|
{
|
||||||
|
public function validate(): void
|
||||||
|
{
|
||||||
|
if ($this->builder->getPHPVersionID() < 80000 && getenv('SPC_SKIP_PHP_VERSION_CHECK') !== 'yes') {
|
||||||
|
throw new \RuntimeException('The latest protobuf extension requires PHP 8.0 or later');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -11,6 +11,13 @@ use SPC\util\CustomExt;
|
|||||||
#[CustomExt('swow')]
|
#[CustomExt('swow')]
|
||||||
class swow extends Extension
|
class swow extends Extension
|
||||||
{
|
{
|
||||||
|
public function validate(): void
|
||||||
|
{
|
||||||
|
if ($this->builder->getPHPVersionID() < 80000 && getenv('SPC_SKIP_PHP_VERSION_CHECK') !== 'yes') {
|
||||||
|
throw new RuntimeException('The latest swow extension requires PHP 8.0 or later');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function getUnixConfigureArg(): string
|
public function getUnixConfigureArg(): string
|
||||||
{
|
{
|
||||||
$arg = '--enable-swow';
|
$arg = '--enable-swow';
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user