Skip to content

Commit 00649d8

Browse files
authored
[3.0] Refactor new extensions (#1051)
2 parents 705435e + 11376cc commit 00649d8

File tree

139 files changed

+3498
-258
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

139 files changed

+3498
-258
lines changed

config/artifact/ncurses.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
ncurses:
2+
binary: hosted
3+
metadata:
4+
license-files:
5+
- COPYING
6+
source:
7+
type: filelist
8+
url: 'https://ftp.gnu.org/pub/gnu/ncurses/'
9+
regex: '/href="(?<file>ncurses-(?<version>[^"]+)\.tar\.gz)"/'

config/env.ini

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,8 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --disable
121121
SPC_CMD_VAR_PHP_EMBED_TYPE="static"
122122
; EXTRA_CFLAGS for `configure` and `make` php
123123
SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fno-ident -fPIE ${SPC_DEFAULT_C_FLAGS}"
124+
; EXTRA_CXXFLAGS for `configure` and `make` php
125+
SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fPIE ${SPC_DEFAULT_CXX_FLAGS}"
124126
; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.so
125127
SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS=""
126128

@@ -155,5 +157,9 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --enable-
155157
SPC_CMD_VAR_PHP_EMBED_TYPE="static"
156158
; EXTRA_CFLAGS for `configure` and `make` php
157159
SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fpic -fpie -Werror=unknown-warning-option ${SPC_DEFAULT_C_FLAGS}"
160+
; EXTRA_CXXFLAGS for `configure` and `make` php
161+
SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fpie -Werror=unknown-warning-option ${SPC_DEFAULT_CXX_FLAGS}"
162+
; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.dylib
163+
SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS=""
158164
; minimum compatible macOS version (LLVM vars, availability not guaranteed)
159165
MACOSX_DEPLOYMENT_TARGET=12.0

config/pkg/ext/builtin-extensions.yml

Lines changed: 298 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,110 @@
11
ext-bcmath:
22
type: php-extension
3+
ext-bz2:
4+
type: php-extension
5+
depends:
6+
- bzip2
7+
php-extension:
8+
arg-type@unix: with-path
9+
arg-type@windows: with
10+
ext-calendar:
11+
type: php-extension
12+
ext-ctype:
13+
type: php-extension
14+
ext-curl:
15+
type: php-extension
16+
depends:
17+
- curl
18+
depends@windows:
19+
- ext-zlib
20+
- ext-openssl
21+
php-extension:
22+
arg-type: with
23+
ext-dba:
24+
type: php-extension
25+
suggests:
26+
- qdbm
27+
php-extension:
28+
arg-type: custom
29+
ext-dom:
30+
type: php-extension
31+
depends:
32+
- libxml2
33+
- ext-xml
34+
php-extension:
35+
arg-type: '--enable-dom@shared_suffix@ --with-libxml=@build_root_path@'
36+
arg-type@windows: with
37+
ext-exif:
38+
type: php-extension
39+
ext-ffi:
40+
type: php-extension
41+
depends@unix:
42+
- libffi
43+
php-extension:
44+
arg-type@unix: '--with-ffi=@shared_suffix@ --enable-zend-signals'
45+
arg-type@windows: with
46+
ext-fileinfo:
47+
type: php-extension
48+
ext-filter:
49+
type: php-extension
50+
ext-ftp:
51+
type: php-extension
52+
suggests:
53+
- ext-openssl
54+
ext-gd:
55+
type: php-extension
56+
depends:
57+
- zlib
58+
- libpng
59+
- ext-zlib
60+
suggests:
61+
- libavif
62+
- libwebp
63+
- libjpeg
64+
- freetype
65+
php-extension:
66+
arg-type: custom
67+
ext-gettext:
68+
type: php-extension
69+
depends:
70+
- gettext
71+
php-extension:
72+
arg-type: with-path
73+
ext-gmp:
74+
type: php-extension
75+
depends:
76+
- gmp
77+
php-extension:
78+
arg-type: with-path
79+
ext-iconv:
80+
type: php-extension
81+
depends@unix:
82+
- libiconv
83+
php-extension:
84+
arg-type@unix: with-path
85+
arg-type@windows: with
86+
ext-intl:
87+
type: php-extension
88+
depends@unix:
89+
- icu
90+
ext-ldap:
91+
type: php-extension
92+
depends:
93+
- ldap
94+
suggests:
95+
- gmp
96+
- libsodium
97+
- ext-openssl
98+
php-extension:
99+
arg-type: with-path
100+
ext-libxml:
101+
type: php-extension
102+
depends:
103+
- ext-xml
104+
php-extension:
105+
build-with-php: true
106+
build-shared: false
107+
arg-type: none
3108
ext-mbregex:
4109
type: php-extension
5110
depends:
@@ -14,6 +119,34 @@ ext-mbstring:
14119
type: php-extension
15120
php-extension:
16121
arg-type: custom
122+
ext-mysqli:
123+
type: php-extension
124+
depends:
125+
- ext-mysqlnd
126+
php-extension:
127+
arg-type: with
128+
build-with-php: true
129+
ext-mysqlnd:
130+
type: php-extension
131+
depends:
132+
- zlib
133+
php-extension:
134+
arg-type@unix: enable
135+
arg-type@windows: with
136+
build-with-php: true
137+
ext-odbc:
138+
type: php-extension
139+
depends@unix:
140+
- unixodbc
141+
php-extension:
142+
arg-type@unix: '--with-unixODBC@shared_path_suffix@'
143+
ext-opcache:
144+
type: php-extension
145+
php-extension:
146+
arg-type@unix: custom
147+
arg-type@windows: enable
148+
zend-extension: true
149+
display-name: 'Zend Opcache'
17150
ext-openssl:
18151
type: php-extension
19152
depends:
@@ -24,10 +157,65 @@ ext-openssl:
24157
arg-type: custom
25158
arg-type@windows: with
26159
build-with-php: true
160+
ext-password-argon2:
161+
type: php-extension
162+
depends:
163+
- libargon2
164+
- ext-openssl
165+
php-extension:
166+
arg-type: custom
167+
display-name: ''
168+
ext-pcntl:
169+
type: php-extension
170+
ext-pdo:
171+
type: php-extension
172+
ext-pdo_mysql:
173+
type: php-extension
174+
depends:
175+
- ext-pdo
176+
- ext-mysqlnd
177+
php-extension:
178+
arg-type: with
179+
ext-pdo_odbc:
180+
type: php-extension
181+
depends:
182+
- ext-pdo
183+
- ext-odbc
184+
depends@unix:
185+
- unixodbc
186+
- ext-pdo
187+
- ext-odbc
188+
php-extension:
189+
arg-type: custom
190+
ext-pdo_pgsql:
191+
type: php-extension
192+
depends@unix:
193+
- ext-pdo
194+
- ext-pgsql
195+
- postgresql
196+
php-extension:
197+
arg-type@unix: with-path
198+
arg-type@windows: '--with-pdo-pgsql=yes'
199+
ext-pdo_sqlite:
200+
type: php-extension
201+
depends:
202+
- ext-pdo
203+
- ext-sqlite3
204+
- sqlite
205+
php-extension:
206+
arg-type: with
207+
ext-pgsql:
208+
type: php-extension
209+
depends@unix:
210+
- postgresql
211+
php-extension:
212+
arg-type: custom
27213
ext-phar:
28214
type: php-extension
29215
depends:
30216
- zlib
217+
ext-posix:
218+
type: php-extension
31219
ext-readline:
32220
type: php-extension
33221
depends:
@@ -36,9 +224,118 @@ ext-readline:
36224
support:
37225
Windows: wip
38226
BSD: wip
39-
arg-type: with-path
227+
arg-type: '--with-libedit --without-readline'
40228
build-shared: false
41229
build-static: true
230+
ext-session:
231+
type: php-extension
232+
ext-shmop:
233+
type: php-extension
234+
php-extension:
235+
build-with-php: true
236+
ext-simplexml:
237+
type: php-extension
238+
depends:
239+
- ext-xml
240+
php-extension:
241+
arg-type@unix: '--enable-simplexml@shared_suffix@ --with-libxml=@build_root_path@'
242+
arg-type@windows: with
243+
build-with-php: true
244+
ext-snmp:
245+
type: php-extension
246+
depends:
247+
- net-snmp
248+
php-extension:
249+
arg-type: with
250+
ext-soap:
251+
type: php-extension
252+
depends:
253+
- ext-xml
254+
- ext-session
255+
php-extension:
256+
arg-type@unix: '--enable-soap@shared_suffix@ --with-libxml=@build_root_path@'
257+
arg-type@windows: with
258+
build-with-php: true
259+
ext-sockets:
260+
type: php-extension
261+
ext-sodium:
262+
type: php-extension
263+
depends:
264+
- libsodium
265+
php-extension:
266+
arg-type: with
267+
ext-sqlite3:
268+
type: php-extension
269+
depends:
270+
- sqlite
271+
php-extension:
272+
arg-type@unix: with-path
273+
arg-type@windows: with
274+
build-with-php: true
275+
ext-sysvmsg:
276+
type: php-extension
277+
php-extension:
278+
support:
279+
Windows: 'no'
280+
BSD: wip
281+
ext-sysvsem:
282+
type: php-extension
283+
php-extension:
284+
support:
285+
Windows: 'no'
286+
BSD: wip
287+
ext-sysvshm:
288+
type: php-extension
289+
php-extension:
290+
support:
291+
BSD: wip
292+
ext-tidy:
293+
type: php-extension
294+
depends:
295+
- tidy
296+
php-extension:
297+
support:
298+
Windows: wip
299+
BSD: wip
300+
arg-type: with-path
301+
ext-tokenizer:
302+
type: php-extension
303+
php-extension:
304+
build-with-php: true
305+
ext-xml:
306+
type: php-extension
307+
depends:
308+
- libxml2
309+
depends@windows:
310+
- libxml2
311+
- ext-iconv
312+
php-extension:
313+
arg-type: '--enable-xml@shared_suffix@ --with-libxml=@build_root_path@'
314+
arg-type@windows: with
315+
build-with-php: true
316+
ext-xmlreader:
317+
type: php-extension
318+
depends:
319+
- libxml2
320+
php-extension:
321+
arg-type: '--enable-xmlreader@shared_suffix@ --with-libxml=@build_root_path@'
322+
build-with-php: true
323+
ext-xmlwriter:
324+
type: php-extension
325+
depends:
326+
- libxml2
327+
php-extension:
328+
arg-type: '--enable-xmlwriter@shared_suffix@ --with-libxml=@build_root_path@'
329+
build-with-php: true
330+
ext-xsl:
331+
type: php-extension
332+
depends:
333+
- libxslt
334+
- ext-xml
335+
- ext-dom
336+
php-extension:
337+
arg-type: with-path
338+
build-with-php: true
42339
ext-zlib:
43340
type: php-extension
44341
depends:

config/pkg/ext/ext-ast.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@ ext-ast:
44
source:
55
type: pecl
66
name: ast
7+
metadata:
8+
license-files: [LICENSE]
9+
license: BSD-3-Clause

config/pkg/ext/ext-brotli.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
ext-brotli:
2+
type: php-extension
3+
artifact:
4+
source:
5+
type: git
6+
extract: php-src/ext/brotli
7+
rev: master
8+
url: 'https://github.com/kjdev/php-ext-brotli'
9+
metadata:
10+
license-files: [LICENSE]
11+
license: MIT
12+
depends:
13+
- brotli

config/pkg/ext/ext-dio.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
ext-dio:
2+
type: php-extension
3+
artifact:
4+
source:
5+
type: pecl
6+
name: dio
7+
metadata:
8+
license-files: [LICENSE]
9+
license: PHP-3.01

0 commit comments

Comments
 (0)