mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-03-17 20:34:51 +08:00
Fix parallel config.m4
This commit is contained in:
parent
3ce24da15c
commit
bc7dba6125
77
.github/workflows/ext-configure-tests.yml
vendored
77
.github/workflows/ext-configure-tests.yml
vendored
@ -1,77 +0,0 @@
|
|||||||
name: "Extension configure tests"
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
pull_request:
|
|
||||||
branches: [ "main" ]
|
|
||||||
paths:
|
|
||||||
- '.github/workflows/ext-configure-tests.yml'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
test:
|
|
||||||
name: "${{ matrix.extension }} (PHP ${{ matrix.php-version }} on ${{ matrix.operating-system }})"
|
|
||||||
runs-on: ${{ matrix.operating-system }}
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
extension:
|
|
||||||
- parallel
|
|
||||||
- pdo_pgsql
|
|
||||||
- pgsql
|
|
||||||
php-version:
|
|
||||||
- "8.4"
|
|
||||||
- "8.3"
|
|
||||||
- "8.2"
|
|
||||||
- "8.1"
|
|
||||||
operating-system:
|
|
||||||
- "ubuntu-latest"
|
|
||||||
- "macos-14"
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: "Checkout"
|
|
||||||
uses: "actions/checkout@v4"
|
|
||||||
|
|
||||||
- name: OS type
|
|
||||||
id: os-type
|
|
||||||
run: |
|
|
||||||
OS=""
|
|
||||||
if [ "${{ matrix.operating-system }}" = "ubuntu-latest" ]; then
|
|
||||||
OS="linux-x86_64"
|
|
||||||
elif [ "${{ matrix.operating-system }}" = "macos-13" ]; then
|
|
||||||
OS="macos-x86_64"
|
|
||||||
elif [ "${{ matrix.operating-system }}" = "debian-arm64-self-hosted" ]; then
|
|
||||||
OS="linux-aarch64"
|
|
||||||
elif [ "${{ matrix.operating-system }}" = "macos-14" ]; then
|
|
||||||
OS="macos-aarch64"
|
|
||||||
fi
|
|
||||||
echo "OS=$OS" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: "Setup PHP"
|
|
||||||
uses: shivammathur/setup-php@v2
|
|
||||||
with:
|
|
||||||
php-version: 8.2
|
|
||||||
tools: pecl, composer
|
|
||||||
extensions: curl, openssl, mbstring
|
|
||||||
ini-values: memory_limit=-1
|
|
||||||
env:
|
|
||||||
phpts: nts
|
|
||||||
|
|
||||||
- name: "Install Dependencies"
|
|
||||||
run: composer update -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
|
||||||
|
|
||||||
- id: cache-download
|
|
||||||
uses: actions/cache@v4
|
|
||||||
with:
|
|
||||||
path: downloads
|
|
||||||
key: php-${{ matrix.php-version }}-dependencies-for-tests
|
|
||||||
|
|
||||||
# If there's no dependencies cache, fetch sources
|
|
||||||
- name: "Download sources"
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
run: ./bin/spc download --with-php=${{ matrix.php-version }} --for-extensions=${{ matrix.extension }} --debug --ignore-cache-sources=php-src
|
|
||||||
|
|
||||||
- name: "Build library: ${{ matrix.library }}"
|
|
||||||
run: |
|
|
||||||
SPC_USE_SUDO=yes ./bin/spc doctor --auto-fix
|
|
||||||
./bin/spc build --build-cli --build-micro ${{ matrix.extension }} -P tests/configure.php --debug --enable-zts
|
|
||||||
@ -6,6 +6,7 @@ namespace SPC\builder\extension;
|
|||||||
|
|
||||||
use SPC\builder\Extension;
|
use SPC\builder\Extension;
|
||||||
use SPC\exception\WrongUsageException;
|
use SPC\exception\WrongUsageException;
|
||||||
|
use SPC\store\FileSystem;
|
||||||
use SPC\util\CustomExt;
|
use SPC\util\CustomExt;
|
||||||
|
|
||||||
#[CustomExt('parallel')]
|
#[CustomExt('parallel')]
|
||||||
@ -17,4 +18,10 @@ class parallel extends Extension
|
|||||||
throw new WrongUsageException('ext-parallel must be built with ZTS builds. Use "--enable-zts" option!');
|
throw new WrongUsageException('ext-parallel must be built with ZTS builds. Use "--enable-zts" option!');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function patchBeforeBuildconf(): bool
|
||||||
|
{
|
||||||
|
FileSystem::replaceFileRegex(SOURCE_PATH . '/php-src/ext/parallel/config.m4', '/PHP_VERSION=.*/m', '');
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,7 +26,7 @@ $test_os = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
// whether enable thread safe
|
// whether enable thread safe
|
||||||
$zts = false;
|
$zts = true;
|
||||||
|
|
||||||
$no_strip = false;
|
$no_strip = false;
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ $prefer_pre_built = false;
|
|||||||
|
|
||||||
// If you want to test your added extensions and libs, add below (comma separated, example `bcmath,openssl`).
|
// If you want to test your added extensions and libs, add below (comma separated, example `bcmath,openssl`).
|
||||||
$extensions = match (PHP_OS_FAMILY) {
|
$extensions = match (PHP_OS_FAMILY) {
|
||||||
'Linux', 'Darwin' => 'grpc,openssl,pgsql',
|
'Linux', 'Darwin' => 'parallel',
|
||||||
'Windows' => 'amqp,apcu,bcmath,bz2,calendar,ctype,curl,dba,dom,ds,exif,ffi,fileinfo,filter,ftp,gd,iconv,igbinary,libxml,mbregex,mbstring,mysqli,mysqlnd,opcache,openssl,pdo,pdo_mysql,pdo_sqlite,pdo_sqlsrv,phar,rar,redis,session,shmop,simdjson,simplexml,soap,sockets,sqlite3,sqlsrv,ssh2,swow,sysvshm,tokenizer,xml,xmlreader,xmlwriter,yac,yaml,zip,zlib',
|
'Windows' => 'amqp,apcu,bcmath,bz2,calendar,ctype,curl,dba,dom,ds,exif,ffi,fileinfo,filter,ftp,gd,iconv,igbinary,libxml,mbregex,mbstring,mysqli,mysqlnd,opcache,openssl,pdo,pdo_mysql,pdo_sqlite,pdo_sqlsrv,phar,rar,redis,session,shmop,simdjson,simplexml,soap,sockets,sqlite3,sqlsrv,ssh2,swow,sysvshm,tokenizer,xml,xmlreader,xmlwriter,yac,yaml,zip,zlib',
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -1,13 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
if (patch_point() === 'before-php-make') {
|
|
||||||
// get config.status file
|
|
||||||
$config_status = file_get_contents(SOURCE_PATH . '/php-src/config.status');
|
|
||||||
if ($config_status === false) {
|
|
||||||
throw patch_point_interrupt(1, 'Failed to read config.status');
|
|
||||||
}
|
|
||||||
if (str_contains($config_status, 'S["PHP_VERSION"]=""')) {
|
|
||||||
throw patch_point_interrupt(1, 'Cannot find valid PHP_VERSION in config.status');
|
|
||||||
}
|
|
||||||
throw patch_point_interrupt(0);
|
|
||||||
}
|
|
||||||
Loading…
x
Reference in New Issue
Block a user