Skip to content

Commit 75cfd7e

Browse files
authored
3.0 Enhancement
2 parents c1c31a7 + a0cab24 commit 75cfd7e

Some content is hidden

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

63 files changed

+1874
-1459
lines changed

bin/spc-alpine-docker

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,7 @@ RUN apk update; \
108108
wget \
109109
xz \
110110
gettext-dev \
111-
binutils-gold \
112-
patchelf
111+
binutils-gold
113112
114113
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 && \
115114
chmod +x /usr/local/bin/php

bin/spc-gnu-docker

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -92,11 +92,6 @@ RUN echo "source scl_source enable devtoolset-10" >> /etc/bashrc
9292
RUN source /etc/bashrc
9393
RUN yum install -y which
9494
95-
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 && \
96-
mkdir -p /patchelf && \
97-
tar -xzf patchelf.tgz -C /patchelf --strip-components=1 && \
98-
cp /patchelf/bin/patchelf /usr/bin/
99-
10095
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 && \
10196
mkdir /cmake && \
10297
tar -xzf cmake.tgz -C /cmake --strip-components 1

config/artifact.json

Lines changed: 138 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -1,135 +1,4 @@
11
{
2-
"vswhere": {
3-
"binary": {
4-
"windows-x86_64": {
5-
"type": "url",
6-
"url": "https://github.com/microsoft/vswhere/releases/download/3.1.7/vswhere.exe",
7-
"extract": "{pkg_root_path}/bin/vswhere.exe"
8-
}
9-
}
10-
},
11-
"musl-wrapper": {
12-
"source": "https://musl.libc.org/releases/musl-1.2.5.tar.gz"
13-
},
14-
"php-src": {
15-
"source": {
16-
"type": "php-release"
17-
}
18-
},
19-
"php-sdk-binary-tools": {
20-
"binary": {
21-
"windows-x86_64": {
22-
"type": "git",
23-
"rev": "master",
24-
"url": "https://github.com/php/php-sdk-binary-tools.git",
25-
"extract": "{php_sdk_path}"
26-
}
27-
}
28-
},
29-
"go-xcaddy": {
30-
"binary": "custom"
31-
},
32-
"musl-toolchain": {
33-
"binary": {
34-
"linux-x86_64": {
35-
"type": "url",
36-
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/x86_64-musl-toolchain.tgz",
37-
"extract": "{pkg_root_path}/musl-toolchain"
38-
},
39-
"linux-aarch64": {
40-
"type": "url",
41-
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/aarch64-musl-toolchain.tgz",
42-
"extract": "{pkg_root_path}/musl-toolchain"
43-
}
44-
}
45-
},
46-
"pkg-config": {
47-
"source": "https://dl.static-php.dev/static-php-cli/deps/pkg-config/pkg-config-0.29.2.tar.gz",
48-
"binary": {
49-
"linux-x86_64": {
50-
"type": "ghrel",
51-
"repo": "static-php/static-php-cli-hosted",
52-
"match": "pkg-config-aarch64-linux-musl-1.2.5.txz",
53-
"extract": {
54-
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
55-
}
56-
},
57-
"linux-aarch64": {
58-
"type": "ghrel",
59-
"repo": "static-php/static-php-cli-hosted",
60-
"match": "pkg-config-x86_64-linux-musl-1.2.5.txz",
61-
"extract": {
62-
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
63-
}
64-
},
65-
"macos-x86_64": {
66-
"type": "ghrel",
67-
"repo": "static-php/static-php-cli-hosted",
68-
"match": "pkg-config-x86_64-darwin.txz",
69-
"extract": {
70-
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
71-
}
72-
},
73-
"macos-aarch64": {
74-
"type": "ghrel",
75-
"repo": "static-php/static-php-cli-hosted",
76-
"match": "pkg-config-aarch64-darwin.txz",
77-
"extract": "{pkg_root_path}"
78-
}
79-
}
80-
},
81-
"strawberry-perl": {
82-
"binary": {
83-
"windows-x86_64": {
84-
"type": "url",
85-
"url": "https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_5380_5361/strawberry-perl-5.38.0.1-64bit-portable.zip",
86-
"extract": "{pkg_root_path}/strawberry-perl"
87-
}
88-
}
89-
},
90-
"upx": {
91-
"binary": {
92-
"linux-x86_64": {
93-
"type": "ghrel",
94-
"repo": "upx/upx",
95-
"match": "upx.+-amd64_linux\\.tar\\.xz",
96-
"extract": {
97-
"upx": "{pkg_root_path}/bin/upx"
98-
}
99-
},
100-
"linux-aarch64": {
101-
"type": "ghrel",
102-
"repo": "upx/upx",
103-
"match": "upx.+-arm64_linux\\.tar\\.xz",
104-
"extract": {
105-
"upx": "{pkg_root_path}/bin/upx"
106-
}
107-
},
108-
"windows-x86_64": {
109-
"type": "ghrel",
110-
"repo": "upx/upx",
111-
"match": "upx.+-win64\\.zip",
112-
"extract": {
113-
"upx.exe": "{pkg_root_path}/bin/upx.exe"
114-
}
115-
}
116-
}
117-
},
118-
"zig": {
119-
"binary": "custom"
120-
},
121-
"nasm": {
122-
"binary": {
123-
"windows-x86_64": {
124-
"type": "url",
125-
"url": "https://dl.static-php.dev/static-php-cli/deps/nasm/nasm-2.16.01-win64.zip",
126-
"extract": {
127-
"nasm.exe": "{php_sdk_path}/bin/nasm.exe",
128-
"ndisasm.exe": "{php_sdk_path}/bin/ndisasm.exe"
129-
}
130-
}
131-
}
132-
},
1332
"amqp": {
1343
"source": {
1354
"type": "url",
@@ -395,6 +264,9 @@
395264
"repo": "guanzhi/GmSSL"
396265
}
397266
},
267+
"go-xcaddy": {
268+
"binary": "custom"
269+
},
398270
"grpc": {
399271
"binary": "hosted",
400272
"source": {
@@ -733,13 +605,6 @@
733605
"extract": "php-src/ext/memcached"
734606
}
735607
},
736-
"mimalloc": {
737-
"source": {
738-
"type": "ghtagtar",
739-
"repo": "microsoft/mimalloc",
740-
"match": "v2\\.\\d\\.[^3].*"
741-
}
742-
},
743608
"micro": {
744609
"source": {
745610
"type": "git",
@@ -748,6 +613,13 @@
748613
"url": "https://github.com/static-php/phpmicro"
749614
}
750615
},
616+
"mimalloc": {
617+
"source": {
618+
"type": "ghtagtar",
619+
"repo": "microsoft/mimalloc",
620+
"match": "v2\\.\\d\\.[^3].*"
621+
}
622+
},
751623
"mongodb": {
752624
"source": {
753625
"type": "ghrel",
@@ -765,6 +637,35 @@
765637
"extract": "php-src/ext/msgpack"
766638
}
767639
},
640+
"musl-toolchain": {
641+
"binary": {
642+
"linux-x86_64": {
643+
"type": "url",
644+
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/x86_64-musl-toolchain.tgz",
645+
"extract": "{pkg_root_path}/musl-toolchain"
646+
},
647+
"linux-aarch64": {
648+
"type": "url",
649+
"url": "https://dl.static-php.dev/static-php-cli/deps/musl-toolchain/aarch64-musl-toolchain.tgz",
650+
"extract": "{pkg_root_path}/musl-toolchain"
651+
}
652+
}
653+
},
654+
"musl-wrapper": {
655+
"source": "https://musl.libc.org/releases/musl-1.2.5.tar.gz"
656+
},
657+
"nasm": {
658+
"binary": {
659+
"windows-x86_64": {
660+
"type": "url",
661+
"url": "https://dl.static-php.dev/static-php-cli/deps/nasm/nasm-2.16.01-win64.zip",
662+
"extract": {
663+
"nasm.exe": "{php_sdk_path}/bin/nasm.exe",
664+
"ndisasm.exe": "{php_sdk_path}/bin/ndisasm.exe"
665+
}
666+
}
667+
}
668+
},
768669
"ncurses": {
769670
"binary": "hosted",
770671
"source": {
@@ -850,6 +751,56 @@
850751
"extract": "php-src/ext/pdo_sqlsrv"
851752
}
852753
},
754+
"php-sdk-binary-tools": {
755+
"binary": {
756+
"windows-x86_64": {
757+
"type": "git",
758+
"rev": "master",
759+
"url": "https://github.com/php/php-sdk-binary-tools.git",
760+
"extract": "{php_sdk_path}"
761+
}
762+
}
763+
},
764+
"php-src": {
765+
"source": {
766+
"type": "php-release"
767+
}
768+
},
769+
"pkg-config": {
770+
"binary": {
771+
"linux-x86_64": {
772+
"type": "ghrel",
773+
"repo": "static-php/static-php-cli-hosted",
774+
"match": "pkg-config-aarch64-linux-musl-1.2.5.txz",
775+
"extract": {
776+
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
777+
}
778+
},
779+
"linux-aarch64": {
780+
"type": "ghrel",
781+
"repo": "static-php/static-php-cli-hosted",
782+
"match": "pkg-config-x86_64-linux-musl-1.2.5.txz",
783+
"extract": {
784+
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
785+
}
786+
},
787+
"macos-x86_64": {
788+
"type": "ghrel",
789+
"repo": "static-php/static-php-cli-hosted",
790+
"match": "pkg-config-x86_64-darwin.txz",
791+
"extract": {
792+
"bin/pkg-config": "{pkg_root_path}/bin/pkg-config"
793+
}
794+
},
795+
"macos-aarch64": {
796+
"type": "ghrel",
797+
"repo": "static-php/static-php-cli-hosted",
798+
"match": "pkg-config-aarch64-darwin.txz",
799+
"extract": "{pkg_root_path}"
800+
}
801+
},
802+
"source": "https://dl.static-php.dev/static-php-cli/deps/pkg-config/pkg-config-0.29.2.tar.gz"
803+
},
853804
"postgresql": {
854805
"source": {
855806
"type": "ghtagtar",
@@ -950,6 +901,15 @@
950901
"extract": "php-src/ext/sqlsrv"
951902
}
952903
},
904+
"strawberry-perl": {
905+
"binary": {
906+
"windows-x86_64": {
907+
"type": "url",
908+
"url": "https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_5380_5361/strawberry-perl-5.38.0.1-64bit-portable.zip",
909+
"extract": "{pkg_root_path}/strawberry-perl"
910+
}
911+
}
912+
},
953913
"swoole": {
954914
"source": {
955915
"type": "ghtar",
@@ -982,6 +942,43 @@
982942
"version": "2.3.12"
983943
}
984944
},
945+
"upx": {
946+
"binary": {
947+
"linux-x86_64": {
948+
"type": "ghrel",
949+
"repo": "upx/upx",
950+
"match": "upx.+-amd64_linux\\.tar\\.xz",
951+
"extract": {
952+
"upx": "{pkg_root_path}/bin/upx"
953+
}
954+
},
955+
"linux-aarch64": {
956+
"type": "ghrel",
957+
"repo": "upx/upx",
958+
"match": "upx.+-arm64_linux\\.tar\\.xz",
959+
"extract": {
960+
"upx": "{pkg_root_path}/bin/upx"
961+
}
962+
},
963+
"windows-x86_64": {
964+
"type": "ghrel",
965+
"repo": "upx/upx",
966+
"match": "upx.+-win64\\.zip",
967+
"extract": {
968+
"upx.exe": "{pkg_root_path}/bin/upx.exe"
969+
}
970+
}
971+
}
972+
},
973+
"vswhere": {
974+
"binary": {
975+
"windows-x86_64": {
976+
"type": "url",
977+
"url": "https://github.com/microsoft/vswhere/releases/download/3.1.7/vswhere.exe",
978+
"extract": "{pkg_root_path}/bin/vswhere.exe"
979+
}
980+
}
981+
},
985982
"watcher": {
986983
"source": {
987984
"type": "ghtar",
@@ -1041,6 +1038,9 @@
10411038
"extract": "php-src/ext/yaml"
10421039
}
10431040
},
1041+
"zig": {
1042+
"binary": "custom"
1043+
},
10441044
"zlib": {
10451045
"binary": "hosted",
10461046
"source": {

config/env.ini

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -122,17 +122,20 @@ SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fno-ident -fPIE
122122
; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.so
123123
SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS=""
124124

125+
; optional, path to openssl conf. This affects where openssl will look for the default CA.
126+
; default on Debian/Alpine: /etc/ssl, default on RHEL: /etc/pki/tls
127+
OPENSSLDIR=""
128+
125129
[macos]
126130
; build target: macho or macho (possibly we could support macho-universal in the future)
127131
; Currently we do not support universal and cross-compilation for macOS.
128132
SPC_TARGET=native-macos
129133
; compiler environments
130-
CC=${SPC_LINUX_DEFAULT_CC}
131-
CXX=${SPC_LINUX_DEFAULT_CXX}
132-
AR=${SPC_LINUX_DEFAULT_AR}
133-
LD=${SPC_LINUX_DEFAULT_LD}
134+
CC=clang
135+
CXX=clang++
136+
AR=ar
137+
LD=ld
134138
; default compiler flags, used in CMake toolchain file, openssl and pkg-config build
135-
; this will be added to all CFLAGS and CXXFLAGS for the library builds
136139
SPC_DEFAULT_C_FLAGS="--target=${MAC_ARCH}-apple-darwin -Os"
137140
SPC_DEFAULT_CXX_FLAGS="--target=${MAC_ARCH}-apple-darwin -Os"
138141
SPC_DEFAULT_LD_FLAGS=""
@@ -150,3 +153,5 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --enable-
150153
SPC_CMD_VAR_PHP_EMBED_TYPE="static"
151154
; EXTRA_CFLAGS for `configure` and `make` php
152155
SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fpic -fpie -Werror=unknown-warning-option ${SPC_DEFAULT_C_FLAGS}"
156+
; minimum compatible macOS version (LLVM vars, availability not guaranteed)
157+
MACOSX_DEPLOYMENT_TARGET=12.0

0 commit comments

Comments
 (0)