mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-02 14:25:41 +08:00
Fix mongodb 2.3.0 introduced in-tree build bug
This commit is contained in:
@@ -8,6 +8,7 @@ use Package\Target\php;
|
|||||||
use StaticPHP\Attribute\Package\BeforeStage;
|
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\Attribute\PatchDescription;
|
||||||
use StaticPHP\Package\PackageInstaller;
|
use StaticPHP\Package\PackageInstaller;
|
||||||
use StaticPHP\Package\PhpExtensionPackage;
|
use StaticPHP\Package\PhpExtensionPackage;
|
||||||
use StaticPHP\Util\FileSystem;
|
use StaticPHP\Util\FileSystem;
|
||||||
@@ -16,6 +17,7 @@ use StaticPHP\Util\FileSystem;
|
|||||||
class mongodb extends PhpExtensionPackage
|
class mongodb extends PhpExtensionPackage
|
||||||
{
|
{
|
||||||
#[BeforeStage('php', [php::class, 'buildconfForWindows'], 'ext-mongodb')]
|
#[BeforeStage('php', [php::class, 'buildconfForWindows'], 'ext-mongodb')]
|
||||||
|
#[PatchDescription('Add /utf-8 flag to CFLAGS_MONGODB for Windows build to fix compilation error on non-English Windows.')]
|
||||||
public function patchBeforeBuild(): void
|
public function patchBeforeBuild(): void
|
||||||
{
|
{
|
||||||
FileSystem::replaceFileStr(
|
FileSystem::replaceFileStr(
|
||||||
@@ -25,6 +27,17 @@ class mongodb extends PhpExtensionPackage
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[BeforeStage('php', [php::class, 'buildconfForUnix'], 'ext-mongodb')]
|
||||||
|
#[PatchDescription('Replace src/libmongoc/ with ${ac_config_dir}/src/libmongoc/ in config.m4 to fix the build on Unix-like systems.')]
|
||||||
|
public function patchBeforeBuildconfUnix(): void
|
||||||
|
{
|
||||||
|
FileSystem::replaceFileRegex(
|
||||||
|
$this->getSourceDir() . '/config.m4',
|
||||||
|
'/^(\s+)(src\/libmongoc\/)/m',
|
||||||
|
'$1${ac_config_dir}/$2'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
#[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