mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-10 10:25:36 +08:00
Add ext-memcache,ext-msgpack
This commit is contained in:
23
config/pkg/ext/ext-memcached.yml
Normal file
23
config/pkg/ext/ext-memcached.yml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
ext-memcached:
|
||||||
|
type: php-extension
|
||||||
|
artifact:
|
||||||
|
source:
|
||||||
|
type: pecl
|
||||||
|
name: memcached
|
||||||
|
metadata:
|
||||||
|
license-files: [LICENSE]
|
||||||
|
license: PHP-3.01
|
||||||
|
depends:
|
||||||
|
- libmemcached
|
||||||
|
depends@unix:
|
||||||
|
- libmemcached
|
||||||
|
- fastlz
|
||||||
|
- ext-session
|
||||||
|
- ext-zlib
|
||||||
|
suggests:
|
||||||
|
- zstd
|
||||||
|
- ext-igbinary
|
||||||
|
- ext-msgpack
|
||||||
|
- ext-session
|
||||||
|
php-extension:
|
||||||
|
arg-type: '--enable-memcached@shared_suffix@ --with-zlib-dir=@build_root_path@'
|
||||||
14
config/pkg/ext/ext-msgpack.yml
Normal file
14
config/pkg/ext/ext-msgpack.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
ext-msgpack:
|
||||||
|
type: php-extension
|
||||||
|
artifact:
|
||||||
|
source:
|
||||||
|
type: pecl
|
||||||
|
name: msgpack
|
||||||
|
metadata:
|
||||||
|
license-files: [LICENSE]
|
||||||
|
license: BSD-3-Clause
|
||||||
|
depends:
|
||||||
|
- ext-session
|
||||||
|
php-extension:
|
||||||
|
arg-type@unix: with
|
||||||
|
arg-type@windows: enable
|
||||||
30
src/Package/Extension/memcached.php
Normal file
30
src/Package/Extension/memcached.php
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Package\Extension;
|
||||||
|
|
||||||
|
use StaticPHP\Attribute\Package\CustomPhpConfigureArg;
|
||||||
|
use StaticPHP\Attribute\Package\Extension;
|
||||||
|
use StaticPHP\Package\PackageInstaller;
|
||||||
|
use StaticPHP\Package\PhpExtensionPackage;
|
||||||
|
|
||||||
|
#[Extension('memcached')]
|
||||||
|
class memcached extends PhpExtensionPackage
|
||||||
|
{
|
||||||
|
#[CustomPhpConfigureArg('Darwin')]
|
||||||
|
#[CustomPhpConfigureArg('Linux')]
|
||||||
|
public function getUnixConfigureArg(bool $shared, PackageInstaller $installer): string
|
||||||
|
{
|
||||||
|
return '--enable-memcached' . ($shared ? '=shared' : '') . ' ' .
|
||||||
|
'--with-zlib-dir=' . $installer->getLibraryPackage('zlib')->getBuildRootPath() . ' ' .
|
||||||
|
'--with-libmemcached-dir=' . $installer->getLibraryPackage('libmemcached')->getBuildRootPath() . ' ' .
|
||||||
|
'--disable-memcached-sasl ' .
|
||||||
|
'--enable-memcached-json ' .
|
||||||
|
($installer->getLibraryPackage('zstd') ? '--with-zstd ' : '') .
|
||||||
|
($installer->getPhpExtensionPackage('ext-igbinary') ? '--enable-memcached-igbinary ' : '') .
|
||||||
|
($installer->getPhpExtensionPackage('ext-session') ? '--enable-memcached-session ' : '') .
|
||||||
|
($installer->getPhpExtensionPackage('ext-msgpack') ? '--enable-memcached-msgpack ' : '') .
|
||||||
|
'--with-system-fastlz';
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user