Merge pull request #59 from javalaw/refactor

添加sodium扩展支持
This commit is contained in:
Jerry Ma
2023-05-17 16:32:18 +08:00
committed by GitHub
6 changed files with 57 additions and 1 deletions

View File

@@ -292,7 +292,7 @@
"type": "builtin",
"arg-type": "with",
"lib-depends": [
"sodium"
"libsodium"
]
},
"sqlite3": {

View File

@@ -454,5 +454,11 @@
"zstd.h",
"zstd_errors.h"
]
},
"libsodium": {
"source": "libsodium",
"static-libs-unix": [
"libsodium.a"
]
}
}

View File

@@ -411,5 +411,13 @@
"type": "file",
"path": "LICENSE"
}
},
"libsodium": {
"type": "url",
"url": "https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz",
"license": {
"type": "file",
"path": "LICENSE"
}
}
}

View File

@@ -0,0 +1,12 @@
<?php
declare(strict_types=1);
namespace SPC\builder\linux\library;
class libsodium extends LinuxLibraryBase
{
use \SPC\builder\unix\library\libsodium;
public const NAME = 'libsodium';
}

View File

@@ -0,0 +1,12 @@
<?php
declare(strict_types=1);
namespace SPC\builder\macos\library;
class libsodium extends MacOSLibraryBase
{
use \SPC\builder\unix\library\libsodium;
public const NAME = 'libsodium';
}

View File

@@ -0,0 +1,18 @@
<?php
declare(strict_types=1);
namespace SPC\builder\unix\library;
trait libsodium
{
protected function build()
{
$root = BUILD_ROOT_PATH;
shell()->cd($this->source_dir)
->exec("{$this->builder->configure_env} ./configure --enable-static --disable-shared --prefix={$root}")
->exec('make clean')
->exec("make -j{$this->builder->concurrency}")
->exec('make install');
}
}