mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-12 11:25:35 +08:00
Add ext-mongodb for Windows
This commit is contained in:
@@ -9,7 +9,9 @@ ext-mongodb:
|
|||||||
metadata:
|
metadata:
|
||||||
license-files: [LICENSE]
|
license-files: [LICENSE]
|
||||||
license: PHP-3.01
|
license: PHP-3.01
|
||||||
suggests:
|
depends@windows:
|
||||||
|
- ext-openssl
|
||||||
|
suggests@unix:
|
||||||
- icu
|
- icu
|
||||||
- openssl
|
- openssl
|
||||||
- zstd
|
- zstd
|
||||||
@@ -18,4 +20,5 @@ ext-mongodb:
|
|||||||
- CoreFoundation
|
- CoreFoundation
|
||||||
- Security
|
- Security
|
||||||
php-extension:
|
php-extension:
|
||||||
arg-type: custom
|
arg-type@unix: custom
|
||||||
|
arg-type@windows: '--enable-mongodb --with-mongodb-client-side-encryption'
|
||||||
|
|||||||
@@ -4,14 +4,27 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace Package\Extension;
|
namespace Package\Extension;
|
||||||
|
|
||||||
|
use Package\Target\php;
|
||||||
|
use StaticPHP\Attribute\Package\BeforeStage;
|
||||||
use StaticPHP\Attribute\Package\CustomPhpConfigureArg;
|
use StaticPHP\Attribute\Package\CustomPhpConfigureArg;
|
||||||
use StaticPHP\Attribute\Package\Extension;
|
use StaticPHP\Attribute\Package\Extension;
|
||||||
use StaticPHP\Package\PackageInstaller;
|
use StaticPHP\Package\PackageInstaller;
|
||||||
use StaticPHP\Package\PhpExtensionPackage;
|
use StaticPHP\Package\PhpExtensionPackage;
|
||||||
|
use StaticPHP\Util\FileSystem;
|
||||||
|
|
||||||
#[Extension('mongodb')]
|
#[Extension('mongodb')]
|
||||||
class mongodb extends PhpExtensionPackage
|
class mongodb extends PhpExtensionPackage
|
||||||
{
|
{
|
||||||
|
#[BeforeStage('php', [php::class, 'buildconfForWindows'], 'ext-mongodb')]
|
||||||
|
public function patchBeforeBuild(): void
|
||||||
|
{
|
||||||
|
FileSystem::replaceFileStr(
|
||||||
|
"{$this->getSourceDir()}/config.w32",
|
||||||
|
'ADD_FLAG("CFLAGS_MONGODB", "/D KMS_MESSAGE_LITTLE_ENDIAN=1 /D MONGOCRYPT_LITTLE_ENDIAN=1 /D MLIB_USER=1");',
|
||||||
|
'ADD_FLAG("CFLAGS_MONGODB", "/D KMS_MESSAGE_LITTLE_ENDIAN=1 /D MONGOCRYPT_LITTLE_ENDIAN=1 /D MLIB_USER=1");' . "\n ADD_FLAG(\"CFLAGS_MONGODB\", \"/utf-8\");",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
#[CustomPhpConfigureArg('Darwin')]
|
#[CustomPhpConfigureArg('Darwin')]
|
||||||
#[CustomPhpConfigureArg('Linux')]
|
#[CustomPhpConfigureArg('Linux')]
|
||||||
public function getUnixConfigureArg(bool $shared, PackageInstaller $installer): string
|
public function getUnixConfigureArg(bool $shared, PackageInstaller $installer): string
|
||||||
|
|||||||
Reference in New Issue
Block a user