remove shared-ext-depends

This commit is contained in:
DubbleClick 2025-05-23 10:00:31 +07:00
parent 51891478e4
commit 15dc672bcf
2 changed files with 9 additions and 25 deletions

View File

@ -96,7 +96,7 @@
"type": "external", "type": "external",
"source": "ev", "source": "ev",
"arg-type-windows": "with", "arg-type-windows": "with",
"shared-ext-depends": [ "ext-depends": [
"sockets" "sockets"
] ]
}, },
@ -371,9 +371,6 @@
"zlib", "zlib",
"session" "session"
], ],
"shared-ext-depends": [
"session"
],
"build-with-php": true "build-with-php": true
}, },
"memcached": { "memcached": {
@ -392,9 +389,6 @@
"ext-depends": [ "ext-depends": [
"session", "session",
"zlib" "zlib"
],
"shared-ext-depends": [
"session"
] ]
}, },
"mongodb": { "mongodb": {
@ -420,7 +414,7 @@
"source": "msgpack", "source": "msgpack",
"arg-type-unix": "with", "arg-type-unix": "with",
"arg-type-win": "enable", "arg-type-win": "enable",
"shared-ext-depends": [ "ext-depends": [
"session" "session"
] ]
}, },
@ -429,9 +423,6 @@
"arg-type": "with", "arg-type": "with",
"ext-depends": [ "ext-depends": [
"mysqlnd" "mysqlnd"
],
"shared-ext-depends": [
"mysqlnd"
] ]
}, },
"mysqlnd": { "mysqlnd": {
@ -792,10 +783,7 @@
"lib-depends": [ "lib-depends": [
"libssh2" "libssh2"
], ],
"shared-ext-depends": [ "ext-depends": [
"openssl"
],
"ext-depends-windows": [
"openssl", "openssl",
"zlib" "zlib"
] ]

View File

@ -121,9 +121,6 @@ class Extension
foreach (Config::getExt($this->name, 'ext-suggests', []) as $name) { foreach (Config::getExt($this->name, 'ext-suggests', []) as $name) {
$this->addExtensionDependency($name, true); $this->addExtensionDependency($name, true);
} }
foreach (Config::getExt($this->name, 'shared-ext-depends', []) as $name) {
$this->addExtensionDependency($name);
}
return $this; return $this;
} }
@ -319,14 +316,13 @@ class Extension
logger()->info('extension ' . $this->getName() . ' already built, skipping'); logger()->info('extension ' . $this->getName() . ' already built, skipping');
return; return;
} }
foreach (Config::getExt($this->name, 'shared-ext-depends', []) as $name) { foreach ($this->dependencies as $dependency) {
$dependencyExt = $this->builder->getExt($name); if (!$dependency instanceof Extension) {
if ($dependencyExt === null) { continue;
throw new RuntimeException("extension {$this->name} requires shared extension {$name}");
} }
if ($dependencyExt->isBuildShared()) { if (!$dependency->isBuildStatic()) {
logger()->info('extension ' . $this->getName() . ' requires shared extension ' . $name); logger()->info('extension ' . $this->getName() . ' requires extension ' . $dependency->getName());
$dependencyExt->buildShared(); $dependency->buildShared();
} }
} }
match (PHP_OS_FAMILY) { match (PHP_OS_FAMILY) {