Compare commits

...

531 Commits

Author SHA1 Message Date
crazywhalecc
a3003d363e ttt 2026-04-02 08:43:31 +08:00
crazywhalecc
b5b4e8f622 ttt 2026-04-02 08:43:26 +08:00
crazywhalecc
d316ea81e4 Merge branch 'main' into v3-refactor/win-exts
# Conflicts:
#	config/env.ini
2026-03-31 15:13:23 +08:00
crazywhalecc
b96586e4d3 Add curl extension and enhance Windows build process 2026-03-31 15:10:47 +08:00
Marc
d535e4f102 libjpeg-turbo mustn't compile zlib symbols on its own (#1077) 2026-03-30 10:08:49 +07:00
henderkes
5a5f54bdcd brilliant to test php 8.1 2026-03-30 01:37:08 +07:00
henderkes
8f7897e13b test 2026-03-30 01:06:31 +07:00
henderkes
daae5f2a7c libjpeg-turbo mustn't compile zlib symbols on its own 2026-03-30 00:56:51 +07:00
crazywhalecc
844bb69f0d Fix ext-curl implementation 2026-03-27 22:30:39 +08:00
Marc
766f7fa34f hard code protobuf version while we're on v2 (#1075) 2026-03-26 12:37:32 +07:00
henderkes
ecf712b2b7 hard code protobuf version while we're on v2 2026-03-26 12:32:27 +07:00
crazywhalecc
94dd44e68d Add ext-amqp 2026-03-24 18:58:12 +08:00
crazywhalecc
2fa07700ef Fix zlib extension wrong arg 2026-03-24 18:55:04 +08:00
crazywhalecc
13a15b1a5a Use alpha1 as version number 2026-03-24 15:31:15 +08:00
Jerry Ma
d2c7fee8fa [3.0] Refactor windows libs (#1067) 2026-03-24 15:28:27 +08:00
crazywhalecc
9cd3125544 Patch configure script to include liblber for ldap dependency 2026-03-24 14:41:46 +08:00
crazywhalecc
590a94a723 Fix cli checks caused php testing fail 2026-03-24 14:41:32 +08:00
crazywhalecc
b625d80dc0 Fix tar command for unix 2026-03-24 13:30:17 +08:00
crazywhalecc
93c099dd31 Add xz 2026-03-24 12:31:45 +08:00
crazywhalecc
fcd0052d12 Add sqlite 2026-03-24 12:31:31 +08:00
crazywhalecc
6c52451c6c Add qdbm 2026-03-24 12:18:06 +08:00
crazywhalecc
175567fd11 Add missing postgresql license 2026-03-24 12:13:42 +08:00
crazywhalecc
bf05af7e16 Add pthreads4w 2026-03-24 12:13:22 +08:00
crazywhalecc
7c3022b7e3 Add postgresql (replace postgresql-win) 2026-03-24 12:07:57 +08:00
crazywhalecc
2a50015c12 Add download options for install-pkg command 2026-03-24 12:07:02 +08:00
crazywhalecc
1f42f1a479 Add libzip 2026-03-24 10:52:13 +08:00
crazywhalecc
41f5948392 Add libyaml 2026-03-23 17:11:47 +08:00
crazywhalecc
6d91f8b2d3 Add patch description for Windows static linking in libsodium 2026-03-23 17:11:37 +08:00
crazywhalecc
141c737380 Add libsodium 2026-03-23 16:50:13 +08:00
Jerry Ma
d35cbd7bf8 Add Windows builders for libaom and brotli (#1072) 2026-03-23 16:21:46 +08:00
crazywhalecc
d076df6b04 Bump version number 2026-03-23 16:21:24 +08:00
crazywhalecc
a99b6bebae Remove freetype useless lib suggestions 2026-03-23 16:08:09 +08:00
crazywhalecc
af97263596 Forward-port #1070 2026-03-22 20:19:31 +08:00
Hendrik Mennen
864678ab46 Merge branch 'main' into feat/windows-libaom-brotli 2026-03-22 13:12:47 +01:00
Hendrik Mennen
c03508a84b Improve zlib Windows library detection for future zlib versions (#1070)
Co-authored-by: Hendrik Mennen <hmennen@gambio.ec1.de>
2026-03-22 20:11:29 +08:00
Hendrik Mennen
963e2a084a Add Windows builders for libaom and brotli libraries
Both libraries are listed in lib.json and used as transitive dependencies
(libaom via libavif, brotli via freetype/curl) but had no Windows builder,
causing builds to fail with "library [X] is in the lib.json list but not
supported to compile".

libaom: Uses builddir instead of build to avoid collision with the
source tree's build/cmake/ directory. Matches the Unix builder's
AOM_TARGET_CPU=generic setting for portability.

brotli: Standard CMake build with shared libs and tools disabled.

Also adds static-libs-windows entry for libaom in lib.json.
2026-03-22 09:07:47 +01:00
crazywhalecc
508cfa67e5 Make openssl build faster 2026-03-21 18:43:05 +08:00
crazywhalecc
08dca4253d Add librabbitmq 2026-03-21 18:42:34 +08:00
crazywhalecc
e4434643ff Add jom to reduce openssl building time 2026-03-21 18:41:57 +08:00
crazywhalecc
adff728999 Add libffi-win 2026-03-21 18:04:15 +08:00
crazywhalecc
9af132d67e Add missing icu license file 2026-03-21 18:03:14 +08:00
crazywhalecc
a950f3d716 Add libaom 2026-03-21 17:54:34 +08:00
crazywhalecc
33f33439d1 Add libavif 2026-03-21 17:54:21 +08:00
crazywhalecc
36177e4948 Add libjpeg 2026-03-21 17:54:07 +08:00
crazywhalecc
801d41efeb Add libwebp 2026-03-21 17:53:49 +08:00
crazywhalecc
43d8c9d9d6 Add icu (replace old icu-static-win) 2026-03-21 12:44:17 +08:00
crazywhalecc
75dd01aa91 Enhance package download logic to handle binary-only packages and improve error messaging for installation failures 2026-03-21 12:43:39 +08:00
crazywhalecc
bf4d227a55 Add error handling for missing vswhere.exe in WindowsUtil 2026-03-21 12:42:47 +08:00
crazywhalecc
520767638f Add gmssl 2026-03-21 11:20:05 +08:00
crazywhalecc
5ff973e446 Add freetype 2026-03-21 11:12:24 +08:00
crazywhalecc
230be2ebe8 Add libpng 2026-03-21 11:12:13 +08:00
crazywhalecc
bd73b4a6dc phpstan 2026-03-21 00:34:31 +08:00
crazywhalecc
327bb8bc0f Add curl 2026-03-21 00:33:27 +08:00
crazywhalecc
deb979416f Add libiconv-win 2026-03-21 00:33:04 +08:00
crazywhalecc
f6e00c67cc Refactor LibraryPackage to skip pkg-config and static-bin checks on Windows 2026-03-21 00:32:02 +08:00
crazywhalecc
7df861696d Add libxml2 2026-03-21 00:31:45 +08:00
crazywhalecc
92861669c2 Add nghttp2 2026-03-21 00:31:30 +08:00
crazywhalecc
893f640469 Add nghttp3 2026-03-21 00:31:16 +08:00
crazywhalecc
eff7037e74 Add ngtcp2, remove suggested libs 2026-03-21 00:31:02 +08:00
crazywhalecc
1213cb578e Refactor WindowsUtil to cache Visual Studio search results and add CMake find modules 2026-03-21 00:30:30 +08:00
crazywhalecc
d1ec473f21 Allow set current working dir 2026-03-21 00:30:15 +08:00
crazywhalecc
19bfb6bc83 Add zstd 2026-03-21 00:29:35 +08:00
crazywhalecc
94c579a453 Add libssh2 2026-03-20 21:48:46 +08:00
crazywhalecc
d7d41f4d89 Add openssl 2026-03-20 21:47:27 +08:00
Marc
4c6b7a3d55 fix libde265 on ancient debian OS (#1064) 2026-03-20 19:48:01 +07:00
Marc
5404926a14 Merge branch 'main' into fix/lide265 2026-03-20 19:47:47 +07:00
Nils Silbernagel
295df19484 Add shared-extensions, frankenphp and zts to build-unix workflow (#1062)
Co-authored-by: crazywhalecc <jesse2061@outlook.com>
2026-03-20 20:37:25 +08:00
Jerry Ma
b970bf8e3a Fix gd build on PHP 8.5 (#1043) 2026-03-20 20:00:42 +08:00
Jerry Ma
54915028d7 Fix zlib produced lib file names from different zlib version (#1066) 2026-03-20 19:35:51 +08:00
crazywhalecc
03cd7e141c Add brotli libs 2026-03-20 18:09:29 +08:00
crazywhalecc
9f3e353699 Add bzip2 2026-03-20 18:04:30 +08:00
crazywhalecc
b21d5716e1 Add onig 2026-03-20 18:04:18 +08:00
crazywhalecc
464ddeb29d Fix file copy operation to handle identical source and destination paths 2026-03-20 18:03:58 +08:00
crazywhalecc
0c389d9069 Add zlib 2026-03-20 18:03:46 +08:00
crazywhalecc
1d2916fa8f Add brotli 2026-03-20 16:16:29 +08:00
crazywhalecc
46132ee1c8 Fix doctor lock path on Windows 2026-03-20 16:16:09 +08:00
crazywhalecc
3c9e868ce1 Add spc-debug script on Windows 2026-03-20 16:08:58 +08:00
crazywhalecc
c5efcc0c93 Fix wrongly using msys2 tar.exe 2026-03-20 16:07:28 +08:00
Jerry Ma
64d692e105 [3.0] Refactor extensions (#1038) 2026-03-20 16:05:35 +08:00
crazywhalecc
dc79ac9c9a Correct doctor fix 2026-03-20 11:32:15 +08:00
crazywhalecc
e9be3a41db Add homebrew llvm version toolchain support 2026-03-20 11:20:42 +08:00
Jerry Ma
00649d816e [3.0] Refactor new extensions (#1051) 2026-03-20 10:54:29 +09:00
crazywhalecc
11376cc6ad Use env and path injection instead of old style 2026-03-20 09:31:43 +08:00
crazywhalecc
c6207d8c7c Fix interactive install-pkg command 2026-03-20 09:31:24 +08:00
crazywhalecc
b0eff0ba6e Add protoc target 2026-03-20 09:31:05 +08:00
crazywhalecc
9d748a6e08 Add rust target 2026-03-20 09:30:52 +08:00
crazywhalecc
b0522205da Add support for package environment variables and path injection 2026-03-20 09:30:34 +08:00
crazywhalecc
beeb0b8721 Handle failure in fetching Zig version index 2026-03-20 09:29:45 +08:00
henderkes
823fe96942 attempt 2026-03-18 23:26:57 +07:00
henderkes
f2fa29809a why is it not failing here? 2026-03-18 18:37:16 +07:00
Marc
463ec546fa Merge branch 'main' into fix/lide265 2026-03-18 15:51:03 +07:00
crazywhalecc
9e2a5ce188 Add target htop 2026-03-18 15:01:06 +08:00
crazywhalecc
0b0ecd17c3 Allow curl building static executable 2026-03-18 15:00:58 +08:00
crazywhalecc
c81146bf18 Add ncursesw 2026-03-18 15:00:44 +08:00
crazywhalecc
c1f2fd49a6 Add ext-imap 2026-03-18 13:30:29 +08:00
henderkes
60b2aea09e fix libde265 on ancient debian OS? 2026-03-18 11:57:27 +07:00
crazywhalecc
1ee8bc7d34 Add ext-swow 2026-03-18 12:36:22 +08:00
crazywhalecc
a24fae7a55 Add ext-swoole 2026-03-18 12:07:39 +08:00
crazywhalecc
b5b917ce32 Fix zig-cc strlcpy missing issue with swoole+openssl 2026-03-18 12:07:19 +08:00
crazywhalecc
b1a59dad79 Make PhpExtensionPackage::getSharedExtensionLoadString public 2026-03-18 12:06:48 +08:00
crazywhalecc
98a618f1cd Add ext-yaml 2026-03-17 15:54:11 +08:00
crazywhalecc
738c61b682 Add ext-zstd 2026-03-17 15:50:12 +08:00
crazywhalecc
83c266a713 Add ext-yac 2026-03-17 15:41:00 +08:00
crazywhalecc
0a60ebad17 Add ext-xz 2026-03-17 15:30:54 +08:00
crazywhalecc
0101e6c52b Add ext-xsl 2026-03-17 15:23:20 +08:00
crazywhalecc
63bee0db13 Add ext-xmlwriter,ext-xmlreader 2026-03-17 15:21:16 +08:00
crazywhalecc
154adc1f48 Add ext-xlswriter 2026-03-17 15:13:59 +08:00
crazywhalecc
5d309ee998 Add ext-zip 2026-03-17 15:13:47 +08:00
crazywhalecc
ca15ccd4d1 Add ext-xhprof 2026-03-17 13:27:37 +08:00
crazywhalecc
20b693d1fa Add ext-xdebug 2026-03-17 13:16:47 +08:00
crazywhalecc
2327f32e41 Add ext-uv 2026-03-17 13:04:19 +08:00
crazywhalecc
22c5403e98 Allow unstable for PECL downloads 2026-03-17 12:57:43 +08:00
crazywhalecc
25bec6b974 Add ext-uuid 2026-03-17 12:30:02 +08:00
crazywhalecc
deef11c86a Add ext-trader 2026-03-17 12:27:14 +08:00
crazywhalecc
bfb6fcd436 Add ext-tokenizer 2026-03-17 11:27:47 +08:00
crazywhalecc
170371abf7 Add ext-tidy 2026-03-17 11:27:16 +08:00
crazywhalecc
02d40d197b Add ext-sysvmsg,ext-sysvsem,ext-sysvshm 2026-03-17 11:25:18 +08:00
crazywhalecc
b89e941ab2 Add ext-ssh2 2026-03-17 11:24:57 +08:00
crazywhalecc
65c3263b25 Add ext-spx 2026-03-16 16:59:27 +08:00
crazywhalecc
d79128cdbf Add ext-sodium 2026-03-16 16:57:51 +08:00
crazywhalecc
ba253ea2a5 Add ext-soap 2026-03-16 16:57:43 +08:00
crazywhalecc
21e2a0194c Add ext-snmp 2026-03-16 16:48:50 +08:00
crazywhalecc
3f812fe5fc Fix filename generation for GitHub tarballs to handle missing tag names 2026-03-16 16:48:26 +08:00
crazywhalecc
1670b61ed7 Add ext-snappy 2026-03-16 16:26:53 +08:00
crazywhalecc
15e7678615 Add missing xml-related patches for windows 2026-03-16 16:17:53 +08:00
crazywhalecc
fe302bf8b9 Add ext-simplexml 2026-03-16 16:17:15 +08:00
crazywhalecc
e30a10f60f Add ext-simdjson, add SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS env var 2026-03-16 16:04:35 +08:00
crazywhalecc
271013f2d6 Add ext-shmop, fix path slashes 2026-03-13 17:02:35 +08:00
crazywhalecc
6ed620683f Add ext-redis 2026-03-13 16:53:28 +08:00
crazywhalecc
935fbbd31a Add ext-rdkafka 2026-03-13 10:14:05 +08:00
crazywhalecc
a288533fc3 Add ext-rar 2026-03-12 22:58:59 +08:00
crazywhalecc
067749ab1b Add ext-protobuf 2026-03-12 22:44:57 +08:00
crazywhalecc
63d28bdc01 Add ext-posix 2026-03-12 22:33:28 +08:00
crazywhalecc
54e301d55c Add ext-sqlsrv,ext-pdo_sqlsrv 2026-03-12 22:32:36 +08:00
crazywhalecc
6af55323b3 Add ext-sqlite3,ext-pdo_sqlite 2026-03-12 22:27:42 +08:00
crazywhalecc
f85f29e628 Add ext-pgsql,ext-pdo_pgsql 2026-03-12 22:22:02 +08:00
crazywhalecc
74865025bd Add ext-pcntl,ext-pdo,ext-pdo_mysql,ext-pdo_odbc 2026-03-12 22:06:42 +08:00
crazywhalecc
7a690fd9a3 Add ext-pcov 2026-03-12 22:06:11 +08:00
crazywhalecc
e9023520de Merge remote-tracking branch 'origin/v3-refactor/new-extensions' into v3-refactor/new-extensions 2026-03-12 21:56:35 +08:00
crazywhalecc
9d65c491e7 Add ext-password-argon2 2026-03-12 21:56:28 +08:00
crazywhalecc
9713b76935 Add patch to modify info.c for release builds to hide configure command 2026-03-12 17:09:59 +08:00
crazywhalecc
cbc8feebfd Add patch for SPC_MICRO_PATCHES and update configure.ac handling 2026-03-12 16:54:01 +08:00
crazywhalecc
32bdacd5a5 Add ext-parallel 2026-03-12 16:04:25 +08:00
crazywhalecc
528469514b Add ext-opentelemetry 2026-03-12 15:38:56 +08:00
crazywhalecc
371a1af572 Add ext-opcache 2026-03-12 15:08:11 +08:00
crazywhalecc
6f372a74a2 Remove check for php_micro.c file existence in SourcePatcher 2026-03-12 15:08:02 +08:00
crazywhalecc
c7f611fe80 Add ext-odbc 2026-03-12 14:33:39 +08:00
crazywhalecc
54f53fd104 Add ext-mysqlnd_parsec 2026-03-12 14:29:05 +08:00
crazywhalecc
91ee94f349 Add ext-mongodb 2026-03-12 14:19:38 +08:00
crazywhalecc
e523fff0ab Add ext-mysqlnd_ed25519 2026-03-11 17:12:27 +08:00
crazywhalecc
13ab3e2b6c Fix transitive extension dependency not enabled bug 2026-03-11 17:10:48 +08:00
crazywhalecc
32bb0aadce Add ext-mysqli,ext-mysqlnd 2026-03-11 16:37:25 +08:00
crazywhalecc
59a8b65f6f Add ext-memcache,ext-msgpack 2026-03-11 16:14:05 +08:00
Marc
4625c6a885 update default php version to 8.5 (#1058) 2026-03-11 15:09:07 +07:00
crazywhalecc
f35f133115 Add ext-memcache 2026-03-11 15:29:00 +08:00
crazywhalecc
cbfeefc808 Add ext-inotify 2026-03-11 15:12:21 +08:00
henderkes
85b0cd8b4b only disable when building ftp static, shared is fine 2026-03-11 13:54:24 +07:00
henderkes
1fcb74ad9b swoole-ftp conflicts with ftp 2026-03-11 13:42:38 +07:00
henderkes
1049a3ce66 curl is always supported now (swoole no longer supports php < 8.1) 2026-03-11 10:32:58 +07:00
henderkes
1b8b53d47f update swoole args for 6.2 2026-03-11 10:19:08 +07:00
henderkes
a232f578a4 test bulk 2026-03-11 10:11:39 +07:00
crazywhalecc
f6a9dac504 Fix grpc build error with RPATH 2026-03-11 11:07:25 +08:00
henderkes
70285cb53b actually update to 8.5 2026-03-11 09:48:50 +07:00
henderkes
a335d050cf cs fix 2026-03-11 09:46:41 +07:00
henderkes
ef4b2997a7 test 2026-03-11 09:45:56 +07:00
henderkes
901da8fa41 remove ldtl from odbc libs private (using built in ltdl) 2026-03-11 09:43:02 +07:00
henderkes
e49a5d7a50 make php 8.5 default 2026-03-11 09:42:39 +07:00
crazywhalecc
0719c45a29 Merge remote-tracking branch 'origin/v3-refactor/new-extensions' into v3-refactor/new-extensions
# Conflicts:
#	config/pkg/ext/builtin-extensions.yml
2026-03-11 09:41:17 +08:00
crazywhalecc
f414bd289c Add ext-maxminddb 2026-03-11 08:18:25 +08:00
crazywhalecc
fa7de0642a Add ext-lz4 2026-03-10 22:47:37 +08:00
crazywhalecc
c5b11f47c3 Add ext-libxml 2026-03-10 22:41:33 +08:00
crazywhalecc
d8dda09fb6 Add ext-ldap 2026-03-10 22:38:34 +08:00
crazywhalecc
f83565b058 Add ext-intl 2026-03-10 22:25:11 +08:00
crazywhalecc
e31aeabf12 Add ext-imagick 2026-03-10 22:19:01 +08:00
crazywhalecc
d7eb33ff1e Forward-port #1057 2026-03-10 22:01:23 +08:00
Jerry Ma
281b958075 Fix grpc build (#1055) 2026-03-10 20:35:51 +09:00
Marc
e31f64864e fix: FrankenPHP build args (#1057) 2026-03-10 18:13:34 +07:00
Kévin Dunglas
92f5b56c74 fix: FrankenPHP build args 2026-03-10 11:57:23 +01:00
crazywhalecc
1400dc649f Add ext-session 2026-03-10 16:59:54 +08:00
crazywhalecc
e73bad9d23 Add ext-igbinary 2026-03-10 16:59:48 +08:00
crazywhalecc
2d906a8145 Add ext-iconv 2026-03-10 16:56:09 +08:00
crazywhalecc
bc26e3d37c Add ext-gmssl 2026-03-10 16:52:36 +08:00
crazywhalecc
e0d2ee91f7 Add ext-gmp 2026-03-10 16:52:29 +08:00
crazywhalecc
465549f97d Forward-port #1056 on v3 2026-03-10 16:41:01 +08:00
Jerry Ma
2350d2d5ca Merge branch 'main' into fix/grpc-build 2026-03-10 14:52:21 +09:00
crazywhalecc
086c855a43 Use custom config.m4 for grpc extension 2026-03-10 13:49:53 +08:00
crazywhalecc
4fa5292913 Use custom config.m4 for grpc extension 2026-03-10 13:49:34 +08:00
crazywhalecc
b89a29d5f3 Add ext-grpc 2026-03-10 13:37:09 +08:00
Marc
9634b8bcda set custom binary name for frankenphp, allow linking against system openssl (fix mssql issues) (#1056) 2026-03-10 11:11:36 +07:00
Marc
5d5a50a33c Update src/SPC/builder/LibraryBase.php
Co-authored-by: Jerry Ma <jesse2061@outlook.com>
2026-03-10 10:57:49 +07:00
henderkes
1edf14e642 set custom binary name for frankenphp 2026-03-10 08:52:15 +07:00
henderkes
2277390a1a fix removeConfigureArgs in UnixAutoconfExecutor.php 2026-03-10 08:49:56 +07:00
henderkes
f93ad27c17 allow using some libs as system provided (work around mssql linking vs system openssl) 2026-03-10 08:47:38 +07:00
henderkes
b690566b39 simplify rm command 2026-03-10 08:43:48 +07:00
henderkes
16e772e1a8 add back in zig workaround as 0.16.x is not released yet 2026-03-10 08:42:17 +07:00
crazywhalecc
ad356b4a23 Fix grpc build 2026-03-09 20:12:14 +08:00
crazywhalecc
404195a38b Add ext-gmssl 2026-03-09 16:30:35 +08:00
crazywhalecc
7856f7e03a Add ext-gmp 2026-03-09 16:30:00 +08:00
crazywhalecc
4a572a1372 Add ext-gettext 2026-03-09 15:59:27 +08:00
crazywhalecc
61d50cd28b Add ext-gd 2026-03-09 15:55:01 +08:00
crazywhalecc
38715bba21 Add ext-fileinfo,ext-filter,ext-ftp 2026-03-09 15:29:38 +08:00
crazywhalecc
8fdfcf8fcd Fix suggested extensions not passing when using --with-suggests 2026-03-09 15:29:12 +08:00
crazywhalecc
659b75cedd Remove redundant dependency for specific virtual target (php-fpm) 2026-03-09 15:18:03 +08:00
crazywhalecc
cf2e1d9819 Add ext-ffi 2026-03-09 15:13:07 +08:00
crazywhalecc
b226887bd2 Add ext-exif 2026-03-09 15:02:23 +08:00
crazywhalecc
552a8a1ea2 Add ext-excimer (closes #1019) 2026-03-09 15:00:06 +08:00
crazywhalecc
a678d908d5 Add ext-event 2026-03-09 14:45:36 +08:00
crazywhalecc
8cc5877f3c Add ext-ev,ext-sockets 2026-03-09 14:35:42 +08:00
crazywhalecc
b185d27ad7 Add ext-ds 2026-03-09 14:30:48 +08:00
Jerry Ma
dc0b3b8cec Merge branch 'v3-refactor/extensions' into v3-refactor/new-extensions 2026-03-09 12:10:57 +09:00
Jerry Ma
705435eccb [3.0] Add check-update command and CheckUpdateInterface for artifacts (#1044) 2026-03-09 12:10:22 +09:00
crazywhalecc
77e129881a Move all interactive input to construct 2026-03-09 11:04:18 +08:00
crazywhalecc
1f768ffc64 Mark transitive PHP extension dependencies of static extensions as static 2026-03-08 22:33:44 +08:00
crazywhalecc
424228d81e Add ext-dom, ext-xml 2026-03-08 22:33:00 +08:00
crazywhalecc
b90356bc1d Enhancement for bin/spc dev:info command 2026-03-08 17:47:09 +08:00
crazywhalecc
247a254af4 Add ext-dio 2026-03-08 17:46:14 +08:00
crazywhalecc
6d2c43d3e5 Add license metadata for ast extension 2026-03-08 16:43:53 +08:00
crazywhalecc
a9e6e4a226 Add dba 2026-03-08 16:32:31 +08:00
crazywhalecc
ad0118718f Update arg-type definition in builtin-extensions.yml to include specific options 2026-03-08 14:02:22 +08:00
crazywhalecc
8f10e0d070 Add before and after build hooks for phar extension to replace file strings 2026-03-08 14:02:15 +08:00
crazywhalecc
0c86d82b98 Update getDistName method to use display-name from config 2026-03-08 14:02:04 +08:00
crazywhalecc
2676875ccd Refactor PKG_CHECK_MODULES replacement and reuse make vars for configure 2026-03-08 14:01:44 +08:00
crazywhalecc
19d6d669c0 Move arg-type def in config 2026-03-08 14:01:29 +08:00
crazywhalecc
88af4a719f Prefer cache extract path in getSourceDir method 2026-03-08 14:00:33 +08:00
crazywhalecc
b0b3220716 Fix zlib configure arg 2026-03-08 14:00:15 +08:00
crazywhalecc
5669642cf3 Merge branch 'main' into v3-refactor/new-extensions
# Conflicts:
#	src/SPC/store/SourcePatcher.php
2026-03-07 21:30:02 +08:00
crazywhalecc
0548aba248 Add ext-curl 2026-03-07 21:20:34 +08:00
crazywhalecc
07fd1bcd03 Patch extension config.m4 files to use PKG_CHECK_MODULES_STATIC 2026-03-07 00:42:49 +08:00
crazywhalecc
780232fa60 Enhance dependency resolution for virtual-target packages 2026-03-07 00:42:34 +08:00
crazywhalecc
fbbed6d5c1 Add ext-ctype 2026-03-06 19:27:22 +08:00
crazywhalecc
fc807ec7c9 Add ext-calendar 2026-03-06 19:24:48 +08:00
crazywhalecc
58c02dfab3 Add ext-bz2 2026-03-06 19:23:08 +08:00
crazywhalecc
5e84fed19a Add ext-brotli 2026-03-06 19:22:59 +08:00
crazywhalecc
d0b6a02432 Add patchBeforeBuild method to modify Makefile CFLAGS and enhance build process 2026-03-06 19:20:55 +08:00
crazywhalecc
368ce75261 Fix configuration retrieval by using the extension's name instead of a formatted version 2026-03-06 19:20:16 +08:00
crazywhalecc
32b7fee8d8 Fix version extraction to fallback on repository name if tag name is absent 2026-03-06 16:32:44 +08:00
Jerry Ma
8c4e3d58a3 Add php-src mirror and use gmp mirror site (#1048) 2026-03-06 15:25:38 +09:00
Marc
8a51d64685 Add condition for ffi patch (#1050) 2026-03-06 12:59:23 +07:00
crazywhalecc
055bc7bc3c Add condition for ffi patch 2026-03-06 13:46:55 +08:00
crazywhalecc
84f6dab882 Add parallel update checking and improve artifact update handling 2026-03-05 11:11:31 +08:00
crazywhalecc
abdaaab6e6 Refactor CheckUpdateResult logic to simplify version comparison 2026-03-05 11:11:02 +08:00
crazywhalecc
5298ee4f97 Use constant back due to config validation problem 2026-03-05 08:21:44 +08:00
crazywhalecc
94fb7a643e Merge remote-tracking branch 'origin/v3-feat/check-update' into v3-feat/check-update 2026-03-05 08:18:00 +08:00
crazywhalecc
715f33ac4d Add log filtering to prevent sensitive data leakage 2026-03-05 08:17:41 +08:00
crazywhalecc
f7277cc012 Improve output formatting for update checks in CheckUpdateCommand 2026-03-05 08:17:13 +08:00
crazywhalecc
00c08e0c0c Use no optional libs for libxml2 2026-03-05 08:11:41 +08:00
crazywhalecc
671ebd2582 Use gmp mirror site 2026-03-04 16:32:49 +08:00
crazywhalecc
12d4009a21 Update PHP release handling to use configurable mirror and improve URL management 2026-03-04 16:32:16 +08:00
crazywhalecc
dc0a80975f Add PECL download type and support for PECL artifacts 2026-03-04 14:23:46 +09:00
crazywhalecc
174ef3dba7 Refactor ReturnCode constants for clarity and consistency 2026-02-28 15:36:04 +08:00
crazywhalecc
4f2ca17bde cs fix 2026-02-28 15:16:31 +08:00
crazywhalecc
029f8efa12 Avoid empty output 2026-02-28 14:55:18 +08:00
crazywhalecc
7cedd45567 Merge remote-tracking branch 'origin/v3-feat/check-update' into v3-feat/check-update 2026-02-28 14:36:04 +08:00
crazywhalecc
28f4a5c523 Add support for custom source check-update callbacks in artifacts 2026-02-28 14:35:48 +08:00
Jerry Ma
6ef5e9e067 Update src/StaticPHP/Artifact/Downloader/Type/CheckUpdateInterface.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-28 14:18:32 +08:00
Jerry Ma
64b0e72908 Update src/StaticPHP/Artifact/Downloader/Type/PIE.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-28 14:17:48 +08:00
Jerry Ma
a7b04d9081 Update src/StaticPHP/Artifact/Downloader/Type/Git.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-28 14:16:57 +08:00
crazywhalecc
0a07f6b27c cs fix 2026-02-28 14:07:05 +08:00
crazywhalecc
550f6cad60 Replace RuntimeException with DownloaderException for Go version retrieval failure 2026-02-28 14:02:32 +08:00
crazywhalecc
40e36982d3 Add custom binary check-update support for artifacts 2026-02-28 13:55:52 +08:00
crazywhalecc
ed5a516004 Implement check-update functionality for artifacts and enhance download result handling 2026-02-28 13:44:23 +08:00
crazywhalecc
2d550a8db4 Add simple output handling to exception classes 2026-02-28 13:43:28 +08:00
crazywhalecc
d316684995 Add optional package support for libaom, libsharpyuv, libjpeg, libxml2, and libpng in Unix build 2026-02-28 10:37:38 +08:00
crazywhalecc
c218aef947 Add doctor cache check and version management to ensure environment validation 2026-02-28 10:32:50 +08:00
crazywhalecc
7623b9e673 Deprecate '--debug' option and update logging level handling 2026-02-28 09:47:51 +08:00
crazywhalecc
fa175963f9 Enable suggested libs by default in build configurations for Unix and Windows 2026-02-27 10:03:25 +08:00
crazywhalecc
8c7d113c2f Apply smoke test control option for frankenphp 2026-02-27 09:59:55 +08:00
crazywhalecc
b3d67b928a Add tryPatchMakefileUnix method to fix //lib path in Makefile for Linux builds 2026-02-27 09:54:40 +08:00
crazywhalecc
f9fe2adb1d Trim quotes from frankenphp app path to ensure valid directory check 2026-02-27 09:52:02 +08:00
crazywhalecc
28c82b811b Add PackageInfoCommand to display package configuration information and support status 2026-02-27 09:50:21 +08:00
crazywhalecc
cfce177070 Add beforeMakeUnix method to patch TSRM.h for musl TLS symbol visibility 2026-02-27 09:42:28 +08:00
crazywhalecc
d6ec0b7809 Remove aarch64 build fix for glibc 2.17 from patchBeforeBuild method in postgresql.php 2026-02-27 09:31:37 +08:00
crazywhalecc
0e80f29e61 Add DumpCapabilitiesCommand to output installable and buildable capabilities of packages 2026-02-27 09:27:19 +08:00
Jerry Ma
da1f348daa Update src/StaticPHP/Package/PhpExtensionPackage.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-27 09:18:28 +08:00
crazywhalecc
e9279940d7 Add DumpStagesCommand to dump package stages and their locations 2026-02-26 16:09:18 +08:00
crazywhalecc
bb257cffd6 Add extension apcu 2026-02-26 15:46:33 +08:00
crazywhalecc
3238c44745 Refactor FrankenPHP build and smoke test processes for Unix 2026-02-26 15:46:18 +08:00
crazywhalecc
a57b48fda6 Add macOS check to patchBeforePHPConfigure for explicit_bzero detection 2026-02-26 15:45:30 +08:00
crazywhalecc
0f012f267b Rename tracker file from .spc-tracker.json to .build.json 2026-02-26 15:45:16 +08:00
crazywhalecc
08595cca73 Add PatchDescription attribute to libacl for Unix FPM_EXTRA_LIBS fix 2026-02-26 15:45:06 +08:00
crazywhalecc
28bbdf5401 Merge branch 'main' into v3-refactor/extensions 2026-02-26 10:02:31 +08:00
crazywhalecc
a357510109 Add frankenphp building message for console output 2026-02-26 10:02:16 +08:00
Marc
7d7902e0e9 Update build flags for FrankenPHP in UnixBuilderBase (#1042) 2026-02-24 06:08:14 +07:00
Kévin Dunglas
2a8fa7d155 Update build flags for FrankenPHP in UnixBuilderBase 2026-02-23 16:29:43 +01:00
crazywhalecc
d495455902 Remove motd for lint-config command 2026-02-23 10:32:08 +08:00
crazywhalecc
471df00ea3 Use StaticPHP instead of static-php-cli 2026-02-19 23:07:17 +08:00
crazywhalecc
bc7ac812b1 phpstan, package display message enhance 2026-02-19 23:02:09 +08:00
crazywhalecc
bbab685247 Refactor exception handler to v3, use standard shell exitcode 2026-02-19 23:02:09 +08:00
crazywhalecc
ee5aabbe34 Add CMakeConfigureLog.yaml lookup 2026-02-19 23:02:09 +08:00
crazywhalecc
059f785e0d Remove redundant catch for downloader 2026-02-19 23:02:09 +08:00
crazywhalecc
2fdb0b406f Correct bootstrap 2026-02-19 23:02:09 +08:00
crazywhalecc
f1e9dd8de8 Fix box compile config for v3 2026-02-19 23:02:09 +08:00
crazywhalecc
1095807e5b Use yml instead 2026-02-19 23:02:09 +08:00
crazywhalecc
753fdd725e Add registry availability check 2026-02-19 23:02:09 +08:00
crazywhalecc
0be4e859f3 Avoid using glob in phar mode 2026-02-19 23:02:09 +08:00
crazywhalecc
7a3f10bd77 Make downloader configurable 2026-02-19 23:02:09 +08:00
crazywhalecc
508f635f01 Add permission copying to ArtifactExtractor 2026-02-19 23:02:09 +08:00
crazywhalecc
18434b68f6 Add frankenphp SAPI build support 2026-02-19 23:02:09 +08:00
Marc
67ef8f6608 fix redownloading go-xcaddy every time, version 2.8.3 (#1034) 2026-02-17 22:36:27 +07:00
henderkes
d83a597689 unquote the string in case a shell script passes it stupidly 2026-02-17 21:49:30 +07:00
henderkes
5623fed37f fix redownloading go-xcaddy every time 2026-02-17 21:05:18 +07:00
Marc
38140d115f libavif needs at least one encoder to work (#1033) 2026-02-17 19:59:46 +07:00
henderkes
98117c3a04 remove pre built 2026-02-17 19:58:03 +07:00
Marc
b01d3ce12c Merge branch 'main' into feat/avif-dec 2026-02-17 19:18:38 +07:00
henderkes
608c915e14 should depend on it instead 2026-02-17 19:14:29 +07:00
henderkes
c680299654 libavif needs at least one encoder to work 2026-02-17 19:12:19 +07:00
Marc
794ab16b32 add input with-suggested-libs for build command (#1032) 2026-02-16 18:38:35 +07:00
tricker
661723c99a change logs name
Co-authored-by: Marc <m@pyc.ac>
2026-02-16 12:26:49 +01:00
Yoram
d9834d05c6 upload debug logs on 'build php' failures 2026-02-16 11:35:42 +01:00
Yoram
9a53ef3498 add input with-suggested-libs for build command 2026-02-13 14:35:01 +01:00
Marc
f680731f9d fix: Postgres build with ancient libc (#1029) 2026-02-11 17:42:36 +01:00
Jerry Ma
0fe1442f7e Bump version from 2.8.0 to 2.8.2 2026-02-12 00:02:38 +08:00
Jerry Ma
1e4780397b Update test-extensions.php for PHP versions and extensions
Commented out older PHP versions and Windows 2025 in the test configuration. Updated the extensions to test for Linux and Darwin.
2026-02-11 23:32:19 +08:00
Kévin Dunglas
6b67cb90fc fix: Postgres build with ancient libc 2026-02-11 16:24:13 +01:00
Jerry Ma
82bf317911 Refactor Linux and macOS tool checks for improved error handling and command execution (#1025) 2026-02-06 21:17:19 +08:00
Jerry Ma
041b08f10f V3 fix/phpunit (#1024) 2026-02-06 17:02:36 +08:00
Jerry Ma
7c3ac484b3 v3-refactor: Implement v2 libs (#1021)
All the library build scripts for *nix has refactored to v3 now
2026-02-06 16:42:00 +08:00
crazywhalecc
5c7ab48718 Support define php extension arg-type in config 2026-02-06 16:38:03 +08:00
crazywhalecc
478b85879f Chore 2026-02-06 16:34:51 +08:00
crazywhalecc
cf5a946de1 Add extension bcmath,openssl,zlib 2026-02-06 16:33:50 +08:00
crazywhalecc
95f34fbbc3 Add extension amqp 2026-02-06 16:33:34 +08:00
crazywhalecc
d8d9f389ba Refactor patching logic for Alpine Linux and macOS in attr.php 2026-02-06 16:33:13 +08:00
crazywhalecc
c72a2b6228 Refactor nasm,php-sdk-binary-tools,strawberry-perl,vswhere 2026-02-06 14:46:57 +08:00
crazywhalecc
368461d1ad phpstan fix 2026-02-06 14:27:56 +08:00
crazywhalecc
ca9dc25f9a Add watcher 2026-02-06 14:26:24 +08:00
crazywhalecc
b6d8bf5639 Add unixodbc 2026-02-06 14:20:41 +08:00
crazywhalecc
a5f8402703 Add tidy 2026-02-06 14:16:20 +08:00
crazywhalecc
d163c3dff6 Add sqlite 2026-02-06 14:12:06 +08:00
crazywhalecc
fd40b92041 Add snappy 2026-02-06 14:07:04 +08:00
crazywhalecc
6be4da26aa Add readline 2026-02-06 14:03:42 +08:00
crazywhalecc
425010fbb0 Add re2c 2026-02-06 13:59:58 +08:00
crazywhalecc
67bea25214 Add qdbm 2026-02-06 13:55:03 +08:00
crazywhalecc
aad710ed3e Add postgresql 2026-02-06 13:40:18 +08:00
crazywhalecc
9912b213f0 Add net-snmp 2026-02-06 13:29:25 +08:00
crazywhalecc
2874336f0e Add mimalloc 2026-02-06 13:05:37 +08:00
crazywhalecc
b42601d288 Add libyaml 2026-02-06 13:02:24 +08:00
crazywhalecc
017fabd556 Add libxslt 2026-02-06 12:46:26 +08:00
crazywhalecc
0c386e967a Allow shell completion for build:libs command 2026-02-06 12:37:02 +08:00
crazywhalecc
d6af728e79 Add libuv 2026-02-06 12:32:04 +08:00
crazywhalecc
fa1b71bebf Add libuuid 2026-02-06 12:26:35 +08:00
crazywhalecc
127697b814 Add liburing 2026-02-06 11:54:15 +08:00
crazywhalecc
4cfd8f4ca3 Add librdkafka 2026-02-06 11:45:14 +08:00
crazywhalecc
f2d389d89a Add librabbitmq 2026-02-06 11:28:16 +08:00
crazywhalecc
bd11533865 Add libmemcached 2026-02-06 11:25:19 +08:00
crazywhalecc
e9a411cc66 Add libmaxminddb 2026-02-06 11:21:03 +08:00
crazywhalecc
272338775e Add liblz4 2026-02-06 11:17:37 +08:00
crazywhalecc
a832cc2114 Add libffi 2026-02-06 11:08:16 +08:00
crazywhalecc
880bb8799b Add libevent and postinstall action adder for library package 2026-02-06 10:55:59 +08:00
crazywhalecc
d999bfcd11 Add libavif 2026-02-06 10:25:43 +08:00
crazywhalecc
fba2676d80 Add lint-config command to check and sort configuration files 2026-02-06 10:17:58 +08:00
crazywhalecc
39a207076e Add libargon2 2026-02-06 10:11:24 +08:00
crazywhalecc
3cfab10f85 Add libacl 2026-02-06 10:05:35 +08:00
crazywhalecc
1eec88fd6c Add reset command 2026-02-06 09:59:29 +08:00
crazywhalecc
8f798c9006 Add imap and BuildRootTracker 2026-02-06 09:48:51 +08:00
crazywhalecc
7ae16e5be8 Add imagemagick,jbig,lerc,libaom,libde265,libheif,libjxl,libtiff,libwebp,libzip 2026-02-05 20:59:23 +08:00
crazywhalecc
807b90b182 Fix incorrect variable name for working directory in submodule update command 2026-02-05 20:56:50 +08:00
crazywhalecc
a07265787b Update license file path for bzip2 in configuration 2026-02-05 20:56:34 +08:00
crazywhalecc
a75060e5f6 Update exit code in ArtifactDownloader to reflect termination signal 2026-02-05 20:56:25 +08:00
crazywhalecc
97634b009f Forward-port #1006 changes 2026-02-05 19:21:13 +08:00
crazywhalecc
8fc2da9acf Use OS release definition for openssl 2026-02-05 19:19:26 +08:00
crazywhalecc
b3bbe0a751 Add libjpeg,libpng 2026-02-05 19:19:09 +08:00
crazywhalecc
0d32b7bfdb Refactor lib packing to v3 postinstall action 2026-02-05 16:42:49 +08:00
crazywhalecc
81ce777bf2 phpstan fix 2026-02-05 16:30:58 +08:00
crazywhalecc
9f2132c001 Add pack lib command 2026-02-05 16:11:28 +08:00
crazywhalecc
2a4959d973 Chore 2026-02-05 16:11:16 +08:00
crazywhalecc
4d4b1a334f Add ext-readline,freetype,gmssl,grpc,icu 2026-02-05 16:10:16 +08:00
crazywhalecc
6bd3646a02 Merge branch 'main' into v3-refactor/libs 2026-02-05 10:04:24 +08:00
crazywhalecc
b9af9ba056 Chore 2026-02-04 16:25:34 +08:00
crazywhalecc
16f94466fd Add artifact name suggestions for download and install commands 2026-02-04 16:25:23 +08:00
crazywhalecc
3fa2d69813 Add ext-mbstring,ext-mbregex,onig 2026-02-04 16:24:57 +08:00
crazywhalecc
0652d4aa03 Just in case source dir have not been created 2026-02-04 15:31:05 +08:00
crazywhalecc
8f44b07a12 Merge remote-tracking branch 'origin/v3-refactor/libs' into v3-refactor/libs 2026-02-04 15:28:36 +08:00
crazywhalecc
e9c27dee1f Add go-xcaddy,musl-toolchain,php,upx, and also glfw linux support 2026-02-04 15:28:10 +08:00
crazywhalecc
0afa1dd80c Use new brand name 2026-02-04 15:15:20 +08:00
crazywhalecc
e2011e1c18 Verbose message 2026-02-04 15:14:57 +08:00
crazywhalecc
08d20205a7 Allow all artifact configs 2026-02-04 15:14:44 +08:00
crazywhalecc
c40eaeef5d Fix custom artifact binary download is-installed check 2026-02-04 15:14:30 +08:00
crazywhalecc
b5c14d6f26 Fix golang download website hash match pattern 2026-02-04 15:12:19 +08:00
crazywhalecc
a02f287d97 Fix macOS wrong patch file directory 2026-02-03 20:23:59 +08:00
crazywhalecc
0d4cde79fa Add download options for build:libs command 2026-02-03 20:23:32 +08:00
crazywhalecc
274098b3a6 Merge remote-tracking branch 'origin/v3-refactor/libs' into v3-refactor/libs
# Conflicts:
#	config/artifact.yml
#	config/pkg.lib.yml
#	spc.registry.json
2026-02-03 19:14:53 +08:00
Jerry Ma
b89ff3c083 Add com_dotnet extension (#1023) 2026-02-03 19:08:19 +08:00
crazywhalecc
38f742156d Use zig toolchain by default, lint files 2026-02-03 14:01:41 +08:00
crazywhalecc
6fdbf629dc Fix selective artifact installation detect 2026-02-03 14:00:21 +08:00
crazywhalecc
7041e060f2 Add curl 2026-02-03 13:02:43 +08:00
crazywhalecc
103b5b3585 Upgrade phpstan to v2 2026-02-03 11:22:32 +08:00
crazywhalecc
c536fedff7 Add krb5 and lint configs 2026-02-03 10:59:56 +08:00
crazywhalecc
09ddd2fdd8 Add methods to retrieve package sub-dependencies and configuration 2026-02-03 10:59:37 +08:00
crazywhalecc
a2409d9c0f Add getSourceRoot for artifacts 2026-02-03 10:59:16 +08:00
crazywhalecc
6688819605 Add libedit 2026-02-03 10:17:13 +08:00
crazywhalecc
2e8f6bbb31 Add idn2 2026-02-03 10:10:10 +08:00
crazywhalecc
e4d6723b01 Add gettext 2026-02-03 10:05:39 +08:00
crazywhalecc
e732543bd7 Fix wrong debug message show 2026-02-03 10:05:28 +08:00
crazywhalecc
fddcdb8796 Add filelist downloader debug message 2026-02-03 10:05:11 +08:00
crazywhalecc
3492992b56 Add ncurses 2026-02-03 09:42:53 +08:00
crazywhalecc
a6c79e30a8 Add dump license files after installing 2026-02-02 16:53:28 +08:00
crazywhalecc
19e11caa83 Add ldap,libcares,libsodium,libunistring, lint all configs 2026-02-02 16:53:04 +08:00
crazywhalecc
6ee8dc7994 Add zstd,libcares 2026-02-02 16:15:36 +08:00
crazywhalecc
3d102363c4 Add PatchBeforeBuild attribute 2026-02-02 16:15:25 +08:00
crazywhalecc
82ab14165e Add nghttp2, nghttp3, ngtcp2 2026-02-02 15:56:12 +08:00
crazywhalecc
1586825b5b Add builder options for build:libs command 2026-02-02 15:55:41 +08:00
crazywhalecc
23db10d3cd Add libiconv,libssh2,libxml2,xz 2026-02-02 15:35:59 +08:00
crazywhalecc
5a8341203b Remove sort config command 2026-02-02 14:14:19 +08:00
crazywhalecc
f437efebb7 Add dev:lint-config to replace sort-config command 2026-02-02 14:14:01 +08:00
crazywhalecc
f4a29c4830 Add dev:lint-config to replace sort-config command 2026-02-02 14:13:05 +08:00
crazywhalecc
455d42d162 Separate package config 2026-02-02 13:32:35 +08:00
crazywhalecc
f232588dbe Merge remote-tracking branch 'origin/v3-refactor/libs' into v3-refactor/libs 2026-02-02 09:59:17 +08:00
crazywhalecc
a414c65f37 Forward-port #1022 spc target env var 2026-02-02 09:59:10 +08:00
crazywhalecc
7a262feb35 Merge branch 'refs/heads/main' into v3-refactor/libs 2026-02-02 09:35:26 +08:00
Marc
0cfa2036f0 fix spx shared libadd (#1022) 2026-01-30 20:23:18 +01:00
henderkes
c5882c1f8e fix gettext v1.0 release 2026-01-30 19:41:39 +01:00
henderkes
4531c9fe57 add option to allow linking musl dynamically on alpine 2026-01-27 00:57:58 +01:00
crazywhalecc
51415fb6bf Use shorter summary json file name 2026-01-26 00:50:53 +08:00
crazywhalecc
3a575f0bf7 Use yml instead of yaml (sync with craft) 2026-01-26 00:50:39 +08:00
crazywhalecc
ccd948e58a Add openssl lib support 2026-01-26 00:46:42 +08:00
crazywhalecc
a709221223 Add skip helper function for calling events 2026-01-26 00:43:57 +08:00
henderkes
223dd10ac6 fix spx shared libadd 2026-01-24 20:26:19 +01:00
crazywhalecc
c27ed8b0b4 Implement fastlz, zlib (unix) 2026-01-22 16:50:31 +08:00
crazywhalecc
22fc7030f6 Implement attr, brotli, bzip2 build for unix 2026-01-22 16:05:21 +08:00
crazywhalecc
7b725bb4da Add LicenseDumper component 2026-01-22 16:04:48 +08:00
crazywhalecc
ae748757d1 Fix config yaml support 2026-01-22 16:03:06 +08:00
crazywhalecc
1865762f80 Fix config yaml support 2026-01-22 16:03:01 +08:00
Jerry Ma
75cfd7e4ed 3.0 Enhancement 2026-01-22 09:35:08 +08:00
crazywhalecc
a0cab24e56 Remove skeleton command 2026-01-22 09:32:22 +08:00
crazywhalecc
2c22bf25ea Refactor getOSRelease method for improved readability and efficiency 2026-01-20 16:56:46 +08:00
crazywhalecc
cfb8cc9fc5 Merge branch 'main' into v3-feat/skeleton
# Conflicts:
#	composer.lock
#	config/env.ini
#	src/SPC/ConsoleApplication.php
2026-01-20 15:25:43 +08:00
Marc
1c28f0f455 bunch of fixes/changes to make packages build (#1006) 2026-01-19 12:46:24 +01:00
henderkes
b3c450291a up version 2026-01-19 12:00:06 +01:00
crazywhalecc
372760e469 Update patch point docs 2026-01-19 18:56:28 +08:00
henderkes
6cf4c40cd2 Merge remote-tracking branch 'origin/main' into henderkes-patch-1 2026-01-19 11:22:03 +01:00
henderkes
af75ffaf24 suggestions, change openssldir 2026-01-19 10:22:33 +01:00
Marc
ae0217b3a1 add excimer extension (#1018) 2026-01-19 09:25:30 +01:00
henderkes
1e2b4017ac test excimer 2026-01-17 11:28:47 +01:00
henderkes
19f941797e zig now supports -Wl,-exported_symbols_list 2026-01-17 11:28:05 +01:00
Marc
0b863cbc70 Merge branch 'main' into feat/excimer 2026-01-17 10:53:35 +01:00
henderkes
b09337de09 add excimer extension 2026-01-17 10:51:21 +01:00
henderkes
d902e70b4d fix arm64 builds 2026-01-16 12:28:41 +01:00
Jerry Ma
cd2dc5bce4 Fix nghttp2 and curl build configurations for static linking (#1014) 2026-01-13 16:51:57 +08:00
henderkes
34910d18e9 add patch point for shared ext build 2026-01-04 02:31:41 +01:00
henderkes
3a17cec521 deploy extensions with -release flag too 2026-01-03 19:15:57 +01:00
henderkes
94644d374f fix 2026-01-03 19:12:16 +01:00
henderkes
f8b0c2c980 add release thing to extension build too 2026-01-03 19:08:14 +01:00
henderkes
6bbb3c969c remove -release handling functionality 2026-01-03 17:03:43 +01:00
henderkes
76025b95c1 missing space 2026-01-03 16:46:14 +01:00
henderkes
1be353fd13 more concise message 2026-01-03 16:45:55 +01:00
henderkes
54001ab868 simplify logic a bit 2026-01-03 16:33:40 +01:00
henderkes
890ff475f1 our memcache patch prevents shared building 2026-01-03 14:09:16 +01:00
henderkes
559a2909a9 use little trick to order libargon2 before libsodium 2026-01-02 23:21:29 +01:00
henderkes
fff2484529 postgresql doesn't build under c23 2026-01-02 22:52:03 +01:00
henderkes
d1b194999d use OPENSSL_CONF directory for openssl default configuration 2026-01-02 21:13:22 +01:00
henderkes
64f7a3553e don't need it anymore 2026-01-01 12:33:55 +01:00
henderkes
a06cc32491 pin libpng to released tags, not git 2025-12-30 11:58:57 +01:00
henderkes
022fdb2fc5 fix no-strip 2025-12-29 23:58:54 +01:00
henderkes
7688a55656 don't get zig master branch 2025-12-29 22:16:53 +01:00
henderkes
08388c0b15 force enable tailcall vm with zig 2025-12-29 22:12:25 +01:00
henderkes
e7a88f1df7 enable fat for gmp when next version releases 2025-12-29 21:15:53 +01:00
henderkes
2f3122627e make grpc php 8.5 compatible 2025-12-28 12:44:24 +01:00
henderkes
93a35908de factor grpc extension out to ext-grpc, keep library for now, even though unused 2025-12-28 12:11:56 +01:00
henderkes
5ef4623051 grpc will fail for php 8.5, it's not updated yet 2025-12-27 23:05:35 +01:00
henderkes
e952f1c76a we don't even need to build grpc library for grpc extension... 2025-12-27 22:36:24 +01:00
henderkes
09b89a30f9 WIP: use system libraries for grpc without building our own grpc lib 2025-12-27 22:20:02 +01:00
henderkes
9a681a9fa6 add mariadb mysqlnd plugins 2025-12-27 21:22:10 +01:00
Jerry Ma
8650ce4f8f Add MACOSX_DEPLOYMENT_TARGET to env.ini (#1009) 2025-12-26 17:15:45 +08:00
crazywhalecc
f7ca621efe Test 2025-12-26 15:03:54 +08:00
henderkes
6b5200002e fix downloader selecting drafts 2025-12-20 23:29:25 +01:00
henderkes
53f7cdefe0 fix swoole compilation with php 8.5.1 2025-12-18 20:12:01 +01:00
henderkes
e1a14bbb9f fix implicit include 2025-12-18 17:39:05 +01:00
henderkes
9e051c8c80 fix: check for link first before checking for is_dir 2025-12-18 17:32:02 +01:00
henderkes
e677be74d7 remove 2025-12-18 17:32:02 +01:00
henderkes
037d224fd7 why does phpstan think this is necessary? 2025-12-18 17:32:02 +01:00
henderkes
ce44e00bd4 @crazywhalecc how to use patch points to delete source dirs? 2025-12-18 17:32:01 +01:00
henderkes
0247458853 we were installing to wrong dir if source name != lib name 2025-12-18 17:32:01 +01:00
henderkes
656a58c3fa remove source dir after successful build in CI environment 2025-12-18 17:32:01 +01:00
Jerry Ma
9fdfef5057 macOS don't need to disable avx2 explicitly (#1007) 2025-12-18 21:21:47 +08:00
crazywhalecc
dd5762fbd3 Add lib skeleton command and sort config, spc_mode suuport, etc... 2025-12-18 15:43:58 +08:00
crazywhalecc
1707c679e8 Sort 2025-12-18 15:32:50 +08:00
Marc
18c5ccfe9d the libwebp 1.6.0 bug affects centos 7 too (#1004) 2025-12-16 09:33:20 +01:00
henderkes
d064e1353c the libwebp 1.6.0 bug affects centos 7 too 2025-12-15 18:50:20 +01:00
crazywhalecc
acd0e2b23a Prepare for skeleton 2025-12-15 17:00:20 +08:00
Jerry Ma
c1c31a730b V3 feat/win (#999)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-11 16:09:50 +08:00
crazywhalecc
910f10a1dd Typo 2025-12-11 16:04:29 +08:00
crazywhalecc
fefcbf4029 Allow automatically get latest gRPC source (#909) 2025-12-11 15:51:32 +08:00
crazywhalecc
88d135a4e5 Allow interrupt on Windows 2025-12-11 15:50:39 +08:00
crazywhalecc
f8952da2a3 Update captainhook.json to cross-platform friendly 2025-12-11 14:54:30 +08:00
crazywhalecc
63c7aa8d38 Update captainhook.json to cross-platform friendly 2025-12-11 14:53:16 +08:00
crazywhalecc
355da340b4 Merge remote-tracking branch 'origin/v3-feat/win' into v3-feat/win 2025-12-11 14:53:03 +08:00
Jerry Ma
a4fd618a10 Update src/StaticPHP/Artifact/Artifact.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-11 14:49:16 +08:00
Jerry Ma
9a91aecb28 Update src/Package/Target/php/windows.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-11 14:47:44 +08:00
crazywhalecc
8bf2f42596 Merge remote-tracking branch 'origin/v3-feat/win' into v3-feat/win 2025-12-11 14:47:31 +08:00
Jerry Ma
4e841cfc67 Update src/Package/Target/php/windows.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-11 14:47:14 +08:00
crazywhalecc
da8b7c2bc4 Use the real build target to display 2025-12-11 14:45:56 +08:00
crazywhalecc
c4cec15c18 Use container instead of passing 2025-12-11 14:45:35 +08:00
crazywhalecc
e3f9894331 Apply copilot's suggestion 2025-12-11 14:43:42 +08:00
crazywhalecc
6d292b4c54 Add WindowsCMakeExecutor 2025-12-11 14:24:59 +08:00
crazywhalecc
f6b47ad810 Separate unix and windows build for php 2025-12-11 13:50:36 +08:00
crazywhalecc
7c8b40a49a Add windows php cli builds, support micro patches 2025-12-11 13:49:32 +08:00
crazywhalecc
48fbeab7e4 Add log for interactive term 2025-12-11 13:48:01 +08:00
crazywhalecc
eb0a36e379 Rename 2025-12-11 13:47:49 +08:00
crazywhalecc
4bbe56dd9f Fix windows extracting with curl typo, ignore traits in package 2025-12-11 13:47:32 +08:00
crazywhalecc
fe0b983f6c Fix debug mode and verbosity relation 2025-12-11 13:46:15 +08:00
crazywhalecc
2080407283 Enhance Windows support by updating artifact configuration and improving extraction logic 2025-12-11 11:35:12 +08:00
Jerry Ma
3c89ce6c7f Update version to 2.7.10 (#997) 2025-12-10 17:14:27 +08:00
Marc
07ea1e2887 update libwebp and libxml2 (#982) 2025-12-10 10:01:24 +01:00
Jerry Ma
f0b5e4f59e Fix typo in ncurses.php enable-symlinks option (#994) 2025-12-10 15:43:24 +08:00
Marc
a54021bf19 Apply suggestion from @henderkes 2025-12-10 08:42:28 +01:00
crazywhalecc
dc05ad23c9 Update captain hook for windows 2025-12-10 13:41:36 +08:00
crazywhalecc
458af6ac78 Add build function check for current OS and update validation logic 2025-12-10 13:38:25 +08:00
Jerry Ma
66d3af518b Add early validation for package build and installation requirements (#996) 2025-12-10 13:18:28 +08:00
crazywhalecc
2901d32ba7 Update ApplicationContext and InteractiveTerm to handle null outputs gracefully 2025-12-10 13:17:15 +08:00
crazywhalecc
794d92c9d8 Add early validation for package build and installation requirements 2025-12-10 12:54:04 +08:00
Jerry Ma
97e337cea2 Refactor test structure and update paths for improved organization (#995) 2025-12-10 11:28:08 +08:00
henderkes
dce63d3c87 we need extensions to explicitly tell which c std they need 2025-12-06 11:18:10 +01:00
henderkes
47ab5d7584 use c17 for extensions as well? 2025-12-05 13:57:28 +01:00
henderkes
b2182b4fe1 use source extract hook for pdo_sqlsrv 2025-12-05 12:20:14 +01:00
henderkes
1d5aec037b c17 instead 2025-12-05 12:14:57 +01:00
henderkes
6b5f702719 ncurses can't build with std=c23 (default with gcc 15) 2025-12-05 11:43:51 +01:00
henderkes
7bdcda1d62 gmp can't build with std=c23 (default with gcc 15) 2025-12-05 11:37:35 +01:00
henderkes
66840a8eed update xdebug to use pie sources 2025-12-05 09:15:22 +01:00
henderkes
98773ee5a6 zig toolchain can always use libc 2025-12-03 15:02:14 +01:00
henderkes
719d818fd1 we need to check for structure of pdo_sqlsrv extension 2025-12-02 21:34:32 +01:00
henderkes
b8444070ee update go-xcaddy version automatically 2025-12-01 20:41:58 +01:00
henderkes
5b4f4f8e55 maybe? 2025-12-01 19:55:51 +01:00
henderkes
22d263c0a8 maybe explicit mavx2?! 2025-12-01 19:27:44 +01:00
henderkes
150d866c15 revert turning off sse for libwebp, need to check why debian fails building 2025-12-01 19:12:43 +01:00
henderkes
c051a48d56 don't add -l:libstdc++.a if we're not actually using gcc/clang 2025-12-01 17:28:59 +01:00
henderkes
b965ffcd82 don't build extra programs 2025-12-01 17:16:59 +01:00
henderkes
7f863d182f don't remove dir, just don't build tests 2025-12-01 17:10:56 +01:00
henderkes
d1041c57dc remove openssl source/test dir (4.1gb?!) 2025-12-01 17:05:50 +01:00
henderkes
14b822a185 don't build avx2 if we don't have it 2025-12-01 16:55:52 +01:00
Marc
7204d277b4 Update PHP extensions for Linux and Darwin 2025-12-01 11:39:56 +01:00
Marc
5a0fd40dc4 update libwebp and libxml2 2025-12-01 09:55:46 +01:00
486 changed files with 19293 additions and 3306 deletions

View File

@@ -29,6 +29,9 @@ on:
description: Extensions to build (comma separated)
required: true
type: string
shared-extensions:
description: Shared extensions to build (optional, comma separated)
type: string
extra-libs:
description: Extra libraries to build (optional, comma separated)
type: string
@@ -42,10 +45,22 @@ on:
build-fpm:
description: Build fpm binary
type: boolean
build-frankenphp:
description: Build frankenphp binary (requires ZTS)
type: boolean
default: false
enable-zts:
description: Enable ZTS
type: boolean
default: false
prefer-pre-built:
description: Prefer pre-built binaries (reduce build time)
type: boolean
default: true
with-suggested-libs:
description: Build with suggested libs
type: boolean
default: true
debug:
description: Show full build logs
type: boolean
@@ -69,6 +84,9 @@ on:
description: Extensions to build (comma separated)
required: true
type: string
shared-extensions:
description: Shared extensions to build (optional, comma separated)
type: string
extra-libs:
description: Extra libraries to build (optional, comma separated)
type: string
@@ -82,10 +100,22 @@ on:
build-fpm:
description: Build fpm binary
type: boolean
build-frankenphp:
description: Build frankenphp binary (requires ZTS)
type: boolean
default: false
enable-zts:
description: Enable ZTS
type: boolean
default: false
prefer-pre-built:
description: Prefer pre-built binaries (reduce build time)
type: boolean
default: true
with-suggested-libs:
description: Include suggested libs
type: boolean
default: false
debug:
description: Show full build logs
type: boolean
@@ -144,8 +174,19 @@ jobs:
RUNS_ON="macos-15"
;;
esac
DOWN_CMD="$DOWN_CMD --with-php=${{ inputs.php-version }} --for-extensions=${{ inputs.extensions }} --ignore-cache-sources=php-src"
BUILD_CMD="$BUILD_CMD ${{ inputs.extensions }}"
STATIC_EXTS="${{ inputs.extensions }}"
SHARED_EXTS="${{ inputs['shared-extensions'] }}"
BUILD_FRANKENPHP="${{ inputs['build-frankenphp'] }}"
ENABLE_ZTS="${{ inputs['enable-zts'] }}"
ALL_EXTS="$STATIC_EXTS"
if [ -n "$SHARED_EXTS" ]; then
ALL_EXTS="$ALL_EXTS,$SHARED_EXTS"
fi
DOWN_CMD="$DOWN_CMD --with-php=${{ inputs.php-version }} --for-extensions=$ALL_EXTS --ignore-cache-sources=php-src"
BUILD_CMD="$BUILD_CMD $STATIC_EXTS"
if [ -n "$SHARED_EXTS" ]; then
BUILD_CMD="$BUILD_CMD --build-shared=$SHARED_EXTS"
fi
if [ -n "${{ inputs.extra-libs }}" ]; then
DOWN_CMD="$DOWN_CMD --for-libs=${{ inputs.extra-libs }}"
BUILD_CMD="$BUILD_CMD --with-libs=${{ inputs.extra-libs }}"
@@ -157,6 +198,9 @@ jobs:
if [ ${{ inputs.prefer-pre-built }} == true ]; then
DOWN_CMD="$DOWN_CMD --prefer-pre-built"
fi
if [ ${{ inputs.with-suggested-libs }} == true ]; then
BUILD_CMD="$BUILD_CMD --with-suggested-libs"
fi
if [ ${{ inputs.build-cli }} == true ]; then
BUILD_CMD="$BUILD_CMD --build-cli"
fi
@@ -166,6 +210,12 @@ jobs:
if [ ${{ inputs.build-fpm }} == true ]; then
BUILD_CMD="$BUILD_CMD --build-fpm"
fi
if [ "$BUILD_FRANKENPHP" = "true" ]; then
BUILD_CMD="$BUILD_CMD --build-frankenphp"
fi
if [ "$ENABLE_ZTS" = "true" ]; then
BUILD_CMD="$BUILD_CMD --enable-zts"
fi
echo 'download='"$DOWN_CMD" >> "$GITHUB_OUTPUT"
echo 'build='"$BUILD_CMD" >> "$GITHUB_OUTPUT"
echo 'run='"$RUNS_ON" >> "$GITHUB_OUTPUT"
@@ -188,6 +238,27 @@ jobs:
env:
phpts: nts
- if: ${{ inputs['build-frankenphp'] == true }}
name: "Install go-xcaddy for FrankenPHP"
run: |
case "${{ inputs.os }}" in
linux-x86_64|linux-aarch64)
./bin/spc-alpine-docker install-pkg go-xcaddy
;;
linux-x86_64-glibc|linux-aarch64-glibc)
./bin/spc-gnu-docker install-pkg go-xcaddy
;;
macos-x86_64|macos-aarch64)
composer update --no-dev --classmap-authoritative
./bin/spc doctor --auto-fix
./bin/spc install-pkg go-xcaddy
;;
*)
echo "Unsupported OS for go-xcaddy install: ${{ inputs.os }}"
exit 1
;;
esac
# Cache downloaded source
- id: cache-download
uses: actions/cache@v4
@@ -202,6 +273,14 @@ jobs:
# if: ${{ failure() }}
# uses: mxschmitt/action-tmate@v3
# Upload debug logs
- if: ${{ inputs.debug && failure() }}
name: "Upload build logs on failure"
uses: actions/upload-artifact@v4
with:
name: spc-logs-${{ inputs.php-version }}-${{ inputs.os }}
path: log/*.log
# Upload cli executable
- if: ${{ inputs.build-cli == true }}
name: "Upload PHP cli SAPI"
@@ -226,7 +305,22 @@ jobs:
name: php-fpm-${{ inputs.php-version }}-${{ inputs.os }}
path: buildroot/bin/php-fpm
# Upload frankenphp executable
- if: ${{ inputs['build-frankenphp'] == true }}
name: "Upload FrankenPHP SAPI"
uses: actions/upload-artifact@v4
with:
name: php-frankenphp-${{ inputs.php-version }}-${{ inputs.os }}
path: buildroot/bin/frankenphp
# Upload extensions metadata
- if: ${{ inputs['shared-extensions'] != '' }}
name: "Upload shared extensions"
uses: actions/upload-artifact@v4
with:
name: php-shared-ext-${{ inputs.php-version }}-${{ inputs.os }}
path: |
buildroot/modules/*.so
- uses: actions/upload-artifact@v4
name: "Upload License Files"
with:

View File

@@ -29,6 +29,10 @@ on:
description: prefer pre-built binaries (reduce build time)
type: boolean
default: true
with-suggested-libs:
description: Build with suggested libs
type: boolean
default: true
debug:
description: enable debug logs
type: boolean

6
.gitignore vendored
View File

@@ -33,6 +33,9 @@ packlib_files.txt
.php-cs-fixer.cache
.phpunit.result.cache
# doctor cache fallback (when ~/.cache/spc/ is not writable)
.spc-doctor.lock
# exclude self-runtime
/bin/*
!/bin/spc*
@@ -61,3 +64,6 @@ log/
# spc.phar
spc.phar
spc.exe
# dumped files from StaticPHP v3
/dump-*.json

View File

@@ -1,3 +0,0 @@
# static-php-cli
English README has been moved to [README.md](README.md).

View File

@@ -1,4 +1,4 @@
# static-php-cli
# StaticPHP
[![English readme](https://img.shields.io/badge/README-English%20%F0%9F%87%AC%F0%9F%87%A7-moccasin?style=flat-square)](README.md)
[![Chinese readme](https://img.shields.io/badge/README-%E4%B8%AD%E6%96%87%20%F0%9F%87%A8%F0%9F%87%B3-moccasin?style=flat-square)](README-zh.md)
@@ -6,7 +6,7 @@
[![CI](https://img.shields.io/github/actions/workflow/status/crazywhalecc/static-php-cli/tests.yml?branch=main&label=Build%20Test&style=flat-square)](https://github.com/crazywhalecc/static-php-cli/actions/workflows/tests.yml)
[![License](https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square)](https://github.com/crazywhalecc/static-php-cli/blob/main/LICENSE)
**static-php-cli** 是一个用于构建静态、独立 PHP 运行时的强大工具,支持众多流行扩展
**StaticPHP** 是一个用于构建静态编译可执行文件(包括 PHP、扩展等的强大工具
## 特性
@@ -80,7 +80,7 @@ download-options:
### 3. 静态 PHP 使用
现在您可以将 static-php-cli 构建的二进制文件复制到另一台机器上,无需依赖即可运行:
现在您可以将 StaticPHP 构建的二进制文件复制到另一台机器上,无需依赖即可运行:
```
# php-cli
@@ -97,7 +97,7 @@ buildroot/bin/php-fpm -v
## 文档
当前 README 包含基本用法。有关 static-php-cli 的所有功能,
当前 README 包含基本用法。有关 StaticPHP 的所有功能,
请访问 <https://static-php.dev>。
## 直接下载

View File

@@ -1,4 +1,4 @@
# static-php-cli
# StaticPHP
[![Chinese readme](https://img.shields.io/badge/README-%E4%B8%AD%E6%96%87%20%F0%9F%87%A8%F0%9F%87%B3-moccasin?style=flat-square)](README-zh.md)
[![English readme](https://img.shields.io/badge/README-English%20%F0%9F%87%AC%F0%9F%87%A7-moccasin?style=flat-square)](README.md)
@@ -6,8 +6,7 @@
[![CI](https://img.shields.io/github/actions/workflow/status/crazywhalecc/static-php-cli/tests.yml?branch=main&label=Build%20Test&style=flat-square)](https://github.com/crazywhalecc/static-php-cli/actions/workflows/tests.yml)
[![License](https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square)](https://github.com/crazywhalecc/static-php-cli/blob/main/LICENSE)
**static-php-cli** is a powerful tool designed for building static, standalone PHP runtime
with popular extensions.
**StaticPHP** is a powerful tool designed for building portable executables including PHP, extensions, and more.
## Features
@@ -81,7 +80,7 @@ Run command:
### 3. Static PHP usage
Now you can copy binaries built by static-php-cli to another machine and run with no dependencies:
Now you can copy binaries built by StaticPHP to another machine and run with no dependencies:
```
# php-cli
@@ -98,7 +97,7 @@ buildroot/bin/php-fpm -v
## Documentation
The current README contains basic usage. For all the features of static-php-cli,
The current README contains basic usage. For all the features of StaticPHP,
see <https://static-php.dev> .
## Direct Download

57
TODO.md Normal file
View File

@@ -0,0 +1,57 @@
# v3 TODO List
Tracking items identified during the v2 → v3 migration audit.
---
## Commands
- [ ] Implement `craft` command (drives full build from `craft.yml`; should be easier with v3 vendor/registry mode)
- [ ] Migrate `micro:combine` command (combine `micro.sfx` with PHP code + INI injection)
- [ ] Implement `dump-extensions` command (extract required extensions from `composer.json` / `composer.lock`)
- [ ] Design and implement v3 dev toolchain commands (WIP — needs design decision):
- [ ] `dev:extensions` / equivalent listing command
- [ ] `dev:php-version`, `dev:ext-version`, `dev:lib-version`
- [ ] Doc generation commands (`dev:gen-ext-docs`, `dev:gen-ext-dep-docs`, `dev:gen-lib-dep-docs`) — pending v3 doc design
---
## Source Patches (SourcePatcher → Artifact migration)
The following v2 `SourcePatcher` hooks are not yet migrated to v3 `src/Package/Artifact/` classes:
- [ ] Migrate `patchSQLSRVWin32` — removes `/sdl` compile flag to prevent Zend build failure on Windows
- [ ] Migrate `patchSQLSRVPhp85` — fixes `pdo_sqlsrv` directory layout for PHP 8.5
- [ ] Migrate `patchYamlWin32` — patches `config.w32` `_a.lib` detection logic for the `yaml` extension
- [ ] Migrate `patchImagickWith84` — applies PHP 8.4 compatibility patch for `imagick` based on version detection
---
## Extension Package Classes (Unix)
Extensions that had non-trivial v2 build logic and are missing a v3 `src/Package/Extension/` class:
- [x] `gettext` — macOS: fix `config.m4` bracket syntax for cross-version compatibility + append frameworks to linker flags (critical for macOS linking; this is a Unix-side gap, not Windows-only)
---
## Windows Extensions (Early Stage)
Windows extension support is still in early stage. The following extensions had Windows-specific configure args or patches in v2 and are pending v3 Windows implementation:
- [ ] `amqp` — Windows configure args
- [ ] `com_dotnet` — Windows-only extension
- [ ] `dom` — remove `dllmain.c` from `config.w32`
- [ ] `ev` — fix `PHP_EV_SHARED` in `config.w32`
- [ ] `gmssl` — add `CHECK_LIB("gmssl.lib")` to `config.w32`
- [ ] `intl` — fix `PHP_INTL_SHARED` in `config.w32`
- [ ] `lz4` — Windows configure args
- [ ] `mbregex` — Windows configure args
- [ ] `sqlsrv` / `pdo_sqlsrv` — complex conditional build logic (independent `sqlsrv` without `pdo_sqlsrv`)
- [ ] `xml` — remove `dllmain.c` from `config.w32`; handles `soap`, `xmlreader`, `xmlwriter`, `simplexml`
---
## Documentation
- [ ] Write v3 user documentation (currently zero v3 docs)

View File

@@ -21,10 +21,8 @@ if (PHP_VERSION_ID < 80400) {
try {
(new ConsoleApplication())->run();
} catch (SPCException $e) {
ExceptionHandler::handleSPCException($e);
exit(1);
exit(ExceptionHandler::handleSPCException($e));
} catch (\Throwable $e) {
ExceptionHandler::handleDefaultException($e);
exit(1);
exit(ExceptionHandler::handleDefaultException($e));
}

View File

@@ -108,8 +108,7 @@ RUN apk update; \
wget \
xz \
gettext-dev \
binutils-gold \
patchelf
binutils-gold
RUN curl -#fSL https://dl.static-php.dev/static-php-cli/bulk/php-8.4.4-cli-linux-\$(uname -m).tar.gz | tar -xz -C /usr/local/bin && \
chmod +x /usr/local/bin/php

12
bin/spc-debug.ps1 Normal file
View File

@@ -0,0 +1,12 @@
$PHP_Exec = ".\runtime\php.exe"
if (-not(Test-Path $PHP_Exec)) {
$PHP_Exec = Get-Command php.exe -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Definition
if (-not $PHP_Exec) {
Write-Host "Error: PHP not found, you need to install PHP on your system or use 'bin/setup-runtime'." -ForegroundColor Red
exit 1
}
}
& "$PHP_Exec" -d xdebug.mode=debug -d xdebug.client_host=127.0.0.1 -d xdebug.client_port=9003 -d xdebug.start_with_request=yes ("bin/spc") @args
exit $LASTEXITCODE

View File

@@ -92,11 +92,6 @@ RUN echo "source scl_source enable devtoolset-10" >> /etc/bashrc
RUN source /etc/bashrc
RUN yum install -y which
RUN curl -fsSL -o patchelf.tgz https://github.com/NixOS/patchelf/releases/download/0.18.0/patchelf-0.18.0-$SPC_USE_ARCH.tar.gz && \
mkdir -p /patchelf && \
tar -xzf patchelf.tgz -C /patchelf --strip-components=1 && \
cp /patchelf/bin/patchelf /usr/bin/
RUN curl -o cmake.tgz -#fSL https://github.com/Kitware/CMake/releases/download/v3.31.4/cmake-3.31.4-linux-$SPC_USE_ARCH.tar.gz && \
mkdir /cmake && \
tar -xzf cmake.tgz -C /cmake --strip-components 1

View File

@@ -1,19 +1,23 @@
{
"alias": "spc-php.phar",
"banner": false,
"blacklist": [
".github"
],
"compression": "GZ",
"directories": [
"config",
"src",
"vendor/psr",
"vendor/laravel/prompts",
"vendor/illuminate",
"vendor/symfony",
"vendor/zhamao"
],
"git-commit-short": "git_commit_short",
"output": "spc.phar"
"alias": "spc-php.phar",
"banner": false,
"blacklist": [
".github"
],
"compression": "GZ",
"check-requirements": false,
"directories": [
"config",
"src",
"vendor/psr",
"vendor/laravel/prompts",
"vendor/symfony",
"vendor/php-di",
"vendor/zhamao"
],
"files": [
"spc.registry.yml"
],
"git-commit-short": "git_commit_short",
"output": "spc.phar"
}

View File

@@ -3,7 +3,7 @@
"enabled": true,
"actions": [
{
"action": "composer analyse"
"action": "php vendor/bin/phpstan analyse --memory-limit 300M"
}
]
},
@@ -11,13 +11,22 @@
"enabled": true,
"actions": [
{
"action": "composer cs-fix -- --config=.php-cs-fixer.php --dry-run --diff {$STAGED_FILES|of-type:php}",
"action": "php vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php --dry-run --diff {$STAGED_FILES|of-type:php} --sequential",
"conditions": [
{
"exec": "\\CaptainHook\\App\\Hook\\Condition\\FileStaged\\OfType",
"args": ["php"]
}
]
},
{
"action": "bin/spc dev:lint-config --check",
"conditions": [
{
"exec": "\\CaptainHook\\App\\Hook\\Condition\\FileStaged\\InDirectory",
"args": ["config"]
}
]
}
]
},

View File

@@ -13,7 +13,6 @@
"ext-mbstring": "*",
"ext-zlib": "*",
"laravel/prompts": "~0.1",
"nette/php-generator": "^4.2",
"php-di/php-di": "^7.1",
"symfony/console": "^5.4 || ^6 || ^7",
"symfony/process": "^7.2",
@@ -25,7 +24,7 @@
"captainhook/hook-installer": "^1.0",
"friendsofphp/php-cs-fixer": "^3.60",
"humbug/box": "^4.5.0 || ^4.6.0",
"phpstan/phpstan": "^1.10",
"phpstan/phpstan": "^2.1",
"phpunit/phpunit": "^10.3 || ^9.5"
},
"autoload": {
@@ -50,6 +49,7 @@
"scripts": {
"analyse": "phpstan analyse --memory-limit 300M",
"cs-fix": "php-cs-fixer fix",
"lint-config": "bin/spc dev:lint-config",
"test": "vendor/bin/phpunit tests/ --no-coverage",
"build:phar": "vendor/bin/box compile"
},

345
composer.lock generated
View File

@@ -4,34 +4,34 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "edb3243ddaa8b05d8f6545266a146e93",
"content-hash": "f30595c9c60e55083112410cd1ffb203",
"packages": [
{
"name": "laravel/prompts",
"version": "v0.3.8",
"version": "v0.3.12",
"source": {
"type": "git",
"url": "https://github.com/laravel/prompts.git",
"reference": "096748cdfb81988f60090bbb839ce3205ace0d35"
"reference": "4861ded9003b7f8a158176a0b7666f74ee761be8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/prompts/zipball/096748cdfb81988f60090bbb839ce3205ace0d35",
"reference": "096748cdfb81988f60090bbb839ce3205ace0d35",
"url": "https://api.github.com/repos/laravel/prompts/zipball/4861ded9003b7f8a158176a0b7666f74ee761be8",
"reference": "4861ded9003b7f8a158176a0b7666f74ee761be8",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2.2",
"ext-mbstring": "*",
"php": "^8.1",
"symfony/console": "^6.2|^7.0"
"symfony/console": "^6.2|^7.0|^8.0"
},
"conflict": {
"illuminate/console": ">=10.17.0 <10.25.0",
"laravel/framework": ">=10.17.0 <10.25.0"
},
"require-dev": {
"illuminate/collections": "^10.0|^11.0|^12.0",
"illuminate/collections": "^10.0|^11.0|^12.0|^13.0",
"mockery/mockery": "^1.5",
"pestphp/pest": "^2.3|^3.4|^4.0",
"phpstan/phpstan": "^1.12.28",
@@ -61,33 +61,33 @@
"description": "Add beautiful and user-friendly forms to your command-line applications.",
"support": {
"issues": "https://github.com/laravel/prompts/issues",
"source": "https://github.com/laravel/prompts/tree/v0.3.8"
"source": "https://github.com/laravel/prompts/tree/v0.3.12"
},
"time": "2025-11-21T20:52:52+00:00"
"time": "2026-02-03T06:57:26+00:00"
},
{
"name": "laravel/serializable-closure",
"version": "v2.0.7",
"version": "v2.0.9",
"source": {
"type": "git",
"url": "https://github.com/laravel/serializable-closure.git",
"reference": "cb291e4c998ac50637c7eeb58189c14f5de5b9dd"
"reference": "8f631589ab07b7b52fead814965f5a800459cb3e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/serializable-closure/zipball/cb291e4c998ac50637c7eeb58189c14f5de5b9dd",
"reference": "cb291e4c998ac50637c7eeb58189c14f5de5b9dd",
"url": "https://api.github.com/repos/laravel/serializable-closure/zipball/8f631589ab07b7b52fead814965f5a800459cb3e",
"reference": "8f631589ab07b7b52fead814965f5a800459cb3e",
"shasum": ""
},
"require": {
"php": "^8.1"
},
"require-dev": {
"illuminate/support": "^10.0|^11.0|^12.0",
"illuminate/support": "^10.0|^11.0|^12.0|^13.0",
"nesbot/carbon": "^2.67|^3.0",
"pestphp/pest": "^2.36|^3.0|^4.0",
"phpstan/phpstan": "^2.0",
"symfony/var-dumper": "^6.2.0|^7.0.0"
"symfony/var-dumper": "^6.2.0|^7.0.0|^8.0.0"
},
"type": "library",
"extra": {
@@ -124,20 +124,20 @@
"issues": "https://github.com/laravel/serializable-closure/issues",
"source": "https://github.com/laravel/serializable-closure"
},
"time": "2025-11-21T20:52:36+00:00"
"time": "2026-02-03T06:55:34+00:00"
},
{
"name": "nette/php-generator",
"version": "v4.2.0",
"version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/nette/php-generator.git",
"reference": "4707546a1f11badd72f5d82af4f8a6bc64bd56ac"
"reference": "52aff4d9b12f20ca9f3e31a559b646d2fd21dd61"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nette/php-generator/zipball/4707546a1f11badd72f5d82af4f8a6bc64bd56ac",
"reference": "4707546a1f11badd72f5d82af4f8a6bc64bd56ac",
"url": "https://api.github.com/repos/nette/php-generator/zipball/52aff4d9b12f20ca9f3e31a559b646d2fd21dd61",
"reference": "52aff4d9b12f20ca9f3e31a559b646d2fd21dd61",
"shasum": ""
},
"require": {
@@ -146,9 +146,9 @@
},
"require-dev": {
"jetbrains/phpstorm-attributes": "^1.2",
"nette/tester": "^2.4",
"nette/tester": "^2.6",
"nikic/php-parser": "^5.0",
"phpstan/phpstan-nette": "^2.0@stable",
"phpstan/phpstan": "^2.0@stable",
"tracy/tracy": "^2.8"
},
"suggest": {
@@ -194,22 +194,22 @@
],
"support": {
"issues": "https://github.com/nette/php-generator/issues",
"source": "https://github.com/nette/php-generator/tree/v4.2.0"
"source": "https://github.com/nette/php-generator/tree/v4.2.1"
},
"time": "2025-08-06T18:24:31+00:00"
"time": "2026-02-09T05:43:31+00:00"
},
{
"name": "nette/utils",
"version": "v4.1.0",
"version": "v4.1.2",
"source": {
"type": "git",
"url": "https://github.com/nette/utils.git",
"reference": "fa1f0b8261ed150447979eb22e373b7b7ad5a8e0"
"reference": "f76b5dc3d6c6d3043c8d937df2698515b99cbaf5"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nette/utils/zipball/fa1f0b8261ed150447979eb22e373b7b7ad5a8e0",
"reference": "fa1f0b8261ed150447979eb22e373b7b7ad5a8e0",
"url": "https://api.github.com/repos/nette/utils/zipball/f76b5dc3d6c6d3043c8d937df2698515b99cbaf5",
"reference": "f76b5dc3d6c6d3043c8d937df2698515b99cbaf5",
"shasum": ""
},
"require": {
@@ -222,7 +222,7 @@
"require-dev": {
"jetbrains/phpstorm-attributes": "^1.2",
"nette/tester": "^2.5",
"phpstan/phpstan-nette": "^2.0@stable",
"phpstan/phpstan": "^2.0@stable",
"tracy/tracy": "^2.9"
},
"suggest": {
@@ -283,9 +283,9 @@
],
"support": {
"issues": "https://github.com/nette/utils/issues",
"source": "https://github.com/nette/utils/tree/v4.1.0"
"source": "https://github.com/nette/utils/tree/v4.1.2"
},
"time": "2025-12-01T17:49:23+00:00"
"time": "2026-02-03T17:21:09+00:00"
},
{
"name": "php-di/invoker",
@@ -520,16 +520,16 @@
},
{
"name": "symfony/console",
"version": "v7.4.0",
"version": "v7.4.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "0bc0f45254b99c58d45a8fbf9fb955d46cbd1bb8"
"reference": "41e38717ac1dd7a46b6bda7d6a82af2d98a78894"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/0bc0f45254b99c58d45a8fbf9fb955d46cbd1bb8",
"reference": "0bc0f45254b99c58d45a8fbf9fb955d46cbd1bb8",
"url": "https://api.github.com/repos/symfony/console/zipball/41e38717ac1dd7a46b6bda7d6a82af2d98a78894",
"reference": "41e38717ac1dd7a46b6bda7d6a82af2d98a78894",
"shasum": ""
},
"require": {
@@ -594,7 +594,7 @@
"terminal"
],
"support": {
"source": "https://github.com/symfony/console/tree/v7.4.0"
"source": "https://github.com/symfony/console/tree/v7.4.4"
},
"funding": [
{
@@ -614,7 +614,7 @@
"type": "tidelift"
}
],
"time": "2025-11-27T13:27:24+00:00"
"time": "2026-01-13T11:36:38+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -1020,16 +1020,16 @@
},
{
"name": "symfony/process",
"version": "v7.4.0",
"version": "v7.4.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "7ca8dc2d0dcf4882658313aba8be5d9fd01026c8"
"reference": "608476f4604102976d687c483ac63a79ba18cc97"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/7ca8dc2d0dcf4882658313aba8be5d9fd01026c8",
"reference": "7ca8dc2d0dcf4882658313aba8be5d9fd01026c8",
"url": "https://api.github.com/repos/symfony/process/zipball/608476f4604102976d687c483ac63a79ba18cc97",
"reference": "608476f4604102976d687c483ac63a79ba18cc97",
"shasum": ""
},
"require": {
@@ -1061,7 +1061,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/process/tree/v7.4.0"
"source": "https://github.com/symfony/process/tree/v7.4.5"
},
"funding": [
{
@@ -1081,7 +1081,7 @@
"type": "tidelift"
}
],
"time": "2025-10-16T11:21:06+00:00"
"time": "2026-01-26T15:07:59+00:00"
},
{
"name": "symfony/service-contracts",
@@ -1172,16 +1172,16 @@
},
{
"name": "symfony/string",
"version": "v8.0.0",
"version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
"reference": "f929eccf09531078c243df72398560e32fa4cf4f"
"reference": "758b372d6882506821ed666032e43020c4f57194"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/f929eccf09531078c243df72398560e32fa4cf4f",
"reference": "f929eccf09531078c243df72398560e32fa4cf4f",
"url": "https://api.github.com/repos/symfony/string/zipball/758b372d6882506821ed666032e43020c4f57194",
"reference": "758b372d6882506821ed666032e43020c4f57194",
"shasum": ""
},
"require": {
@@ -1238,7 +1238,7 @@
"utf8"
],
"support": {
"source": "https://github.com/symfony/string/tree/v8.0.0"
"source": "https://github.com/symfony/string/tree/v8.0.4"
},
"funding": [
{
@@ -1258,20 +1258,20 @@
"type": "tidelift"
}
],
"time": "2025-09-11T14:37:55+00:00"
"time": "2026-01-12T12:37:40+00:00"
},
{
"name": "symfony/yaml",
"version": "v7.4.0",
"version": "v7.4.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "6c84a4b55aee4cd02034d1c528e83f69ddf63810"
"reference": "24dd4de28d2e3988b311751ac49e684d783e2345"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/6c84a4b55aee4cd02034d1c528e83f69ddf63810",
"reference": "6c84a4b55aee4cd02034d1c528e83f69ddf63810",
"url": "https://api.github.com/repos/symfony/yaml/zipball/24dd4de28d2e3988b311751ac49e684d783e2345",
"reference": "24dd4de28d2e3988b311751ac49e684d783e2345",
"shasum": ""
},
"require": {
@@ -1314,7 +1314,7 @@
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/yaml/tree/v7.4.0"
"source": "https://github.com/symfony/yaml/tree/v7.4.1"
},
"funding": [
{
@@ -1334,7 +1334,7 @@
"type": "tidelift"
}
],
"time": "2025-11-16T10:14:42+00:00"
"time": "2025-12-04T18:11:45+00:00"
},
{
"name": "zhamao/logger",
@@ -1719,16 +1719,16 @@
},
{
"name": "amphp/parallel",
"version": "v2.3.2",
"version": "v2.3.3",
"source": {
"type": "git",
"url": "https://github.com/amphp/parallel.git",
"reference": "321b45ae771d9c33a068186b24117e3cd1c48dce"
"reference": "296b521137a54d3a02425b464e5aee4c93db2c60"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/amphp/parallel/zipball/321b45ae771d9c33a068186b24117e3cd1c48dce",
"reference": "321b45ae771d9c33a068186b24117e3cd1c48dce",
"url": "https://api.github.com/repos/amphp/parallel/zipball/296b521137a54d3a02425b464e5aee4c93db2c60",
"reference": "296b521137a54d3a02425b464e5aee4c93db2c60",
"shasum": ""
},
"require": {
@@ -1791,7 +1791,7 @@
],
"support": {
"issues": "https://github.com/amphp/parallel/issues",
"source": "https://github.com/amphp/parallel/tree/v2.3.2"
"source": "https://github.com/amphp/parallel/tree/v2.3.3"
},
"funding": [
{
@@ -1799,7 +1799,7 @@
"type": "github"
}
],
"time": "2025-08-27T21:55:40+00:00"
"time": "2025-11-15T06:23:42+00:00"
},
{
"name": "amphp/parser",
@@ -2217,7 +2217,7 @@
},
{
"name": "captainhook/captainhook-phar",
"version": "5.27.3",
"version": "5.28.0",
"source": {
"type": "git",
"url": "https://github.com/captainhook-git/captainhook-phar.git",
@@ -2271,7 +2271,7 @@
],
"support": {
"issues": "https://github.com/captainhook-git/captainhook/issues",
"source": "https://github.com/captainhook-git/captainhook-phar/tree/5.27.3"
"source": "https://github.com/captainhook-git/captainhook-phar/tree/5.28.0"
},
"funding": [
{
@@ -2660,29 +2660,29 @@
},
{
"name": "doctrine/deprecations",
"version": "1.1.5",
"version": "1.1.6",
"source": {
"type": "git",
"url": "https://github.com/doctrine/deprecations.git",
"reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38"
"reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/deprecations/zipball/459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38",
"reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38",
"url": "https://api.github.com/repos/doctrine/deprecations/zipball/d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca",
"reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca",
"shasum": ""
},
"require": {
"php": "^7.1 || ^8.0"
},
"conflict": {
"phpunit/phpunit": "<=7.5 || >=13"
"phpunit/phpunit": "<=7.5 || >=14"
},
"require-dev": {
"doctrine/coding-standard": "^9 || ^12 || ^13",
"phpstan/phpstan": "1.4.10 || 2.1.11",
"doctrine/coding-standard": "^9 || ^12 || ^14",
"phpstan/phpstan": "1.4.10 || 2.1.30",
"phpstan/phpstan-phpunit": "^1.0 || ^2",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12.4 || ^13.0",
"psr/log": "^1 || ^2 || ^3"
},
"suggest": {
@@ -2702,9 +2702,9 @@
"homepage": "https://www.doctrine-project.org/",
"support": {
"issues": "https://github.com/doctrine/deprecations/issues",
"source": "https://github.com/doctrine/deprecations/tree/1.1.5"
"source": "https://github.com/doctrine/deprecations/tree/1.1.6"
},
"time": "2025-04-07T20:06:18+00:00"
"time": "2026-02-07T07:09:04+00:00"
},
{
"name": "evenement/evenement",
@@ -2968,16 +2968,16 @@
},
{
"name": "friendsofphp/php-cs-fixer",
"version": "v3.91.0",
"version": "v3.93.1",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
"reference": "c4a25f20390337789c26b693ae46faa125040352"
"reference": "b3546ab487c0762c39f308dc1ec0ea2c461fc21a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/c4a25f20390337789c26b693ae46faa125040352",
"reference": "c4a25f20390337789c26b693ae46faa125040352",
"url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/b3546ab487c0762c39f308dc1ec0ea2c461fc21a",
"reference": "b3546ab487c0762c39f308dc1ec0ea2c461fc21a",
"shasum": ""
},
"require": {
@@ -3009,16 +3009,17 @@
},
"require-dev": {
"facile-it/paraunit": "^1.3.1 || ^2.7",
"infection/infection": "^0.31.0",
"justinrainbow/json-schema": "^6.5",
"keradus/cli-executor": "^2.2",
"infection/infection": "^0.32",
"justinrainbow/json-schema": "^6.6",
"keradus/cli-executor": "^2.3",
"mikey179/vfsstream": "^1.6.12",
"php-coveralls/php-coveralls": "^2.9",
"php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.6",
"php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.6",
"phpunit/phpunit": "^9.6.25 || ^10.5.53 || ^11.5.34",
"symfony/var-dumper": "^5.4.48 || ^6.4.24 || ^7.3.2 || ^8.0",
"symfony/yaml": "^5.4.45 || ^6.4.24 || ^7.3.2 || ^8.0"
"phpunit/phpunit": "^9.6.31 || ^10.5.60 || ^11.5.48",
"symfony/polyfill-php85": "^1.33",
"symfony/var-dumper": "^5.4.48 || ^6.4.26 || ^7.4.0 || ^8.0",
"symfony/yaml": "^5.4.45 || ^6.4.30 || ^7.4.1 || ^8.0"
},
"suggest": {
"ext-dom": "For handling output formats in XML",
@@ -3033,7 +3034,7 @@
"PhpCsFixer\\": "src/"
},
"exclude-from-classmap": [
"src/Fixer/Internal/*"
"src/**/Internal/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -3059,7 +3060,7 @@
],
"support": {
"issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
"source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.91.0"
"source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.93.1"
},
"funding": [
{
@@ -3067,7 +3068,7 @@
"type": "github"
}
],
"time": "2025-11-28T22:07:42+00:00"
"time": "2026-01-28T23:50:50+00:00"
},
{
"name": "humbug/box",
@@ -3316,21 +3317,21 @@
},
{
"name": "justinrainbow/json-schema",
"version": "6.6.2",
"version": "6.6.4",
"source": {
"type": "git",
"url": "https://github.com/jsonrainbow/json-schema.git",
"reference": "3c25fe750c1599716ef26aa997f7c026cee8c4b7"
"reference": "2eeb75d21cf73211335888e7f5e6fd7440723ec7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/3c25fe750c1599716ef26aa997f7c026cee8c4b7",
"reference": "3c25fe750c1599716ef26aa997f7c026cee8c4b7",
"url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/2eeb75d21cf73211335888e7f5e6fd7440723ec7",
"reference": "2eeb75d21cf73211335888e7f5e6fd7440723ec7",
"shasum": ""
},
"require": {
"ext-json": "*",
"marc-mabe/php-enum": "^4.0",
"marc-mabe/php-enum": "^4.4",
"php": "^7.2 || ^8.0"
},
"require-dev": {
@@ -3385,9 +3386,9 @@
],
"support": {
"issues": "https://github.com/jsonrainbow/json-schema/issues",
"source": "https://github.com/jsonrainbow/json-schema/tree/6.6.2"
"source": "https://github.com/jsonrainbow/json-schema/tree/6.6.4"
},
"time": "2025-11-28T15:24:03+00:00"
"time": "2025-12-19T15:01:32+00:00"
},
{
"name": "kelunik/certificate",
@@ -3449,20 +3450,20 @@
},
{
"name": "league/uri",
"version": "7.6.0",
"version": "7.8.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/uri.git",
"reference": "f625804987a0a9112d954f9209d91fec52182344"
"reference": "4436c6ec8d458e4244448b069cc572d088230b76"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/uri/zipball/f625804987a0a9112d954f9209d91fec52182344",
"reference": "f625804987a0a9112d954f9209d91fec52182344",
"url": "https://api.github.com/repos/thephpleague/uri/zipball/4436c6ec8d458e4244448b069cc572d088230b76",
"reference": "4436c6ec8d458e4244448b069cc572d088230b76",
"shasum": ""
},
"require": {
"league/uri-interfaces": "^7.6",
"league/uri-interfaces": "^7.8",
"php": "^8.1",
"psr/http-factory": "^1"
},
@@ -3476,11 +3477,11 @@
"ext-gmp": "to improve IPV4 host parsing",
"ext-intl": "to handle IDN host with the best performance",
"ext-uri": "to use the PHP native URI class",
"jeremykendall/php-domain-parser": "to resolve Public Suffix and Top Level Domain",
"league/uri-components": "Needed to easily manipulate URI objects components",
"league/uri-polyfill": "Needed to backport the PHP URI extension for older versions of PHP",
"jeremykendall/php-domain-parser": "to further parse the URI host and resolve its Public Suffix and Top Level Domain",
"league/uri-components": "to provide additional tools to manipulate URI objects components",
"league/uri-polyfill": "to backport the PHP URI extension for older versions of PHP",
"php-64bit": "to improve IPV4 host parsing",
"rowbot/url": "to handle WHATWG URL",
"rowbot/url": "to handle URLs using the WHATWG URL Living Standard specification",
"symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present"
},
"type": "library",
@@ -3535,7 +3536,7 @@
"docs": "https://uri.thephpleague.com",
"forum": "https://thephpleague.slack.com",
"issues": "https://github.com/thephpleague/uri-src/issues",
"source": "https://github.com/thephpleague/uri/tree/7.6.0"
"source": "https://github.com/thephpleague/uri/tree/7.8.0"
},
"funding": [
{
@@ -3543,20 +3544,20 @@
"type": "github"
}
],
"time": "2025-11-18T12:17:23+00:00"
"time": "2026-01-14T17:24:56+00:00"
},
{
"name": "league/uri-interfaces",
"version": "7.6.0",
"version": "7.8.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/uri-interfaces.git",
"reference": "ccbfb51c0445298e7e0b7f4481b942f589665368"
"reference": "c5c5cd056110fc8afaba29fa6b72a43ced42acd4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/ccbfb51c0445298e7e0b7f4481b942f589665368",
"reference": "ccbfb51c0445298e7e0b7f4481b942f589665368",
"url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/c5c5cd056110fc8afaba29fa6b72a43ced42acd4",
"reference": "c5c5cd056110fc8afaba29fa6b72a43ced42acd4",
"shasum": ""
},
"require": {
@@ -3569,7 +3570,7 @@
"ext-gmp": "to improve IPV4 host parsing",
"ext-intl": "to handle IDN host with the best performance",
"php-64bit": "to improve IPV4 host parsing",
"rowbot/url": "to handle WHATWG URL",
"rowbot/url": "to handle URLs using the WHATWG URL Living Standard specification",
"symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present"
},
"type": "library",
@@ -3619,7 +3620,7 @@
"docs": "https://uri.thephpleague.com",
"forum": "https://thephpleague.slack.com",
"issues": "https://github.com/thephpleague/uri-src/issues",
"source": "https://github.com/thephpleague/uri-interfaces/tree/7.6.0"
"source": "https://github.com/thephpleague/uri-interfaces/tree/7.8.0"
},
"funding": [
{
@@ -3627,7 +3628,7 @@
"type": "github"
}
],
"time": "2025-11-18T12:17:23+00:00"
"time": "2026-01-15T06:54:53+00:00"
},
{
"name": "marc-mabe/php-enum",
@@ -3816,16 +3817,16 @@
},
{
"name": "nikic/php-parser",
"version": "v5.6.2",
"version": "v5.7.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
"reference": "3a454ca033b9e06b63282ce19562e892747449bb"
"reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3a454ca033b9e06b63282ce19562e892747449bb",
"reference": "3a454ca033b9e06b63282ce19562e892747449bb",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82",
"reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82",
"shasum": ""
},
"require": {
@@ -3868,9 +3869,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
"source": "https://github.com/nikic/PHP-Parser/tree/v5.6.2"
"source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0"
},
"time": "2025-10-21T19:32:17+00:00"
"time": "2025-12-06T11:56:16+00:00"
},
{
"name": "phar-io/composer-distributor",
@@ -4259,16 +4260,16 @@
},
{
"name": "phpdocumentor/reflection-docblock",
"version": "5.6.5",
"version": "5.6.6",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
"reference": "90614c73d3800e187615e2dd236ad0e2a01bf761"
"reference": "5cee1d3dfc2d2aa6599834520911d246f656bcb8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/90614c73d3800e187615e2dd236ad0e2a01bf761",
"reference": "90614c73d3800e187615e2dd236ad0e2a01bf761",
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/5cee1d3dfc2d2aa6599834520911d246f656bcb8",
"reference": "5cee1d3dfc2d2aa6599834520911d246f656bcb8",
"shasum": ""
},
"require": {
@@ -4278,7 +4279,7 @@
"phpdocumentor/reflection-common": "^2.2",
"phpdocumentor/type-resolver": "^1.7",
"phpstan/phpdoc-parser": "^1.7|^2.0",
"webmozart/assert": "^1.9.1"
"webmozart/assert": "^1.9.1 || ^2"
},
"require-dev": {
"mockery/mockery": "~1.3.5 || ~1.6.0",
@@ -4317,9 +4318,9 @@
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
"support": {
"issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues",
"source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.5"
"source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.6.6"
},
"time": "2025-11-27T19:50:05+00:00"
"time": "2025-12-22T21:13:58+00:00"
},
{
"name": "phpdocumentor/type-resolver",
@@ -4381,16 +4382,16 @@
},
{
"name": "phpstan/phpdoc-parser",
"version": "2.3.0",
"version": "2.3.2",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git",
"reference": "1e0cd5370df5dd2e556a36b9c62f62e555870495"
"reference": "a004701b11273a26cd7955a61d67a7f1e525a45a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/1e0cd5370df5dd2e556a36b9c62f62e555870495",
"reference": "1e0cd5370df5dd2e556a36b9c62f62e555870495",
"url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/a004701b11273a26cd7955a61d67a7f1e525a45a",
"reference": "a004701b11273a26cd7955a61d67a7f1e525a45a",
"shasum": ""
},
"require": {
@@ -4422,21 +4423,21 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues",
"source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.0"
"source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.2"
},
"time": "2025-08-30T15:50:23+00:00"
"time": "2026-01-25T14:56:51+00:00"
},
{
"name": "phpstan/phpstan",
"version": "1.12.32",
"version": "2.1.38",
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/2770dcdf5078d0b0d53f94317e06affe88419aa8",
"reference": "2770dcdf5078d0b0d53f94317e06affe88419aa8",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/dfaf1f530e1663aa167bc3e52197adb221582629",
"reference": "dfaf1f530e1663aa167bc3e52197adb221582629",
"shasum": ""
},
"require": {
"php": "^7.2|^8.0"
"php": "^7.4|^8.0"
},
"conflict": {
"phpstan/phpstan-shim": "*"
@@ -4477,7 +4478,7 @@
"type": "github"
}
],
"time": "2025-09-30T10:16:31+00:00"
"time": "2026-01-30T17:12:46+00:00"
},
{
"name": "phpunit/php-code-coverage",
@@ -4802,16 +4803,16 @@
},
{
"name": "phpunit/phpunit",
"version": "10.5.58",
"version": "10.5.63",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "e24fb46da450d8e6a5788670513c1af1424f16ca"
"reference": "33198268dad71e926626b618f3ec3966661e4d90"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e24fb46da450d8e6a5788670513c1af1424f16ca",
"reference": "e24fb46da450d8e6a5788670513c1af1424f16ca",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/33198268dad71e926626b618f3ec3966661e4d90",
"reference": "33198268dad71e926626b618f3ec3966661e4d90",
"shasum": ""
},
"require": {
@@ -4832,7 +4833,7 @@
"phpunit/php-timer": "^6.0.0",
"sebastian/cli-parser": "^2.0.1",
"sebastian/code-unit": "^2.0.0",
"sebastian/comparator": "^5.0.4",
"sebastian/comparator": "^5.0.5",
"sebastian/diff": "^5.1.1",
"sebastian/environment": "^6.1.0",
"sebastian/exporter": "^5.1.4",
@@ -4883,7 +4884,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.58"
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.63"
},
"funding": [
{
@@ -4907,7 +4908,7 @@
"type": "tidelift"
}
],
"time": "2025-09-28T12:04:46+00:00"
"time": "2026-01-27T05:48:37+00:00"
},
{
"name": "psr/event-dispatcher",
@@ -5141,16 +5142,16 @@
},
{
"name": "react/child-process",
"version": "v0.6.6",
"version": "v0.6.7",
"source": {
"type": "git",
"url": "https://github.com/reactphp/child-process.git",
"reference": "1721e2b93d89b745664353b9cfc8f155ba8a6159"
"reference": "970f0e71945556422ee4570ccbabaedc3cf04ad3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/reactphp/child-process/zipball/1721e2b93d89b745664353b9cfc8f155ba8a6159",
"reference": "1721e2b93d89b745664353b9cfc8f155ba8a6159",
"url": "https://api.github.com/repos/reactphp/child-process/zipball/970f0e71945556422ee4570ccbabaedc3cf04ad3",
"reference": "970f0e71945556422ee4570ccbabaedc3cf04ad3",
"shasum": ""
},
"require": {
@@ -5204,7 +5205,7 @@
],
"support": {
"issues": "https://github.com/reactphp/child-process/issues",
"source": "https://github.com/reactphp/child-process/tree/v0.6.6"
"source": "https://github.com/reactphp/child-process/tree/v0.6.7"
},
"funding": [
{
@@ -5212,7 +5213,7 @@
"type": "open_collective"
}
],
"time": "2025-01-01T16:37:48+00:00"
"time": "2025-12-23T15:25:20+00:00"
},
{
"name": "react/dns",
@@ -5835,16 +5836,16 @@
},
{
"name": "sebastian/comparator",
"version": "5.0.4",
"version": "5.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
"reference": "e8e53097718d2b53cfb2aa859b06a41abf58c62e"
"reference": "55dfef806eb7dfeb6e7a6935601fef866f8ca48d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e8e53097718d2b53cfb2aa859b06a41abf58c62e",
"reference": "e8e53097718d2b53cfb2aa859b06a41abf58c62e",
"url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55dfef806eb7dfeb6e7a6935601fef866f8ca48d",
"reference": "55dfef806eb7dfeb6e7a6935601fef866f8ca48d",
"shasum": ""
},
"require": {
@@ -5900,7 +5901,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/comparator/issues",
"security": "https://github.com/sebastianbergmann/comparator/security/policy",
"source": "https://github.com/sebastianbergmann/comparator/tree/5.0.4"
"source": "https://github.com/sebastianbergmann/comparator/tree/5.0.5"
},
"funding": [
{
@@ -5920,7 +5921,7 @@
"type": "tidelift"
}
],
"time": "2025-09-07T05:25:07+00:00"
"time": "2026-01-24T09:25:16+00:00"
},
{
"name": "sebastian/complexity",
@@ -6732,16 +6733,16 @@
},
{
"name": "symfony/event-dispatcher",
"version": "v8.0.0",
"version": "v8.0.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
"reference": "573f95783a2ec6e38752979db139f09fec033f03"
"reference": "99301401da182b6cfaa4700dbe9987bb75474b47"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/573f95783a2ec6e38752979db139f09fec033f03",
"reference": "573f95783a2ec6e38752979db139f09fec033f03",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/99301401da182b6cfaa4700dbe9987bb75474b47",
"reference": "99301401da182b6cfaa4700dbe9987bb75474b47",
"shasum": ""
},
"require": {
@@ -6793,7 +6794,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/event-dispatcher/tree/v8.0.0"
"source": "https://github.com/symfony/event-dispatcher/tree/v8.0.4"
},
"funding": [
{
@@ -6813,7 +6814,7 @@
"type": "tidelift"
}
],
"time": "2025-10-30T14:17:19+00:00"
"time": "2026-01-05T11:45:55+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -6963,16 +6964,16 @@
},
{
"name": "symfony/finder",
"version": "v7.4.0",
"version": "v7.4.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "340b9ed7320570f319028a2cbec46d40535e94bd"
"reference": "ad4daa7c38668dcb031e63bc99ea9bd42196a2cb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/340b9ed7320570f319028a2cbec46d40535e94bd",
"reference": "340b9ed7320570f319028a2cbec46d40535e94bd",
"url": "https://api.github.com/repos/symfony/finder/zipball/ad4daa7c38668dcb031e63bc99ea9bd42196a2cb",
"reference": "ad4daa7c38668dcb031e63bc99ea9bd42196a2cb",
"shasum": ""
},
"require": {
@@ -7007,7 +7008,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/finder/tree/v7.4.0"
"source": "https://github.com/symfony/finder/tree/v7.4.5"
},
"funding": [
{
@@ -7027,7 +7028,7 @@
"type": "tidelift"
}
],
"time": "2025-11-05T05:42:40+00:00"
"time": "2026-01-26T15:07:59+00:00"
},
{
"name": "symfony/options-resolver",
@@ -7332,16 +7333,16 @@
},
{
"name": "symfony/var-dumper",
"version": "v7.4.0",
"version": "v7.4.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
"reference": "41fd6c4ae28c38b294b42af6db61446594a0dece"
"reference": "0e4769b46a0c3c62390d124635ce59f66874b282"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/41fd6c4ae28c38b294b42af6db61446594a0dece",
"reference": "41fd6c4ae28c38b294b42af6db61446594a0dece",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/0e4769b46a0c3c62390d124635ce59f66874b282",
"reference": "0e4769b46a0c3c62390d124635ce59f66874b282",
"shasum": ""
},
"require": {
@@ -7395,7 +7396,7 @@
"dump"
],
"support": {
"source": "https://github.com/symfony/var-dumper/tree/v7.4.0"
"source": "https://github.com/symfony/var-dumper/tree/v7.4.4"
},
"funding": [
{
@@ -7415,7 +7416,7 @@
"type": "tidelift"
}
],
"time": "2025-10-27T20:36:44+00:00"
"time": "2026-01-01T22:13:48+00:00"
},
{
"name": "thecodingmachine/safe",

View File

@@ -1,131 +1,4 @@
{
"vswhere": {
"binary": {
"windows-x86_64": {
"type": "url",
"url": "https://github.com/microsoft/vswhere/releases/download/3.1.7/vswhere.exe",
"extract": "{pkg_root_path}/bin/vswhere.exe"
}
}
},
"musl-wrapper": {
"source": "https://musl.libc.org/releases/musl-1.2.5.tar.gz"
},
"php-src": {
"source": {
"type": "php-release"
}
},
"php-sdk-binary-tools": {
"binary": {
"windows-x86_64": {
"type": "git",
"rev": "master",
"url": "https://github.com/php/php-sdk-binary-tools.git",
"extract": "{php_sdk_path}"
}
}
},
"go-xcaddy": {
"binary": "custom"
},
"musl-toolchain": {
"binary": {
"linux-x86_64": {
"type": "url",
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/x86_64-musl-toolchain.tgz",
"extract": "{pkg_root_path}/musl-toolchain"
},
"linux-aarch64": {
"type": "url",
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/aarch64-musl-toolchain.tgz",
"extract": "{pkg_root_path}/musl-toolchain"
}
}
},
"pkg-config": {
"source": "https://dl.static-php.dev/static-php-cli/deps/pkg-config/pkg-config-0.29.2.tar.gz",
"binary": {
"linux-x86_64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-aarch64-linux-musl-1.2.5.txz",
"extract": {
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
}
},
"linux-aarch64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-x86_64-linux-musl-1.2.5.txz",
"extract": {
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
}
},
"macos-x86_64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-x86_64-darwin.txz",
"extract": {
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
}
},
"macos-aarch64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-aarch64-darwin.txz",
"extract": "{pkg_root_path}"
}
}
},
"strawberry-perl": {
"binary": {
"windows-x86_64": "https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_5380_5361/strawberry-perl-5.38.0.1-64bit-portable.zip"
}
},
"upx": {
"binary": {
"linux-x86_64": {
"type": "ghrel",
"repo": "upx/upx",
"match": "upx.+-amd64_linux\\.tar\\.xz",
"extract": {
"upx": "{pkg_root_path}/bin/upx"
}
},
"linux-aarch64": {
"type": "ghrel",
"repo": "upx/upx",
"match": "upx.+-arm64_linux\\.tar\\.xz",
"extract": {
"upx": "{pkg_root_path}/bin/upx"
}
},
"windows-x86_64": {
"type": "ghrel",
"repo": "upx/upx",
"match": "upx.+-win64\\.zip",
"extract": {
"upx.exe": "{pkg_root_path}/bin/upx.exe"
}
}
}
},
"zig": {
"binary": "custom"
},
"nasm": {
"binary": {
"windows-x86_64": {
"type": "url",
"url": "https://dl.static-php.dev/static-php-cli/deps/nasm/nasm-2.16.01-win64.zip",
"extract": {
"nasm.exe": "{php_sdk_path}/bin/nasm.exe",
"ndisasm.exe": "{php_sdk_path}/bin/ndisasm.exe"
}
}
}
},
"amqp": {
"source": {
"type": "url",
@@ -391,11 +264,14 @@
"repo": "guanzhi/GmSSL"
}
},
"go-xcaddy": {
"binary": "custom"
},
"grpc": {
"binary": "hosted",
"source": {
"type": "git",
"rev": "v1.75.x",
"regex": "v(?<version>1.\\d+).x",
"url": "https://github.com/grpc/grpc.git"
}
},
@@ -729,13 +605,6 @@
"extract": "php-src/ext/memcached"
}
},
"mimalloc": {
"source": {
"type": "ghtagtar",
"repo": "microsoft/mimalloc",
"match": "v2\\.\\d\\.[^3].*"
}
},
"micro": {
"source": {
"type": "git",
@@ -744,6 +613,13 @@
"url": "https://github.com/static-php/phpmicro"
}
},
"mimalloc": {
"source": {
"type": "ghtagtar",
"repo": "microsoft/mimalloc",
"match": "v2\\.\\d\\.[^3].*"
}
},
"mongodb": {
"source": {
"type": "ghrel",
@@ -761,6 +637,35 @@
"extract": "php-src/ext/msgpack"
}
},
"musl-toolchain": {
"binary": {
"linux-x86_64": {
"type": "url",
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/x86_64-musl-toolchain.tgz",
"extract": "{pkg_root_path}/musl-toolchain"
},
"linux-aarch64": {
"type": "url",
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/aarch64-musl-toolchain.tgz",
"extract": "{pkg_root_path}/musl-toolchain"
}
}
},
"musl-wrapper": {
"source": "https://musl.libc.org/releases/musl-1.2.5.tar.gz"
},
"nasm": {
"binary": {
"windows-x86_64": {
"type": "url",
"url": "https://dl.static-php.dev/static-php-cli/deps/nasm/nasm-2.16.01-win64.zip",
"extract": {
"nasm.exe": "{php_sdk_path}/bin/nasm.exe",
"ndisasm.exe": "{php_sdk_path}/bin/ndisasm.exe"
}
}
}
},
"ncurses": {
"binary": "hosted",
"source": {
@@ -846,6 +751,56 @@
"extract": "php-src/ext/pdo_sqlsrv"
}
},
"php-sdk-binary-tools": {
"binary": {
"windows-x86_64": {
"type": "git",
"rev": "master",
"url": "https://github.com/php/php-sdk-binary-tools.git",
"extract": "{php_sdk_path}"
}
}
},
"php-src": {
"source": {
"type": "php-release"
}
},
"pkg-config": {
"binary": {
"linux-x86_64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-aarch64-linux-musl-1.2.5.txz",
"extract": {
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
}
},
"linux-aarch64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-x86_64-linux-musl-1.2.5.txz",
"extract": {
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
}
},
"macos-x86_64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-x86_64-darwin.txz",
"extract": {
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
}
},
"macos-aarch64": {
"type": "ghrel",
"repo": "static-php/static-php-cli-hosted",
"match": "pkg-config-aarch64-darwin.txz",
"extract": "{pkg_root_path}"
}
},
"source": "https://dl.static-php.dev/static-php-cli/deps/pkg-config/pkg-config-0.29.2.tar.gz"
},
"postgresql": {
"source": {
"type": "ghtagtar",
@@ -946,6 +901,15 @@
"extract": "php-src/ext/sqlsrv"
}
},
"strawberry-perl": {
"binary": {
"windows-x86_64": {
"type": "url",
"url": "https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_5380_5361/strawberry-perl-5.38.0.1-64bit-portable.zip",
"extract": "{pkg_root_path}/strawberry-perl"
}
}
},
"swoole": {
"source": {
"type": "ghtar",
@@ -978,6 +942,43 @@
"version": "2.3.12"
}
},
"upx": {
"binary": {
"linux-x86_64": {
"type": "ghrel",
"repo": "upx/upx",
"match": "upx.+-amd64_linux\\.tar\\.xz",
"extract": {
"upx": "{pkg_root_path}/bin/upx"
}
},
"linux-aarch64": {
"type": "ghrel",
"repo": "upx/upx",
"match": "upx.+-arm64_linux\\.tar\\.xz",
"extract": {
"upx": "{pkg_root_path}/bin/upx"
}
},
"windows-x86_64": {
"type": "ghrel",
"repo": "upx/upx",
"match": "upx.+-win64\\.zip",
"extract": {
"upx.exe": "{pkg_root_path}/bin/upx.exe"
}
}
}
},
"vswhere": {
"binary": {
"windows-x86_64": {
"type": "url",
"url": "https://github.com/microsoft/vswhere/releases/download/3.1.7/vswhere.exe",
"extract": "{pkg_root_path}/bin/vswhere.exe"
}
}
},
"watcher": {
"source": {
"type": "ghtar",
@@ -1037,6 +1038,9 @@
"extract": "php-src/ext/yaml"
}
},
"zig": {
"binary": "custom"
},
"zlib": {
"binary": "hosted",
"source": {

9
config/artifact/glfw.yml Normal file
View File

@@ -0,0 +1,9 @@
glfw:
metadata:
license-files:
- LICENSE
license: MIT
source:
type: git
url: 'https://github.com/mario-deluna/php-glfw'
rev: master

View File

@@ -0,0 +1,2 @@
musl-wrapper:
source: 'https://musl.libc.org/releases/musl-1.2.5.tar.gz'

View File

@@ -0,0 +1,9 @@
ncurses:
binary: hosted
metadata:
license-files:
- COPYING
source:
type: filelist
url: 'https://ftp.gnu.org/pub/gnu/ncurses/'
regex: '/href="(?<file>ncurses-(?<version>[^"]+)\.tar\.gz)"/'

View File

@@ -0,0 +1,11 @@
php-src:
metadata:
license-files:
- LICENSE
license: PHP-3.01
source:
type: php-release
domain: 'https://www.php.net'
source-mirror:
type: php-release
domain: 'https://phpmirror.static-php.dev'

View File

@@ -48,7 +48,7 @@ SPC_SKIP_DOCTOR_CHECK_ITEMS=""
; extra modules that xcaddy will include in the FrankenPHP build
SPC_CMD_VAR_FRANKENPHP_XCADDY_MODULES="--with github.com/dunglas/mercure/caddy --with github.com/dunglas/vulcain/caddy --with github.com/dunglas/caddy-cbrotli"
; The display message for php version output (PHP >= 8.4 available)
PHP_BUILD_PROVIDER="static-php-cli ${SPC_VERSION}"
PHP_BUILD_PROVIDER="StaticPHP ${SPC_VERSION}"
; Whether to enable log file (if you are using vendor mode)
SPC_ENABLE_LOG_FILE="yes"
; The LOG DIR for spc logs
@@ -82,8 +82,10 @@ SPC_MICRO_PATCHES=static_extensions_win32,cli_checks,disable_huge_page,vcruntime
; - musl-native: used for alpine linux, can build `musl` and `musl -dynamic` target.
; - gnu-native: used for general linux distros, can build gnu target for the installed glibc version only.
; LEGACY option to specify the target
SPC_LIBC=musl
; option to specify the target, superceded by SPC_TARGET if set
; SPC_LIBC=musl
; uncomment to link libc dynamically on musl
; SPC_MUSL_DYNAMIC=true
; Recommended: specify your target here. Zig toolchain will be used.
; examples:
@@ -92,13 +94,13 @@ SPC_LIBC=musl
; `native-native` - links against system libc dynamically
; `native-native-musl` - links against musl libc statically
; `native-native-musl -dynamic` - links against musl libc dynamically
; SPC_TARGET=
SPC_TARGET=native-native-musl
; compiler environments
CC=${SPC_LINUX_DEFAULT_CC}
CXX=${SPC_LINUX_DEFAULT_CXX}
AR=${SPC_LINUX_DEFAULT_AR}
LD=${SPC_LINUX_DEFAULT_LD}
; compiler environments (default value is defined by selected toolchain)
CC=${SPC_DEFAULT_CC}
CXX=${SPC_DEFAULT_CXX}
AR=${SPC_DEFAULT_AR}
LD=${SPC_DEFAULT_LD}
; default compiler flags, used in CMake toolchain file, openssl and pkg-config build
SPC_DEFAULT_C_FLAGS="-fPIC -Os"
SPC_DEFAULT_CXX_FLAGS="-fPIC -Os"
@@ -119,20 +121,27 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --disable
SPC_CMD_VAR_PHP_EMBED_TYPE="static"
; EXTRA_CFLAGS for `configure` and `make` php
SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fno-ident -fPIE ${SPC_DEFAULT_C_FLAGS}"
; EXTRA_CXXFLAGS for `configure` and `make` php
SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fPIE ${SPC_DEFAULT_CXX_FLAGS}"
; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.so
SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS=""
; optional, path to openssl conf. This affects where openssl will look for the default CA.
; default on Debian/Alpine: /etc/ssl, default on RHEL: /etc/pki/tls
OPENSSLDIR=""
[macos]
; build target: macho or macho (possibly we could support macho-universal in the future)
; Currently we do not support universal and cross-compilation for macOS.
SPC_TARGET=native-macos
; compiler environments
CC=${SPC_LINUX_DEFAULT_CC}
CXX=${SPC_LINUX_DEFAULT_CXX}
AR=${SPC_LINUX_DEFAULT_AR}
LD=${SPC_LINUX_DEFAULT_LD}
; Whether to use brew version of llvm or system version (valid options: 'system', 'brew', default: 'system')
SPC_USE_LLVM=system
; compiler environments (default value is defined by selected toolchain)
CC=${SPC_DEFAULT_CC}
CXX=${SPC_DEFAULT_CXX}
AR=${SPC_DEFAULT_AR}
LD=${SPC_DEFAULT_LD}
; default compiler flags, used in CMake toolchain file, openssl and pkg-config build
; this will be added to all CFLAGS and CXXFLAGS for the library builds
SPC_DEFAULT_C_FLAGS="--target=${MAC_ARCH}-apple-darwin -Os"
SPC_DEFAULT_CXX_FLAGS="--target=${MAC_ARCH}-apple-darwin -Os"
SPC_DEFAULT_LD_FLAGS=""
@@ -150,3 +159,9 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --enable-
SPC_CMD_VAR_PHP_EMBED_TYPE="static"
; EXTRA_CFLAGS for `configure` and `make` php
SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fpic -fpie -Werror=unknown-warning-option ${SPC_DEFAULT_C_FLAGS}"
; EXTRA_CXXFLAGS for `configure` and `make` php
SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fpie -Werror=unknown-warning-option ${SPC_DEFAULT_CXX_FLAGS}"
; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.dylib
SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS=""
; minimum compatible macOS version (LLVM vars, availability not guaranteed)
MACOSX_DEPLOYMENT_TARGET=12.0

View File

@@ -43,6 +43,14 @@
"calendar": {
"type": "builtin"
},
"com_dotnet": {
"support": {
"BSD": "no",
"Linux": "no",
"Darwin": "no"
},
"type": "builtin"
},
"ctype": {
"type": "builtin"
},
@@ -127,6 +135,14 @@
"sockets"
]
},
"excimer": {
"support": {
"Windows": "wip",
"BSD": "wip"
},
"type": "external",
"source": "ext-excimer"
},
"exif": {
"type": "builtin"
},
@@ -232,11 +248,14 @@
"BSD": "wip"
},
"type": "external",
"source": "grpc",
"source": "ext-grpc",
"arg-type-unix": "enable-path",
"cpp-extension": true,
"lib-depends": [
"grpc"
"grpc",
"zlib",
"openssl",
"libcares"
]
},
"iconv": {
@@ -408,8 +427,7 @@
"ext-depends": [
"zlib",
"session"
],
"build-with-php": true
]
},
"memcached": {
"support": {
@@ -487,6 +505,40 @@
"zlib"
]
},
"mysqlnd_ed25519": {
"type": "external",
"source": "mysqlnd_ed25519",
"arg-type": "enable",
"target": [
"shared"
],
"ext-depends": [
"mysqlnd"
],
"lib-depends": [
"libsodium"
],
"lib-suggests": [
"openssl"
]
},
"mysqlnd_parsec": {
"type": "external",
"source": "mysqlnd_parsec",
"arg-type": "enable",
"target": [
"shared"
],
"ext-depends": [
"mysqlnd"
],
"lib-depends": [
"libsodium"
],
"lib-suggests": [
"openssl"
]
},
"oci8": {
"type": "wip",
"support": {

View File

@@ -143,9 +143,7 @@
"zlib"
],
"lib-suggests": [
"libpng",
"bzip2",
"brotli"
"libpng"
]
},
"gettext": {
@@ -355,12 +353,18 @@
"static-libs-unix": [
"libaom.a"
],
"static-libs-windows": [
"aom.lib"
],
"cpp-library": true
},
"libargon2": {
"source": "libargon2",
"static-libs-unix": [
"libargon2.a"
],
"lib-suggests": [
"libsodium"
]
},
"libavif": {
@@ -370,6 +374,15 @@
],
"static-libs-windows": [
"avif.lib"
],
"lib-depends": [
"libaom"
],
"lib-suggests": [
"libwebp",
"libjpeg",
"libxml2",
"libpng"
]
},
"libcares": {
@@ -481,7 +494,7 @@
"static-libs-windows": [
"libjpeg_a.lib"
],
"lib-suggests-windows": [
"lib-depends": [
"zlib"
]
},
@@ -850,6 +863,9 @@
},
"openssl": {
"source": "openssl",
"pkg-configs": [
"openssl"
],
"static-libs-unix": [
"libssl.a",
"libcrypto.a"
@@ -962,6 +978,11 @@
},
"unixodbc": {
"source": "unixodbc",
"pkg-configs": [
"odbc",
"odbccr",
"odbcinst"
],
"static-libs-unix": [
"libodbc.a",
"libodbccr.a",
@@ -1003,6 +1024,9 @@
},
"zlib": {
"source": "zlib",
"pkg-configs": [
"zlib"
],
"static-libs-unix": [
"libz.a"
],
@@ -1016,6 +1040,9 @@
},
"zstd": {
"source": "zstd",
"pkg-configs": [
"libzstd"
],
"static-libs-unix": [
"libzstd.a"
],

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,95 +0,0 @@
{
"vswhere": {
"type": "target",
"artifact": "vswhere"
},
"pkg-config": {
"type": "target",
"static-bins": [
"pkg-config"
],
"artifact": "pkg-config"
},
"php": {
"type": "target",
"artifact": "php-src",
"depends@macos": [
"libxml2"
]
},
"php-cli": {
"type": "virtual-target",
"depends": [
"php"
]
},
"php-micro": {
"type": "virtual-target",
"artifact": "micro",
"depends": [
"php"
]
},
"php-cgi": {
"type": "virtual-target",
"depends": [
"php"
]
},
"php-fpm": {
"type": "virtual-target",
"depends": [
"php"
]
},
"php-embed": {
"type": "virtual-target",
"depends": [
"php"
]
},
"frankenphp": {
"type": "virtual-target",
"artifact": "frankenphp",
"depends": [
"php-embed",
"go-xcaddy"
],
"depends@macos": [
"php-embed",
"go-xcaddy",
"libxml2"
]
},
"go-xcaddy": {
"type": "target",
"artifact": "go-xcaddy",
"static-bins": [
"xcaddy"
]
},
"musl-toolchain": {
"type": "target",
"artifact": "musl-toolchain"
},
"strawberry-perl": {
"type": "target",
"artifact": "strawberry-perl"
},
"upx": {
"type": "target",
"artifact": "upx"
},
"zig": {
"type": "target",
"artifact": "zig"
},
"nasm": {
"type": "target",
"artifact": "nasm"
},
"php-sdk-binary-tools": {
"type": "target",
"artifact": "php-sdk-binary-tools"
}
}

View File

@@ -0,0 +1,348 @@
ext-bcmath:
type: php-extension
ext-bz2:
type: php-extension
depends:
- bzip2
php-extension:
arg-type@unix: with-path
arg-type@windows: with
ext-calendar:
type: php-extension
ext-ctype:
type: php-extension
ext-curl:
type: php-extension
depends:
- curl
depends@windows:
- curl
- ext-zlib
- ext-openssl
php-extension:
arg-type: with
ext-dba:
type: php-extension
suggests:
- qdbm
php-extension:
arg-type: custom
ext-dom:
type: php-extension
depends:
- libxml2
- ext-xml
php-extension:
arg-type: '--enable-dom@shared_suffix@ --with-libxml=@build_root_path@'
arg-type@windows: with
ext-exif:
type: php-extension
ext-ffi:
type: php-extension
depends@unix:
- libffi
php-extension:
arg-type@unix: '--with-ffi=@shared_suffix@ --enable-zend-signals'
arg-type@windows: with
ext-fileinfo:
type: php-extension
ext-filter:
type: php-extension
ext-ftp:
type: php-extension
suggests:
- ext-openssl
ext-gd:
type: php-extension
depends:
- zlib
- libpng
- ext-zlib
suggests:
- libavif
- libwebp
- libjpeg
- freetype
php-extension:
arg-type: custom
ext-gettext:
type: php-extension
depends:
- gettext
php-extension:
arg-type: with-path
ext-gmp:
type: php-extension
depends:
- gmp
php-extension:
arg-type: with-path
ext-iconv:
type: php-extension
depends@unix:
- libiconv
php-extension:
arg-type@unix: with-path
arg-type@windows: with
ext-intl:
type: php-extension
depends@unix:
- icu
ext-ldap:
type: php-extension
depends:
- ldap
suggests:
- gmp
- libsodium
- ext-openssl
php-extension:
arg-type: with-path
ext-libxml:
type: php-extension
depends:
- ext-xml
php-extension:
build-with-php: true
build-shared: false
arg-type: none
ext-mbregex:
type: php-extension
depends:
- onig
- ext-mbstring
php-extension:
arg-type: custom
build-shared: false
build-static: true
display-name: mbstring
ext-mbstring:
type: php-extension
php-extension:
arg-type: custom
ext-mysqli:
type: php-extension
depends:
- ext-mysqlnd
php-extension:
arg-type: with
build-with-php: true
ext-mysqlnd:
type: php-extension
depends:
- zlib
php-extension:
arg-type@unix: enable
arg-type@windows: with
build-with-php: true
ext-odbc:
type: php-extension
depends@unix:
- unixodbc
php-extension:
arg-type@unix: '--with-unixODBC@shared_path_suffix@'
ext-opcache:
type: php-extension
php-extension:
arg-type@unix: custom
arg-type@windows: enable
zend-extension: true
display-name: 'Zend Opcache'
ext-openssl:
type: php-extension
depends:
- openssl
- zlib
- ext-zlib
php-extension:
arg-type: custom
arg-type@windows: with
build-with-php: true
ext-password-argon2:
type: php-extension
depends:
- libargon2
- ext-openssl
php-extension:
arg-type: custom
display-name: ''
ext-pcntl:
type: php-extension
ext-pdo:
type: php-extension
ext-pdo_mysql:
type: php-extension
depends:
- ext-pdo
- ext-mysqlnd
php-extension:
arg-type: with
ext-pdo_odbc:
type: php-extension
depends:
- ext-pdo
- ext-odbc
depends@unix:
- unixodbc
- ext-pdo
- ext-odbc
php-extension:
arg-type: custom
ext-pdo_pgsql:
type: php-extension
depends@unix:
- ext-pdo
- ext-pgsql
- postgresql
php-extension:
arg-type@unix: with-path
arg-type@windows: '--with-pdo-pgsql=yes'
ext-pdo_sqlite:
type: php-extension
depends:
- ext-pdo
- ext-sqlite3
- sqlite
php-extension:
arg-type: with
ext-pgsql:
type: php-extension
depends@unix:
- postgresql
php-extension:
arg-type: custom
ext-phar:
type: php-extension
depends:
- zlib
ext-posix:
type: php-extension
ext-readline:
type: php-extension
depends:
- libedit
php-extension:
support:
Windows: wip
BSD: wip
arg-type: '--with-libedit --without-readline'
build-shared: false
build-static: true
ext-session:
type: php-extension
ext-shmop:
type: php-extension
php-extension:
build-with-php: true
ext-simplexml:
type: php-extension
depends:
- ext-xml
php-extension:
arg-type@unix: '--enable-simplexml@shared_suffix@ --with-libxml=@build_root_path@'
arg-type@windows: with
build-with-php: true
ext-snmp:
type: php-extension
depends:
- net-snmp
php-extension:
arg-type: with
ext-soap:
type: php-extension
depends:
- ext-xml
- ext-session
php-extension:
arg-type@unix: '--enable-soap@shared_suffix@ --with-libxml=@build_root_path@'
arg-type@windows: with
build-with-php: true
ext-sockets:
type: php-extension
ext-sodium:
type: php-extension
depends:
- libsodium
php-extension:
arg-type: with
ext-sqlite3:
type: php-extension
depends:
- sqlite
php-extension:
arg-type@unix: with-path
arg-type@windows: with
build-with-php: true
ext-sysvmsg:
type: php-extension
php-extension:
support:
Windows: 'no'
BSD: wip
ext-sysvsem:
type: php-extension
php-extension:
support:
Windows: 'no'
BSD: wip
ext-sysvshm:
type: php-extension
php-extension:
support:
BSD: wip
ext-tidy:
type: php-extension
depends:
- tidy
php-extension:
support:
Windows: wip
BSD: wip
arg-type: with-path
ext-tokenizer:
type: php-extension
php-extension:
build-with-php: true
ext-xml:
type: php-extension
depends:
- libxml2
depends@windows:
- libxml2
- ext-iconv
php-extension:
arg-type: '--enable-xml@shared_suffix@ --with-libxml=@build_root_path@'
arg-type@windows: with
build-with-php: true
ext-xmlreader:
type: php-extension
depends:
- libxml2
php-extension:
arg-type: '--enable-xmlreader@shared_suffix@ --with-libxml=@build_root_path@'
build-with-php: true
ext-xmlwriter:
type: php-extension
depends:
- libxml2
php-extension:
arg-type: '--enable-xmlwriter@shared_suffix@ --with-libxml=@build_root_path@'
build-with-php: true
ext-xsl:
type: php-extension
depends:
- libxslt
- ext-xml
- ext-dom
php-extension:
arg-type: with-path
build-with-php: true
ext-zlib:
type: php-extension
depends:
- zlib
php-extension:
arg-type: custom
arg-type@windows: enable
build-with-php: true
build-shared: false

View File

@@ -0,0 +1,17 @@
ext-amqp:
type: php-extension
artifact:
source:
type: pecl
name: amqp
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- librabbitmq
depends@windows:
- librabbitmq
- ext-openssl
php-extension:
arg-type: '--with-amqp@shared_suffix@ --with-librabbitmq-dir=@build_root_path@'
arg-type@windows: '--with-amqp'

View File

@@ -0,0 +1,9 @@
ext-apcu:
type: php-extension
artifact:
source:
type: pecl
name: APCu
metadata:
license-files: [LICENSE]
license: PHP-3.01

View File

@@ -0,0 +1,9 @@
ext-ast:
type: php-extension
artifact:
source:
type: pecl
name: ast
metadata:
license-files: [LICENSE]
license: BSD-3-Clause

View File

@@ -0,0 +1,13 @@
ext-brotli:
type: php-extension
artifact:
source:
type: git
extract: php-src/ext/brotli
rev: master
url: 'https://github.com/kjdev/php-ext-brotli'
metadata:
license-files: [LICENSE]
license: MIT
depends:
- brotli

View File

@@ -0,0 +1,9 @@
ext-dio:
type: php-extension
artifact:
source:
type: pecl
name: dio
metadata:
license-files: [LICENSE]
license: PHP-3.01

View File

@@ -0,0 +1,9 @@
ext-ds:
type: php-extension
artifact:
source:
type: pecl
name: ds
metadata:
license-files: [LICENSE]
license: MIT

13
config/pkg/ext/ext-ev.yml Normal file
View File

@@ -0,0 +1,13 @@
ext-ev:
type: php-extension
artifact:
source:
type: pecl
name: ev
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- ext-sockets
php-extension:
arg-type@windows: with

View File

@@ -0,0 +1,19 @@
ext-event:
type: php-extension
artifact:
source:
type: url
url: 'https://bitbucket.org/osmanov/pecl-event/get/3.1.4.tar.gz'
extract: php-src/ext/event
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- libevent
- ext-openssl
suggests:
- ext-sockets
php-extension:
support:
Windows: wip
arg-type: custom

View File

@@ -0,0 +1,9 @@
ext-excimer:
type: php-extension
artifact:
source:
type: pecl
name: excimer
metadata:
license-files: [LICENSE]
license: PHP-3.01

View File

@@ -0,0 +1,7 @@
ext-glfw:
type: php-extension
artifact: glfw
depends:
- glfw
php-extension:
arg-type@unix: '--enable-glfw --with-glfw-dir=@build_root_path@'

View File

@@ -0,0 +1,12 @@
ext-gmssl:
type: php-extension
artifact:
source:
type: ghtar
repo: gmssl/GmSSL-PHP
extract: php-src/ext/gmssl
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- gmssl

View File

@@ -0,0 +1,14 @@
ext-grpc:
type: php-extension
artifact:
source:
type: pecl
name: grpc
metadata:
license-files: [LICENSE]
license: Apache-2.0
depends:
- grpc
lang: cpp
php-extension:
arg-type@unix: enable-path

View File

@@ -0,0 +1,12 @@
ext-igbinary:
type: php-extension
artifact:
source:
type: pecl
name: igbinary
metadata:
license-files: [COPYING]
license: BSD-3-Clause
suggests:
- ext-session
- ext-apcu

View File

@@ -0,0 +1,13 @@
ext-imagick:
type: php-extension
artifact:
source:
type: pecl
name: imagick
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- imagemagick
php-extension:
arg-type: custom

View File

@@ -0,0 +1,15 @@
ext-imap:
type: php-extension
artifact:
source:
type: pecl
name: imap
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- imap
suggests:
- ext-openssl
php-extension:
arg-type: custom

View File

@@ -0,0 +1,9 @@
ext-inotify:
type: php-extension
artifact:
source:
type: pecl
name: inotify
metadata:
license-files: [LICENSE]
license: PHP-3.01

View File

@@ -0,0 +1,15 @@
ext-lz4:
type: php-extension
artifact:
source:
type: ghtagtar
repo: kjdev/php-ext-lz4
extract: php-src/ext/lz4
metadata:
license-files: [LICENSE]
license: MIT
depends:
- liblz4
php-extension:
arg-type@unix: '--enable-lz4=@shared_suffix@ --with-lz4-includedir=@build_root_path@'
arg-type@windows: '--enable-lz4'

View File

@@ -0,0 +1,13 @@
ext-maxminddb:
type: php-extension
artifact:
source:
type: pecl
name: maxminddb
metadata:
license-files: [LICENSE]
license: Apache-2.0
depends:
- libmaxminddb
php-extension:
arg-type: with

View File

@@ -0,0 +1,14 @@
ext-memcache:
type: php-extension
artifact:
source:
type: pecl
name: memcache
metadata:
license-files: [LICENSE]
license: PHP-3.0
depends:
- ext-zlib
- ext-session
php-extension:
arg-type: '--enable-memcache@shared_suffix@ --with-zlib-dir=@build_root_path@'

View File

@@ -0,0 +1,23 @@
ext-memcached:
type: php-extension
artifact:
source:
type: pecl
name: memcached
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- libmemcached
depends@unix:
- libmemcached
- fastlz
- ext-session
- ext-zlib
suggests:
- zstd
- ext-igbinary
- ext-msgpack
- ext-session
php-extension:
arg-type: '--enable-memcached@shared_suffix@ --with-zlib-dir=@build_root_path@'

View File

@@ -0,0 +1,21 @@
ext-mongodb:
type: php-extension
artifact:
source:
type: ghrel
repo: mongodb/mongo-php-driver
match: mongodb.+\.tgz
extract: php-src/ext/mongodb
metadata:
license-files: [LICENSE]
license: PHP-3.01
suggests:
- icu
- openssl
- zstd
- zlib
frameworks:
- CoreFoundation
- Security
php-extension:
arg-type: custom

View File

@@ -0,0 +1,14 @@
ext-msgpack:
type: php-extension
artifact:
source:
type: pecl
name: msgpack
metadata:
license-files: [LICENSE]
license: BSD-3-Clause
depends:
- ext-session
php-extension:
arg-type@unix: with
arg-type@windows: enable

View File

@@ -0,0 +1,18 @@
ext-mysqlnd_ed25519:
type: php-extension
artifact:
source:
type: pie
repo: mariadb/mysqlnd_ed25519
extract: php-src/ext/mysqlnd_ed25519
metadata:
license-files: [LICENSE]
license: BSD-3-Clause
depends:
- ext-mysqlnd
- libsodium
suggests:
- openssl
php-extension:
arg-type: '--with-mysqlnd_ed25519=@shared_suffix@'
build-static: false

View File

@@ -0,0 +1,17 @@
ext-mysqlnd_parsec:
type: php-extension
artifact:
source:
type: pie
repo: mariadb/mysqlnd_parsec
extract: php-src/ext/mysqlnd_parsec
metadata:
license-files: [LICENSE]
license: BSD-3-Clause
depends:
- ext-mysqlnd
- libsodium
- openssl
php-extension:
arg-type: '--enable-mysqlnd_parsec'
build-static: false

View File

@@ -0,0 +1,9 @@
ext-opentelemetry:
type: php-extension
artifact:
source:
type: pecl
name: opentelemetry
metadata:
license-files: [LICENSE]
license: Apache-2.0

View File

@@ -0,0 +1,9 @@
ext-parallel:
type: php-extension
artifact:
source:
type: pecl
name: parallel
metadata:
license-files: [LICENSE]
license: PHP-3.01

View File

@@ -0,0 +1,12 @@
ext-pcov:
type: php-extension
artifact:
source:
type: pecl
name: pcov
metadata:
license-files: [LICENSE]
license: PHP-3.01
php-extension:
build-static: false
build-shared: true

View File

@@ -0,0 +1,14 @@
ext-pdo_sqlsrv:
type: php-extension
artifact:
source:
type: pecl
name: pdo_sqlsrv
metadata:
license-files: [LICENSE]
license: MIT
depends:
- ext-pdo
- ext-sqlsrv
php-extension:
arg-type: with

View File

@@ -0,0 +1,9 @@
ext-protobuf:
type: php-extension
artifact:
source:
type: pecl
name: protobuf
metadata:
license-files: [LICENSE]
license: BSD-3-Clause

View File

@@ -0,0 +1,12 @@
ext-rar:
type: php-extension
artifact:
source:
type: git
url: 'https://github.com/static-php/php-rar.git'
rev: issue-php82
extract: php-src/ext/rar
metadata:
license-files: [LICENSE]
license: PHP-3.01
lang: cpp

View File

@@ -0,0 +1,15 @@
ext-rdkafka:
type: php-extension
artifact:
source:
type: ghtar
repo: arnaud-lb/php-rdkafka
extract: php-src/ext/rdkafka
metadata:
license-files: [LICENSE]
license: MIT
depends:
- librdkafka
lang: cpp
php-extension:
arg-type: custom

View File

@@ -0,0 +1,21 @@
ext-redis:
type: php-extension
artifact:
source:
type: pecl
name: redis
metadata:
license-files: [LICENSE]
license: PHP-3.01
suggests:
- ext-session
- ext-igbinary
- ext-msgpack
suggests@unix:
- ext-session
- ext-igbinary
- ext-msgpack
- zstd
- liblz4
php-extension:
arg-type: custom

View File

@@ -0,0 +1,10 @@
ext-simdjson:
type: php-extension
artifact:
source:
type: pecl
name: simdjson
metadata:
license-files: [LICENSE]
license: Apache-2.0
lang: cpp

View File

@@ -0,0 +1,18 @@
ext-snappy:
type: php-extension
artifact:
source:
type: git
url: 'https://github.com/kjdev/php-ext-snappy'
rev: master
extract: php-src/ext/snappy
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- snappy
suggests:
- ext-apcu
lang: cpp
php-extension:
arg-type@unix: '--enable-snappy --with-snappy-includedir=@build_root_path@'

View File

@@ -0,0 +1,14 @@
ext-spx:
type: php-extension
artifact:
source:
type: pie
repo: noisebynorthwest/php-spx
extract: php-src/ext/spx
metadata:
license-files: [LICENSE]
license: GPL-3.0-or-later
depends:
- ext-zlib
php-extension:
arg-type: '--enable-SPX@shared_suffix@'

View File

@@ -0,0 +1,15 @@
ext-sqlsrv:
type: php-extension
artifact:
source:
type: pecl
name: sqlsrv
metadata:
license-files: [LICENSE]
license: MIT
depends@linux:
- unixodbc
- ext-pcntl
depends@macos:
- unixodbc
lang: cpp

View File

@@ -0,0 +1,15 @@
ext-ssh2:
type: php-extension
artifact:
source:
type: pecl
name: ssh2
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- libssh2
- ext-openssl
- ext-zlib
php-extension:
arg-type: with-path

View File

@@ -0,0 +1,72 @@
ext-swoole:
type: php-extension
artifact:
source:
type: ghtar
repo: swoole/swoole-src
extract: php-src/ext/swoole
match: v6\.+
prefer-stable: true
metadata:
license-files: [LICENSE]
license: Apache-2.0
depends:
- libcares
- brotli
- nghttp2
- zlib
- ext-openssl
- ext-curl
suggests:
- zstd
- ext-sockets
- ext-swoole-hook-pgsql
- ext-swoole-hook-mysql
- ext-swoole-hook-sqlite
- ext-swoole-hook-odbc
suggests@linux:
- zstd
- liburing
- ext-sockets
- ext-swoole-hook-pgsql
- ext-swoole-hook-mysql
- ext-swoole-hook-sqlite
- ext-swoole-hook-odbc
lang: cpp
php-extension:
arg-type: custom
ext-swoole-hook-mysql:
type: php-extension
depends:
- ext-mysqlnd
- ext-pdo
- ext-pdo_mysql
suggests:
- ext-mysqli
php-extension:
arg-type: none
display-name: swoole
ext-swoole-hook-odbc:
type: php-extension
depends:
- ext-pdo
- unixodbc
php-extension:
arg-type: none
display-name: swoole
ext-swoole-hook-pgsql:
type: php-extension
depends:
- ext-pgsql
- ext-pdo
php-extension:
arg-type: none
display-name: swoole
ext-swoole-hook-sqlite:
type: php-extension
depends:
- ext-sqlite3
- ext-pdo
php-extension:
arg-type: none
display-name: swoole

View File

@@ -0,0 +1,18 @@
ext-swow:
type: php-extension
artifact:
source:
extract: php-src/ext/swow-src
type: ghtar
repo: swow/swow
prefer-stable: true
metadata:
license: Apache-2.0
license-files: [LICENSE]
suggests:
- openssl
- curl
- ext-openssl
- ext-curl
php-extension:
arg-type: custom

View File

@@ -0,0 +1,14 @@
ext-trader:
type: php-extension
artifact:
source:
type: pecl
name: trader
metadata:
license-files: [LICENSE]
license: BSD-2-Clause
php-extension:
support:
BSD: wip
Windows: wip
arg-type: enable

View File

@@ -0,0 +1,16 @@
ext-uuid:
type: php-extension
artifact:
source:
type: pecl
name: uuid
metadata:
license-files: [LICENSE]
license: LGPL-2.1-only
depends:
- libuuid
php-extension:
support:
Windows: wip
BSD: wip
arg-type: with-path

18
config/pkg/ext/ext-uv.yml Normal file
View File

@@ -0,0 +1,18 @@
ext-uv:
type: php-extension
artifact:
source:
type: pecl
name: uv
prefer-stable: false
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- libuv
- ext-sockets
php-extension:
support:
Windows: wip
BSD: wip
arg-type: with-path

View File

@@ -0,0 +1,14 @@
ext-xdebug:
type: php-extension
artifact:
source:
type: pie
repo: xdebug/xdebug
metadata:
license-files: [LICENSE]
license: Xdebug-1.03
php-extension:
zend-extension: true
build-static: false
build-shared: true
build-with-php: false

View File

@@ -0,0 +1,18 @@
ext-xhprof:
type: php-extension
artifact:
source:
type: pecl
name: xhprof
extract: php-src/ext/xhprof-src
metadata:
license-files: [LICENSE]
license: Apache-2.0
depends:
- ext-ctype
php-extension:
support:
Windows: wip
BSD: wip
arg-type: enable
build-with-php: true

View File

@@ -0,0 +1,18 @@
ext-xlswriter:
type: php-extension
artifact:
source:
type: pecl
name: xlswriter
metadata:
license-files: [LICENSE]
license: BSD-2-Clause
depends:
- ext-zlib
- ext-zip
suggests:
- openssl
php-extension:
support:
BSD: wip
arg-type: custom

15
config/pkg/ext/ext-xz.yml Normal file
View File

@@ -0,0 +1,15 @@
ext-xz:
type: php-extension
artifact:
source:
type: git
url: 'https://github.com/codemasher/php-ext-xz'
rev: main
extract: php-src/ext/xz
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends:
- xz
php-extension:
arg-type: with-path

View File

@@ -0,0 +1,14 @@
ext-yac:
type: php-extension
artifact:
source:
type: pecl
name: yac
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends@unix:
- fastlz
- ext-igbinary
php-extension:
arg-type@unix: '--enable-yac@shared_suffix@ --enable-igbinary --enable-json --with-system-fastlz'

View File

@@ -0,0 +1,16 @@
ext-yaml:
type: php-extension
artifact:
source:
type: git
url: 'https://github.com/php/pecl-file_formats-yaml'
rev: php7
extract: php-src/ext/yaml
metadata:
license-files: [LICENSE]
license: MIT
depends:
- libyaml
php-extension:
arg-type@unix: with-path
arg-type@windows: with

View File

@@ -0,0 +1,17 @@
ext-zip:
type: php-extension
artifact:
source:
type: pecl
name: zip
extract: ext-zip
metadata:
license-files: [LICENSE]
license: PHP-3.01
depends@unix:
- libzip
php-extension:
support:
BSD: wip
arg-type: custom
arg-type@windows: enable

View File

@@ -0,0 +1,15 @@
ext-zstd:
type: php-extension
artifact:
source:
type: git
url: 'https://github.com/kjdev/php-ext-zstd'
rev: master
extract: php-src/ext/zstd
metadata:
license-files: [LICENSE]
license: MIT
depends:
- zstd
php-extension:
arg-type: '--enable-zstd --with-libzstd=@build_root_path@'

10
config/pkg/lib/attr.yml Normal file
View File

@@ -0,0 +1,10 @@
attr:
type: library
artifact:
source: 'https://download.savannah.nongnu.org/releases/attr/attr-2.5.2.tar.gz'
source-mirror: 'https://mirror.souseiseki.middlendian.com/nongnu/attr/attr-2.5.2.tar.gz'
metadata:
license-files: [doc/COPYING.LGPL]
license: LGPL-2.1-or-later
static-libs@unix:
- libattr.a

21
config/pkg/lib/brotli.yml Normal file
View File

@@ -0,0 +1,21 @@
brotli:
type: library
artifact:
source:
type: ghtagtar
repo: google/brotli
match: 'v1\.\d.*'
binary: hosted
metadata:
license-files: [LICENSE]
license: MIT
headers:
- brotli
pkg-configs:
- libbrotlicommon
- libbrotlidec
- libbrotlienc
static-libs@windows:
- brotlicommon.lib
- brotlidec.lib
- brotlienc.lib

21
config/pkg/lib/bzip2.yml Normal file
View File

@@ -0,0 +1,21 @@
bzip2:
type: library
artifact:
source:
type: url
url: 'https://dl.static-php.dev/static-php-cli/deps/bzip2/bzip2-1.0.8.tar.gz'
source-mirror:
type: filelist
url: 'https://sourceware.org/pub/bzip2/'
regex: '/href="(?<file>bzip2-(?<version>[^"]+)\.tar\.gz)"/'
binary: hosted
metadata:
license-files: ['@/bzip2.txt']
license: bzip2-1.0.6
headers:
- bzlib.h
static-libs@unix:
- libbz2.a
static-libs@windows:
- libbz2.lib
- libbz2_a.lib

14
config/pkg/lib/fastlz.yml Normal file
View File

@@ -0,0 +1,14 @@
fastlz:
type: library
artifact:
source:
type: git
url: 'https://github.com/ariya/FastLZ.git'
rev: master
metadata:
license-files: [LICENSE.MIT]
license: MIT
headers:
- fastlz.h
static-libs@unix:
- libfastlz.a

View File

@@ -0,0 +1,23 @@
freetype:
type: library
artifact:
source:
type: ghtagtar
repo: freetype/freetype
match: VER-2-\d+-\d+
metadata:
license-files: [LICENSE.TXT]
license: FTL
depends:
- zlib
suggests:
- libpng
- bzip2
- brotli
headers@unix:
- freetype2/freetype/freetype.h
- freetype2/ft2build.h
static-libs@unix:
- libfreetype.a
static-libs@windows:
- libfreetype_a.lib

View File

@@ -0,0 +1,19 @@
gettext:
type: library
artifact:
source:
type: filelist
url: 'https://ftp.gnu.org/pub/gnu/gettext/'
regex: '/href="(?<file>gettext-(?<version>[^"]+)\.tar\.xz)"/'
metadata:
license-files: [gettext-runtime/intl/COPYING.LIB]
license: LGPL-2.1-or-later
depends:
- libiconv
suggests:
- ncurses
- libxml2
frameworks:
- CoreFoundation
static-libs@unix:
- libintl.a

6
config/pkg/lib/glfw.yml Normal file
View File

@@ -0,0 +1,6 @@
glfw:
type: library
artifact: glfw
lang: cpp
static-libs@unix:
- libglfw3.a

19
config/pkg/lib/gmp.yml Normal file
View File

@@ -0,0 +1,19 @@
gmp:
type: library
artifact:
source:
type: filelist
url: 'https://ftp.gnu.org/gnu/gmp/'
regex: '/href="(?<file>gmp-(?<version>[^"]+)\.tar\.xz)"/'
source-mirror:
type: url
url: 'https://dl.static-php.dev/static-php-cli/deps/gmp/gmp-6.3.0.tar.xz'
metadata:
license-files: ['@/gmp.txt']
license: Custom
headers:
- gmp.h
pkg-configs:
- gmp
static-libs@unix:
- libgmp.a

15
config/pkg/lib/gmssl.yml Normal file
View File

@@ -0,0 +1,15 @@
gmssl:
type: library
artifact:
source:
type: ghtar
repo: guanzhi/GmSSL
metadata:
license-files: [LICENSE]
license: Apache-2.0
frameworks:
- Security
static-libs@unix:
- libgmssl.a
static-libs@windows:
- gmssl.lib

19
config/pkg/lib/grpc.yml Normal file
View File

@@ -0,0 +1,19 @@
grpc:
type: library
artifact:
source:
type: git
rev: v1.75.x
url: 'https://github.com/grpc/grpc.git'
metadata:
license-files: [LICENSE]
license: Apache-2.0
depends:
- zlib
- openssl
- libcares
frameworks:
- CoreFoundation
lang: cpp
pkg-configs:
- grpc

25
config/pkg/lib/icu.yml Normal file
View File

@@ -0,0 +1,25 @@
icu:
type: library
artifact:
source:
type: ghrel
repo: unicode-org/icu
match: icu4c.+-src\.tgz
prefer-stable: true
binary:
windows-x86_64: { type: url, url: 'https://dl.static-php.dev/static-php-cli/deps/icu-static-windows-x64/icu-static-windows-x64.zip', extract: hosted }
metadata:
license-files: ['@/icu.txt']
license: ICU
headers@windows:
- unicode
lang: cpp
pkg-configs:
- icu-uc
- icu-i18n
- icu-io
static-libs@windows:
- icudt.lib
- icuin.lib
- icuio.lib
- icuuc.lib

21
config/pkg/lib/idn2.yml Normal file
View File

@@ -0,0 +1,21 @@
idn2:
type: library
artifact:
source:
type: filelist
url: 'https://ftp.gnu.org/gnu/libidn/'
regex: '/href="(?<file>libidn2-(?<version>[^"]+)\.tar\.gz)"/'
metadata:
license-files: [COPYING.LESSERv3]
license: LGPL-3.0-or-later
depends@macos:
- libiconv
- gettext
suggests@unix:
- libiconv
- gettext
- libunistring
headers:
- idn2.h
pkg-configs:
- libidn2

View File

@@ -0,0 +1,28 @@
imagemagick:
type: library
artifact:
source:
type: ghtar
repo: ImageMagick/ImageMagick
metadata:
license-files: [LICENSE]
depends:
- zlib
- libjpeg
- libjxl
- libpng
- libwebp
- freetype
- libtiff
- libheif
- bzip2
suggests:
- zstd
- xz
- libzip
- libxml2
lang: cpp
pkg-configs:
- Magick++-7.Q16HDRI
- MagickCore-7.Q16HDRI
- MagickWand-7.Q16HDRI

13
config/pkg/lib/imap.yml Normal file
View File

@@ -0,0 +1,13 @@
imap:
type: library
artifact:
source:
type: git
url: 'https://github.com/static-php/imap.git'
rev: master
metadata:
license-files: [LICENSE]
suggests@unix:
- openssl
static-libs@unix:
- libc-client.a

15
config/pkg/lib/jbig.yml Normal file
View File

@@ -0,0 +1,15 @@
jbig:
type: library
artifact:
source: 'https://dl.static-php.dev/static-php-cli/deps/jbig/jbigkit-2.1.tar.gz'
source-mirror: 'https://www.cl.cam.ac.uk/~mgk25/jbigkit/download/jbigkit-2.1.tar.gz'
metadata:
license-files: [COPYING]
license: GPL-2.0-or-later
headers:
- jbig.h
- jbig85.h
- jbig_ar.h
static-libs@unix:
- libjbig.a
- libjbig85.a

23
config/pkg/lib/krb5.yml Normal file
View File

@@ -0,0 +1,23 @@
krb5:
type: library
artifact:
source:
type: ghtagtar
repo: krb5/krb5
match: krb5.+-final
metadata:
license-files: [NOTICE]
license: BSD-3-Clause
source-root: src
depends:
- openssl
suggests:
- ldap
- libedit
frameworks:
- Kerberos
headers:
- krb5.h
- gssapi/gssapi.h
pkg-configs:
- krb5-gssapi

17
config/pkg/lib/ldap.yml Normal file
View File

@@ -0,0 +1,17 @@
ldap:
type: library
artifact:
source:
type: filelist
url: 'https://www.openldap.org/software/download/OpenLDAP/openldap-release/'
regex: '/href="(?<file>openldap-(?<version>[^"]+)\.tgz)"/'
metadata:
license-files: [LICENSE]
depends:
- openssl
- zlib
- gmp
- libsodium
pkg-configs:
- ldap
- lber

12
config/pkg/lib/lerc.yml Normal file
View File

@@ -0,0 +1,12 @@
lerc:
type: library
artifact:
source:
type: ghtar
repo: Esri/lerc
prefer-stable: true
metadata:
license-files: [LICENSE]
lang: cpp
static-libs@unix:
- libLerc.a

12
config/pkg/lib/libacl.yml Normal file
View File

@@ -0,0 +1,12 @@
libacl:
type: library
artifact:
source: 'https://download.savannah.nongnu.org/releases/acl/acl-2.3.2.tar.gz'
source-mirror: 'https://mirror.souseiseki.middlendian.com/nongnu/acl/acl-2.3.2.tar.gz'
metadata:
license-files: [doc/COPYING.LGPL]
license: LGPL-2.1-or-later
depends:
- attr
static-libs@unix:
- libacl.a

14
config/pkg/lib/libaom.yml Normal file
View File

@@ -0,0 +1,14 @@
libaom:
type: library
artifact:
source:
type: git
rev: main
url: 'https://aomedia.googlesource.com/aom'
metadata:
license-files: [LICENSE]
lang: cpp
static-libs@unix:
- libaom.a
static-libs@windows:
- aom.lib

View File

@@ -0,0 +1,14 @@
libargon2:
type: library
artifact:
source:
type: git
rev: master
url: 'https://github.com/static-php/phc-winner-argon2'
metadata:
license-files: [LICENSE]
license: BSD-2-Clause
suggests:
- libsodium
static-libs@unix:
- libargon2.a

View File

@@ -0,0 +1,20 @@
libavif:
type: library
artifact:
source:
type: ghtar
repo: AOMediaCodec/libavif
metadata:
license-files: [LICENSE]
license: BSD-2-Clause
depends:
- libaom
suggests:
- libwebp
- libjpeg
- libxml2
- libpng
static-libs@unix:
- libavif.a
static-libs@windows:
- avif.lib

View File

@@ -0,0 +1,23 @@
libcares:
type: library
artifact:
source:
type: ghrel
repo: c-ares/c-ares
match: c-ares-.+\.tar\.gz
prefer-stable: true
source-mirror:
type: filelist
url: 'https://c-ares.org/download/'
regex: '/href="\/download\/(?<file>c-ares-(?<version>[^"]+)\.tar\.gz)"/'
binary: hosted
metadata:
license-files: [LICENSE.md]
headers@unix:
- ares.h
- ares_dns.h
- ares_nameser.h
pkg-configs:
- libcares
static-libs@unix:
- libcares.a

Some files were not shown because too many files have changed in this diff Show More