static-php-cli — API
SPC\ConsoleApplication
Section titled “SPC\ConsoleApplication”src/SPC/ConsoleApplication.php
function __construct()
const VERSIONSPC\builder\BuilderBase
Section titled “SPC\builder\BuilderBase”src/SPC/builder/BuilderBase.php
function proveLibs(array $sorted_libraries)
function setupLibs(): void
function addLib(LibraryBase $library): void
function getLib(string $name): ?LibraryBase
function getLibs(): array
function addExt(Extension $extension): void
function getExt(string $name): ?Extension
function getExts(bool $including_shared = true): array
function setLibsOnly(bool $status = true): void
function proveExts(array $static_extensions, array $shared_extensions = [], bool $skip_check_deps = false, bool $skip_extract = false): void
function buildPHP(int $build_target = BUILD_TARGET_NONE)
function testPHP(int $build_target = BUILD_TARGET_NONE)
function buildSharedExts(): void
function makeStaticExtensionArgs(): string
function isLibsOnly(): bool
function getPHPVersionID(): int
function getPHPVersion(bool $exception_on_failure = true): string
function getPHPVersionFromArchive(?string $file = null): false|string
function getMicroVersion(): false|string
function getBuildTypeName(int $type): string
function getOption(string $key, mixed $default = null): mixed
function getOptions(): array
function setOptionIfNotExist(string $key, mixed $value): void
function setOption(string $key, mixed $value): void
function getEnvString(array $vars = ['cc', 'cxx', 'ar', 'ld']): string
function getPatchPoint(): string
function validateLibsAndExts(): void
function emitPatchPoint(string $point_name): void
function checkBeforeBuildPHP(int $rule): voidSPC\builder\BuilderProvider
Section titled “SPC\builder\BuilderProvider”src/SPC/builder/BuilderProvider.php
static function makeBuilderByInput(InputInterface $input): BuilderBase
static function getBuilder(): BuilderBaseSPC\builder\Extension
Section titled “SPC\builder\Extension”function __construct(protected string $name, protected BuilderBase $builder)
function getFrameworks(): array
function getConfigureArg(bool $shared = false): string
function getEnableArg(bool $shared = false): string
function getLibFilesString(): string
function checkDependency(): static
function getExtensionDependency(): array
function getName(): string
function getDistName(): string
function getWindowsConfigureArg(bool $shared = false): string
function getUnixConfigureArg(bool $shared = false): string
function patchBeforeBuildconf(): bool
function patchBeforeConfigure(): bool
function patchBeforeWindowsConfigure(): bool
function patchBeforeMake(): bool
function patchBeforeSharedPhpize(): bool
function patchBeforeSharedConfigure(): bool
function patchBeforeSharedMake(): bool
function getSharedExtensionLoadString(): string
function runCliCheckUnix(): void
function runCliCheckWindows(): void
function validate(): void
function buildShared(array $visited = []): void
function buildUnixShared(): void
function getExtVersion(): ?string
function setBuildStatic(): void
function setBuildShared(): void
function isBuildShared(): bool
function isBuildStatic(): bool
function getLibraryDependencies(bool $recursive = false): arraySPC\builder\LibraryBase
Section titled “SPC\builder\LibraryBase”src/SPC/builder/LibraryBase.php
function __construct(?string $source_dir = null)
function setup(bool $force = false): int
function getName(): string
function getSourceDir(): string
function getDependencies(bool $recursive = false): array
function calcDependency(): void
function getStaticLibs(): array
function getHeaders(): array
function getBinaryFiles(): array
function tryInstall(array $lock, bool $force_install = false): int
function tryBuild(bool $force_build = false): int
function validate(): void
function getLibVersion(): ?string
function getBuilder(): BuilderBase
function beforePack(): void
function patchBeforeBuild(): bool
function patchBeforeBuildconf(): bool
function patchBeforeConfigure(): bool
function patchBeforeWindowsConfigure(): bool
function patchBeforeMake(): bool
function patchPhpConfig(): bool
const NAMESPC\builder\LibraryInterface
Section titled “SPC\builder\LibraryInterface”src/SPC/builder/LibraryInterface.php
function getName(): stringSPC\builder\extension\amqp
Section titled “SPC\builder\extension\amqp”src/SPC/builder/extension/amqp.php
function patchBeforeMake(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg($shared = false): stringSPC\builder\extension\bz2
Section titled “SPC\builder\extension\bz2”src/SPC/builder/extension/bz2.php
function patchBeforeConfigure(): boolSPC\builder\extension\com_dotnet
Section titled “SPC\builder\extension\com_dotnet”src/SPC/builder/extension/com_dotnet.php
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\curl
Section titled “SPC\builder\extension\curl”src/SPC/builder/extension/curl.php
function patchBeforeBuildconf(): bool
function patchBeforeConfigure(): bool
function patchBeforeMake(): bool
function patchBeforeSharedConfigure(): bool
function buildUnixShared(): voidSPC\builder\extension\dba
Section titled “SPC\builder\extension\dba”src/SPC/builder/extension/dba.php
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\decimal
Section titled “SPC\builder\extension\decimal”src/SPC/builder/extension/decimal.php
function patchBeforeBuildconf(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\dio
Section titled “SPC\builder\extension\dio”src/SPC/builder/extension/dio.php
function patchBeforeBuildconf(): boolSPC\builder\extension\dom
Section titled “SPC\builder\extension\dom”src/SPC/builder/extension/dom.php
function getUnixConfigureArg(bool $shared = false): string
function patchBeforeBuildconf(): bool
function getWindowsConfigureArg($shared = false): stringSPC\builder\extension\enchant
Section titled “SPC\builder\extension\enchant”src/SPC/builder/extension/enchant.php
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\ev
Section titled “SPC\builder\extension\ev”src/SPC/builder/extension/ev.php
function patchBeforeBuildconf(): boolSPC\builder\extension\event
Section titled “SPC\builder\extension\event”src/SPC/builder/extension/event.php
function getUnixConfigureArg(bool $shared = false): string
function patchBeforeConfigure(): bool
function patchBeforeMake(): boolSPC\builder\extension\ffi
Section titled “SPC\builder\extension\ffi”src/SPC/builder/extension/ffi.php
function patchBeforeBuildconf(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\gd
Section titled “SPC\builder\extension\gd”src/SPC/builder/extension/gd.php
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\gettext
Section titled “SPC\builder\extension\gettext”src/SPC/builder/extension/gettext.php
function patchBeforeBuildconf(): bool
function patchBeforeConfigure(): boolSPC\builder\extension\glfw
Section titled “SPC\builder\extension\glfw”src/SPC/builder/extension/glfw.php
function patchBeforeBuildconf(): bool
function patchBeforeConfigure(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\gmssl
Section titled “SPC\builder\extension\gmssl”src/SPC/builder/extension/gmssl.php
function patchBeforeBuildconf(): boolSPC\builder\extension\grpc
Section titled “SPC\builder\extension\grpc”src/SPC/builder/extension/grpc.php
function patchBeforeBuildconf(): bool
function patchBeforeConfigure(): bool
function patchBeforeMake(): boolSPC\builder\extension\iconv
Section titled “SPC\builder\extension\iconv”src/SPC/builder/extension/iconv.php
function patchBeforeConfigure(): boolSPC\builder\extension\imagick
Section titled “SPC\builder\extension\imagick”src/SPC/builder/extension/imagick.php
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\imap
Section titled “SPC\builder\extension\imap”src/SPC/builder/extension/imap.php
function patchBeforeBuildconf(): bool
function validate(): void
function getUnixConfigureArg(bool $shared = false): string
function patchBeforeMake(): boolSPC\builder\extension\intl
Section titled “SPC\builder\extension\intl”src/SPC/builder/extension/intl.php
function patchBeforeBuildconf(): bool
function patchBeforeSharedPhpize(): boolSPC\builder\extension\ldap
Section titled “SPC\builder\extension\ldap”src/SPC/builder/extension/ldap.php
function patchBeforeConfigure(): boolSPC\builder\extension\lz4
Section titled “SPC\builder\extension\lz4”src/SPC/builder/extension/lz4.php
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\maxminddb
Section titled “SPC\builder\extension\maxminddb”src/SPC/builder/extension/maxminddb.php
function patchBeforeBuildconf(): boolSPC\builder\extension\mbregex
Section titled “SPC\builder\extension\mbregex”src/SPC/builder/extension/mbregex.php
function getDistName(): string
function runCliCheckUnix(): void
function runCliCheckWindows(): voidSPC\builder\extension\mbstring
Section titled “SPC\builder\extension\mbstring”src/SPC/builder/extension/mbstring.php
function getConfigureArg(bool $shared = false): string
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\memcache
Section titled “SPC\builder\extension\memcache”src/SPC/builder/extension/memcache.php
function getUnixConfigureArg(bool $shared = false): string
function patchBeforeBuildconf(): bool
function patchBeforeSharedConfigure(): boolSPC\builder\extension\memcached
Section titled “SPC\builder\extension\memcached”src/SPC/builder/extension/memcached.php
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\mongodb
Section titled “SPC\builder\extension\mongodb”src/SPC/builder/extension/mongodb.php
function patchBeforeBuildconf(): bool
function getUnixConfigureArg(bool $shared = false): string
function getExtraEnv(): arraySPC\builder\extension\mysqlnd_ed25519
Section titled “SPC\builder\extension\mysqlnd_ed25519”src/SPC/builder/extension/mysqlnd_ed25519.php
function getConfigureArg(bool $shared = false): string
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\mysqlnd_parsec
Section titled “SPC\builder\extension\mysqlnd_parsec”src/SPC/builder/extension/mysqlnd_parsec.php
function getConfigureArg(bool $shared = false): string
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\odbc
Section titled “SPC\builder\extension\odbc”src/SPC/builder/extension/odbc.php
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\opcache
Section titled “SPC\builder\extension\opcache”src/SPC/builder/extension/opcache.php
function validate(): void
function patchBeforeBuildconf(): bool
function getUnixConfigureArg(bool $shared = false): string
function getDistName(): stringSPC\builder\extension\openssl
Section titled “SPC\builder\extension\openssl”src/SPC/builder/extension/openssl.php
function patchBeforeMake(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\opentelemetry
Section titled “SPC\builder\extension\opentelemetry”src/SPC/builder/extension/opentelemetry.php
function validate(): void
function patchBeforeBuildconf(): bool
function patchBeforeMake(): boolSPC\builder\extension\parallel
Section titled “SPC\builder\extension\parallel”src/SPC/builder/extension/parallel.php
function validate(): void
function patchBeforeBuildconf(): boolSPC\builder\extension\password_argon2
Section titled “SPC\builder\extension\password_argon2”src/SPC/builder/extension/password_argon2.php
function getDistName(): string
function runCliCheckUnix(): void
function getConfigureArg(bool $shared = false): stringSPC\builder\extension\pdo_odbc
Section titled “SPC\builder\extension\pdo_odbc”src/SPC/builder/extension/pdo_odbc.php
function patchBeforeBuildconf(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\pdo_pgsql
Section titled “SPC\builder\extension\pdo_pgsql”src/SPC/builder/extension/pdo_pgsql.php
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\pdo_sqlite
Section titled “SPC\builder\extension\pdo_sqlite”src/SPC/builder/extension/pdo_sqlite.php
function patchBeforeConfigure(): boolSPC\builder\extension\pgsql
Section titled “SPC\builder\extension\pgsql”src/SPC/builder/extension/pgsql.php
function patchBeforeConfigure(): bool
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\phar
Section titled “SPC\builder\extension\phar”src/SPC/builder/extension/phar.php
function buildUnixShared(): voidSPC\builder\extension\protobuf
Section titled “SPC\builder\extension\protobuf”src/SPC/builder/extension/protobuf.php
function validate(): voidSPC\builder\extension\rar
Section titled “SPC\builder\extension\rar”src/SPC/builder/extension/rar.php
function patchBeforeBuildconf(): boolSPC\builder\extension\rdkafka
Section titled “SPC\builder\extension\rdkafka”src/SPC/builder/extension/rdkafka.php
function patchBeforeBuildconf(): bool
function patchBeforeMake(): bool
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\readline
Section titled “SPC\builder\extension\readline”src/SPC/builder/extension/readline.php
function patchBeforeConfigure(): bool
function getUnixConfigureArg(bool $shared = false): string
function buildUnixShared(): void
function runCliCheckUnix(): voidSPC\builder\extension\redis
Section titled “SPC\builder\extension\redis”src/SPC/builder/extension/redis.php
function getUnixConfigureArg(bool $shared = false): string
function getWindowsConfigureArg(bool $shared = false): stringSPC\builder\extension\simdjson
Section titled “SPC\builder\extension\simdjson”src/SPC/builder/extension/simdjson.php
function patchBeforeBuildconf(): bool
function getSharedExtensionEnv(): arraySPC\builder\extension\snappy
Section titled “SPC\builder\extension\snappy”src/SPC/builder/extension/snappy.php
function patchBeforeConfigure(): bool
function getUnixConfigureArg(bool $shared = false): stringSPC\builder\extension\snmp
Section titled “SPC\builder\extension\snmp”src/SPC/builder/extension/snmp.php
function patchBeforeBuildconf(): boolSPC\builder\extension\spx
Section titled “SPC\builder\extension\spx”src/SPC/builder/extension/spx.php
function getUnixConfigureArg(bool $shared = false): string
function patchBeforeConfigure(): bool
function patchBeforeBuildconf(): bool
function getSharedExtensionEnv(): arraySPC\builder\extension\sqlsrv
Section titled “SPC\builder\extension\sqlsrv”src/SPC/builder/extension/sqlsrv.php
function patchBeforeBuildconf(): bool
function patchBeforeWindowsConfigure(): bool
function patchBeforeMake(): boolSPC\builder\extension\ssh2
Section titled “SPC\builder\extension\ssh2”src/SPC/builder/extension/ssh2.php
function patchBeforeConfigure(): boolSPC\builder\extension\swoole
Section titled “SPC\builder\extension\swoole”src/SPC/builder/extension/swoole.php
function patchBeforeMake(): bool
function getExtVersion(): ?string
function getUnixConfigureArg(bool $shared = false): string