Skip to content

Commit c456b83

Browse files
committed
Move FreeBSD build to GitHub actions with QEMU
1 parent 1922f41 commit c456b83

File tree

1 file changed

+107
-5
lines changed

1 file changed

+107
-5
lines changed

.github/workflows/push.yml

Lines changed: 107 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ env:
4141
CXX: ccache g++
4242
jobs:
4343
LINUX_X64:
44-
if: github.repository == 'php/php-src' || github.event_name == 'pull_request'
44+
if: false
4545
services:
4646
mysql:
4747
image: mysql:8.3
@@ -137,7 +137,7 @@ jobs:
137137
if: ${{ !matrix.asan }}
138138
uses: ./.github/actions/verify-generated-files
139139
LINUX_X32:
140-
if: github.repository == 'php/php-src' || github.event_name == 'pull_request'
140+
if: false
141141
name: LINUX_X32_DEBUG_ZTS
142142
runs-on: ubuntu-latest
143143
timeout-minutes: 50
@@ -183,7 +183,7 @@ jobs:
183183
-d zend_extension=opcache.so
184184
-d opcache.enable_cli=1
185185
MACOS_DEBUG_NTS:
186-
if: github.repository == 'php/php-src' || github.event_name == 'pull_request'
186+
if: false
187187
strategy:
188188
fail-fast: false
189189
matrix:
@@ -226,7 +226,7 @@ jobs:
226226
- name: Verify generated files are up to date
227227
uses: ./.github/actions/verify-generated-files
228228
WINDOWS:
229-
if: github.repository == 'php/php-src' || github.event_name == 'pull_request'
229+
if: false
230230
name: WINDOWS_X64_ZTS
231231
runs-on: windows-2022
232232
timeout-minutes: 50
@@ -254,7 +254,7 @@ jobs:
254254
run: .github/scripts/windows/test.bat
255255
BENCHMARKING:
256256
name: BENCHMARKING
257-
if: github.repository == 'php/php-src' || github.event_name == 'pull_request'
257+
if: false
258258
runs-on: ubuntu-24.04
259259
timeout-minutes: 50
260260
steps:
@@ -359,3 +359,105 @@ jobs:
359359
name: profiles
360360
path: ${{ github.workspace }}/benchmark/profiles
361361
retention-days: 30
362+
FREEBSD:
363+
name: FREEBSD
364+
runs-on: ubuntu-latest
365+
steps:
366+
- name: git checkout
367+
uses: actions/checkout@v4
368+
- name: QEMU
369+
uses: vmactions/freebsd-vm@v1
370+
with:
371+
release: '13.3'
372+
usesh: true
373+
prepare: |
374+
cd $GITHUB_WORKSPACE
375+
376+
kldload accf_http
377+
pkg install -y \
378+
autoconf \
379+
bison \
380+
gmake \
381+
re2c \
382+
icu \
383+
libiconv \
384+
png \
385+
freetype2 \
386+
enchant2 \
387+
bzip2 \
388+
t1lib \
389+
gmp \
390+
tidyp \
391+
libsodium \
392+
libzip \
393+
libxml2 \
394+
libxslt \
395+
openssl \
396+
oniguruma \
397+
pkgconf \
398+
webp \
399+
libavif \
400+
sqlite3 \
401+
curl
402+
403+
./buildconf -f
404+
./configure \
405+
--prefix=/usr/local \
406+
--enable-debug \
407+
--enable-option-checking=fatal \
408+
--enable-fpm \
409+
--with-pdo-sqlite \
410+
--without-pear \
411+
--with-bz2 \
412+
--with-avif \
413+
--with-jpeg \
414+
--with-webp \
415+
--with-freetype \
416+
--enable-gd \
417+
--enable-exif \
418+
--with-zip \
419+
--with-zlib \
420+
--enable-soap \
421+
--enable-xmlreader \
422+
--with-xsl \
423+
--with-libxml \
424+
--enable-shmop \
425+
--enable-pcntl \
426+
--enable-mbstring \
427+
--with-curl \
428+
--enable-sockets \
429+
--with-openssl \
430+
--with-iconv=/usr/local \
431+
--enable-bcmath \
432+
--enable-calendar \
433+
--enable-ftp \
434+
--with-ffi \
435+
--enable-zend-test \
436+
--enable-dl-test=shared \
437+
--enable-intl \
438+
--with-mhash \
439+
--with-sodium \
440+
--enable-werror \
441+
--with-config-file-path=/etc \
442+
--with-config-file-scan-dir=/etc/php.d
443+
gmake -j2
444+
mkdir /etc/php.d
445+
gmake install
446+
echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
447+
echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
448+
echo opcache.preload_user=root >> /etc/php.d/opcache.ini
449+
run: |
450+
cd $GITHUB_WORKSPACE
451+
452+
export SKIP_IO_CAPTURE_TESTS=1
453+
export CI_NO_IPV6=1
454+
export STACK_LIMIT_DEFAULTS_CHECK=1
455+
sapi/cli/php run-tests.php \
456+
-P -q -j2 \
457+
-g FAIL,BORK,LEAK,XLEAK \
458+
--no-progress \
459+
--offline \
460+
--show-diff \
461+
--show-slow 1000 \
462+
--set-timeout 120 \
463+
-d zend_extension=opcache.so

0 commit comments

Comments
 (0)