Skip to content

Commit 6872ba4

Browse files
committed
Move FreeBSD build to GitHub actions with QEMU
1 parent 85e23db commit 6872ba4

File tree

3 files changed

+116
-0
lines changed

3 files changed

+116
-0
lines changed

.github/actions/freebsd/action.yml

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
name: FreeBSD
2+
runs:
3+
using: composite
4+
steps:
5+
- name: FreeBSD
6+
uses: vmactions/freebsd-vm@v1
7+
with:
8+
release: '13.3'
9+
usesh: true
10+
prepare: |
11+
cd $GITHUB_WORKSPACE
12+
13+
kldload accf_http
14+
pkg install -y \
15+
autoconf \
16+
bison \
17+
gmake \
18+
re2c \
19+
icu \
20+
libiconv \
21+
png \
22+
freetype2 \
23+
enchant2 \
24+
bzip2 \
25+
t1lib \
26+
gmp \
27+
tidyp \
28+
libsodium \
29+
libzip \
30+
libxml2 \
31+
libxslt \
32+
openssl \
33+
oniguruma \
34+
pkgconf \
35+
webp \
36+
libavif \
37+
`#sqlite3` \
38+
curl
39+
40+
./buildconf -f
41+
./configure \
42+
--prefix=/usr/local \
43+
--enable-debug \
44+
--enable-option-checking=fatal \
45+
--enable-fpm \
46+
`#--with-pdo-sqlite` \
47+
--without-pear \
48+
--with-bz2 \
49+
--with-avif \
50+
--with-jpeg \
51+
--with-webp \
52+
--with-freetype \
53+
--enable-gd \
54+
--enable-exif \
55+
--with-zip \
56+
--with-zlib \
57+
--enable-soap \
58+
--enable-xmlreader \
59+
--with-xsl \
60+
--with-libxml \
61+
--enable-shmop \
62+
--enable-pcntl \
63+
--enable-mbstring \
64+
--with-curl \
65+
--enable-sockets \
66+
--with-openssl \
67+
--with-iconv=/usr/local \
68+
--enable-bcmath \
69+
--enable-calendar \
70+
--enable-ftp \
71+
--with-ffi \
72+
--enable-zend-test \
73+
--enable-dl-test=shared \
74+
--enable-intl \
75+
--with-mhash \
76+
--with-sodium \
77+
--enable-werror \
78+
--with-config-file-path=/etc \
79+
--with-config-file-scan-dir=/etc/php.d
80+
gmake -j2
81+
mkdir /etc/php.d
82+
gmake install
83+
echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
84+
echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
85+
echo opcache.preload_user=root >> /etc/php.d/opcache.ini
86+
run: |
87+
cd $GITHUB_WORKSPACE
88+
89+
export SKIP_IO_CAPTURE_TESTS=1
90+
export CI_NO_IPV6=1
91+
export STACK_LIMIT_DEFAULTS_CHECK=1
92+
sapi/cli/php run-tests.php \
93+
-P -q -j2 \
94+
-g FAIL,BORK,LEAK,XLEAK \
95+
--no-progress \
96+
--offline \
97+
--show-diff \
98+
--show-slow 1000 \
99+
--set-timeout 120 \
100+
-d zend_extension=opcache.so

.github/workflows/nightly.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -979,3 +979,11 @@ jobs:
979979
run: .github/scripts/windows/build.bat
980980
- name: Test
981981
run: .github/scripts/windows/test.bat
982+
FREEBSD:
983+
name: FREEBSD
984+
runs-on: ubuntu-latest
985+
steps:
986+
- name: git checkout
987+
uses: actions/checkout@v4
988+
- name: FreeBSD
989+
uses: ./.github/actions/freebsd

.github/workflows/push.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,3 +170,11 @@ jobs:
170170
run: .github/scripts/windows/build.bat
171171
- name: Test
172172
run: .github/scripts/windows/test.bat
173+
FREEBSD:
174+
name: FREEBSD
175+
runs-on: ubuntu-latest
176+
steps:
177+
- name: git checkout
178+
uses: actions/checkout@v4
179+
- name: FreeBSD
180+
uses: ./.github/actions/freebsd

0 commit comments

Comments
 (0)