mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-10 18:35:35 +08:00
Merge branch 'v3' into fable-v3-windows
This commit is contained in:
@@ -18,7 +18,9 @@ class gmssl
|
||||
#[BuildFor('Darwin')]
|
||||
public function build(LibraryPackage $lib): void
|
||||
{
|
||||
UnixCMakeExecutor::create($lib)->build();
|
||||
UnixCMakeExecutor::create($lib)
|
||||
->addConfigureArgs('-DENABLE_SM2_PRIVATE_KEY_EXPORT=ON')
|
||||
->build();
|
||||
}
|
||||
|
||||
#[BuildFor('Windows')]
|
||||
@@ -33,6 +35,7 @@ class gmssl
|
||||
'-G "NMake Makefiles"',
|
||||
'-DWIN32=ON',
|
||||
'-DBUILD_SHARED_LIBS=OFF',
|
||||
'-DENABLE_SM2_PRIVATE_KEY_EXPORT=ON',
|
||||
'-DCMAKE_BUILD_TYPE=Release',
|
||||
'-DCMAKE_C_FLAGS_RELEASE="/MT /O2 /Ob2 /DNDEBUG"',
|
||||
'-DCMAKE_CXX_FLAGS_RELEASE="/MT /O2 /Ob2 /DNDEBUG"',
|
||||
@@ -42,13 +45,13 @@ class gmssl
|
||||
->toStep(1)
|
||||
->build();
|
||||
|
||||
// fix cmake_install.cmake install prefix (GmSSL overrides it internally)
|
||||
$installCmake = "{$buildDir}\\cmake_install.cmake";
|
||||
FileSystem::writeFile(
|
||||
$installCmake,
|
||||
'set(CMAKE_INSTALL_PREFIX "' . str_replace('\\', '/', $lib->getBuildRootPath()) . '")' . PHP_EOL . FileSystem::readFile($installCmake)
|
||||
);
|
||||
cmd()->cd($buildDir)->exec('nmake gmssl XCFLAGS=/MT');
|
||||
|
||||
cmd()->cd($buildDir)->exec('nmake install XCFLAGS=/MT');
|
||||
$libPath = "{$lib->getBuildRootPath()}/lib";
|
||||
$incPath = "{$lib->getBuildRootPath()}/include/gmssl";
|
||||
FileSystem::createDir($libPath);
|
||||
FileSystem::createDir($incPath);
|
||||
FileSystem::copy("{$buildDir}\\bin\\gmssl.lib", "{$libPath}/gmssl.lib");
|
||||
FileSystem::copyDir("{$lib->getSourceDir()}\\include\\gmssl", $incPath);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ class libde265 extends LibraryPackage
|
||||
->addConfigureArgs(
|
||||
'-DENABLE_SDL=OFF',
|
||||
'-DENABLE_DECODER=OFF',
|
||||
'-DENABLE_SIMD=OFF',
|
||||
'-DHAVE_NEON=OFF',
|
||||
)
|
||||
->build();
|
||||
|
||||
@@ -18,6 +18,7 @@ class libssh2
|
||||
{
|
||||
WindowsCMakeExecutor::create($lib)
|
||||
->addConfigureArgs(
|
||||
'-DCRYPTO_BACKEND=WinCNG',
|
||||
'-DENABLE_ZLIB_COMPRESSION=ON',
|
||||
'-DBUILD_TESTING=OFF'
|
||||
)
|
||||
|
||||
@@ -24,7 +24,7 @@ class openssl
|
||||
{
|
||||
if (SystemTarget::getTargetOS() === 'Windows') {
|
||||
global $argv;
|
||||
$perl_path_native = PKG_ROOT_PATH . '\strawberry-perl-' . arch2gnu(php_uname('m')) . '-win\perl\bin\perl.exe';
|
||||
$perl_path_native = PKG_ROOT_PATH . '\strawberry-perl\perl\bin\perl.exe';
|
||||
$perl = file_exists($perl_path_native) ? ($perl_path_native) : WindowsUtil::findCommand('perl.exe');
|
||||
if ($perl === null) {
|
||||
throw new EnvironmentException(
|
||||
|
||||
@@ -19,7 +19,12 @@ class sqlite
|
||||
#[BuildFor('Linux')]
|
||||
public function buildUnix(LibraryPackage $lib): void
|
||||
{
|
||||
UnixAutoconfExecutor::create($lib)->configure()->make();
|
||||
UnixAutoconfExecutor::create($lib)
|
||||
->appendEnv([
|
||||
'CFLAGS' => '-DSQLITE_ENABLE_COLUMN_METADATA=1',
|
||||
])
|
||||
->configure()
|
||||
->make();
|
||||
$lib->patchPkgconfPrefix(['sqlite3.pc']);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user