mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-09 01:45:36 +08:00
Add patch description for Windows static linking in libsodium
This commit is contained in:
@@ -7,6 +7,7 @@ namespace Package\Library;
|
|||||||
use StaticPHP\Attribute\Package\BuildFor;
|
use StaticPHP\Attribute\Package\BuildFor;
|
||||||
use StaticPHP\Attribute\Package\Library;
|
use StaticPHP\Attribute\Package\Library;
|
||||||
use StaticPHP\Attribute\Package\PatchBeforeBuild;
|
use StaticPHP\Attribute\Package\PatchBeforeBuild;
|
||||||
|
use StaticPHP\Attribute\PatchDescription;
|
||||||
use StaticPHP\Exception\BuildFailureException;
|
use StaticPHP\Exception\BuildFailureException;
|
||||||
use StaticPHP\Exception\EnvironmentException;
|
use StaticPHP\Exception\EnvironmentException;
|
||||||
use StaticPHP\Package\LibraryPackage;
|
use StaticPHP\Package\LibraryPackage;
|
||||||
@@ -19,11 +20,11 @@ use StaticPHP\Util\System\WindowsUtil;
|
|||||||
class libsodium
|
class libsodium
|
||||||
{
|
{
|
||||||
#[PatchBeforeBuild]
|
#[PatchBeforeBuild]
|
||||||
|
#[PatchDescription('Replace SODIUM_STATIC define guard with unconditional #if 1 for MSVC static linking')]
|
||||||
public function patchBeforeBuild(LibraryPackage $lib): void
|
public function patchBeforeBuild(LibraryPackage $lib): void
|
||||||
{
|
{
|
||||||
if (SystemTarget::getTargetOS() === 'Windows') {
|
spc_skip_if(SystemTarget::getTargetOS() !== 'Windows', 'This patch is only for Windows builds.');
|
||||||
FileSystem::replaceFileStr("{$lib->getSourceDir()}\\src\\libsodium\\include\\sodium\\export.h", '#ifdef SODIUM_STATIC', '#if 1');
|
FileSystem::replaceFileStr($lib->getSourceDir() . '\src\libsodium\include\sodium\export.h', '#ifdef SODIUM_STATIC', '#if 1');
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[BuildFor('Linux')]
|
#[BuildFor('Linux')]
|
||||||
|
|||||||
Reference in New Issue
Block a user