mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-12 03:15:35 +08:00
Compare commits
6 Commits
ef83ff074e
...
c88041b7e0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c88041b7e0 | ||
|
|
3bb84f3b94 | ||
|
|
c31bf73685 | ||
|
|
c4d7ca819b | ||
|
|
fd8ab71d80 | ||
|
|
2a7966aa4b |
@@ -9,8 +9,10 @@ libssh2:
|
||||
metadata:
|
||||
license-files: [COPYING]
|
||||
license: BSD-3-Clause
|
||||
depends:
|
||||
depends@unix:
|
||||
- openssl
|
||||
depends@windows:
|
||||
- zlib
|
||||
headers:
|
||||
- libssh2.h
|
||||
- libssh2_publickey.h
|
||||
|
||||
@@ -16,7 +16,7 @@ use StaticPHP\Util\GlobalEnvManager;
|
||||
class msys2_build_essentials
|
||||
{
|
||||
// MSYS subsystem packages required for autotools-based builds.
|
||||
private const REQUIRED_PACKAGES = ['make', 'autoconf', 'automake', 'libtool', 'pkgconf', 'perl'];
|
||||
private const REQUIRED_PACKAGES = ['make', 'autoconf', 'automake', 'libtool', 'pkgconf', 'perl', 'bison', 're2c'];
|
||||
|
||||
#[CustomBinary('msys2-build-essentials', ['windows-x86_64'])]
|
||||
public function downBinary(ArtifactDownloader $downloader): DownloadResult
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -40,7 +40,7 @@ class curl
|
||||
->optionalPackage('brotli', ...cmake_boolean_args('CURL_BROTLI'))
|
||||
->addConfigureArgs(
|
||||
'-DBUILD_CURL_EXE=ON',
|
||||
'-DZSTD_LIBRARY=zstd_static.lib',
|
||||
'-DZSTD_LIBRARY=' . BUILD_LIB_PATH . '/zstd_static.lib',
|
||||
'-DBUILD_TESTING=OFF',
|
||||
'-DBUILD_EXAMPLES=OFF',
|
||||
'-DUSE_LIBIDN2=OFF',
|
||||
|
||||
@@ -255,6 +255,11 @@ class php extends TargetPackage
|
||||
$installer->addBuildPackage('php-embed');
|
||||
}
|
||||
|
||||
// UPX compression: ensure the upx binary package is installed when requested
|
||||
if ($package->getBuildOption('with-upx-pack')) {
|
||||
$additional_packages[] = 'upx';
|
||||
}
|
||||
|
||||
return [...$extensions_pkg, ...$additional_packages];
|
||||
}
|
||||
|
||||
|
||||
@@ -39,6 +39,13 @@ trait windows
|
||||
InteractiveTerm::setMessage('Building php: ' . ConsoleColor::yellow('./buildconf.bat'));
|
||||
cmd()->cd($package->getSourceDir())->exec('.\buildconf.bat');
|
||||
|
||||
// Bypass the phpsdk_version check in configure.js: we use MSVC + msys2 instead of PHP SDK, so phpsdk_version is not available and the check would always fail.
|
||||
FileSystem::replaceFileStr(
|
||||
"{$package->getSourceDir()}\\configure.js",
|
||||
'check_binary_tools_sdk();',
|
||||
'/* check_binary_tools_sdk(); skipped: using MSVC + msys2 without PHP SDK */'
|
||||
);
|
||||
|
||||
if ($package->getBuildOption('enable-micro-win32') && $installer->isPackageResolved('php-micro')) {
|
||||
SourcePatcher::patchMicroWin32();
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user