Skip to content

Release Binaries pmmp 3 #3

Release Binaries pmmp 3

Release Binaries pmmp 3 #3

Workflow file for this run

on:
workflow_dispatch:
inputs:
tagname:
description: 'tagname'
required: true
default: '8.0.20'
commithash:
description: 'commit hash'
required: true
default: 'none'
createRelease:
description: 'If "yes", create the release.'
required: true
default: 'yes'
name: Release Binaries pmmp 5
jobs:
build-php:
name: Building cross compiler for android-aarch64
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
include:
- option: "-P 5"
name: ""
branch: "php/8.2"
upload-php-ini: "no"
musl-cross-make-repo: "pmmp/musl-cross-make"
- option: "-g -P 5"
name: "-gd"
branch: "php/8.2"
upload-php-ini: "no"
musl-cross-make-repo: "pmmp/musl-cross-make"
- option: "-g -P 5"
name: "-gd-no-modification"
branch: "php/8.2"
upload-php-ini: ""
musl-cross-make-repo: "pmmp/musl-cross-make"
- option: "-g -P 5"
name: "-next-major-gd"
branch: "php/8.2"
upload-php-ini: "-next-major"
musl-cross-make-repo: "pmmp/musl-cross-make"
- option: "-g -P 5"
name: "-experimental-gd"
branch: "php/8.2"
upload-php-ini: "-experimental-gd"
musl-cross-make-repo: "pmmp/musl-cross-make"
# Please note that if editing the matrix, the release workflow must also be edited.
steps:
- name: init directories
run: mkdir -p aarch64-linux-musl
- name: fetch aarch64-linux-musl from github release
working-directory: aarch64-linux-musl
run: wget -q -O "aarch64-linux-musl.tar.xz" "https://github.com/${{ matrix.musl-cross-make-repo }}/releases/latest/download/aarch64-linux-musl.tar.xz"
- name: unzip aarch64-linux-musl and append path
working-directory: aarch64-linux-musl
run: |
tar Jxfv aarch64-linux-musl.tar.xz > /dev/null
echo "$(pwd)/bin" >> $GITHUB_PATH
- uses: actions/checkout@v2
with:
repository: NetherGamesMC/php-build-scripts
path: php-build-scripts
ref: stable
- name: Checkout php-build-scripts commit
if: ${{ github.event.inputs.commithash != 'none' }}
working-directory: php-build-scripts
run: git checkout ${{ github.event.inputs.commithash }}
- name: patch compile.sh
working-directory: php-build-scripts
run: sed -i=".backup" 's/LIBZIP_VERSION=".*"/LIBZIP_VERSION="1.9.2"/' ./compile.sh
- name: install module
run: |
sudo apt update &> /dev/null
sudo apt install -y re2c libtool libtool-bin zlib1g-dev libcurl4-openssl-dev libxml2-dev libyaml-dev libgmp-dev libzip-dev libssl-dev &> /dev/null
- name: making aarch64 php
working-directory: php-build-scripts
run: ./compile.sh -t android-aarch64 -x -j4 ${{ matrix.option }}
- name: copy php
run: cp ./php-build-scripts/bin/php7/bin/php "php${{ matrix.name }}"
- uses: actions/upload-artifact@v1
with:
name: "php${{ matrix.name }}"
path: "./php${{ matrix.name }}"
- name: copy php.ini
if: ${{ matrix.upload-php-ini != 'no'}}
run: cp ./php-build-scripts/bin/php7/bin/php.ini ./php${{ matrix.upload-php-ini }}.ini
- uses: actions/upload-artifact@v1
if: ${{ matrix.upload-php-ini != 'no'}}
with:
name: php${{ matrix.upload-php-ini }}.ini
path: "./php${{ matrix.upload-php-ini }}.ini"
commit-php:
name: release
needs: build-php
runs-on: ubuntu-latest
if: ${{ github.event.inputs.createRelease == 'yes'}}
steps:
- name: Download a Build Artifact(php)
uses: actions/download-artifact@v2
with:
name: php
- name: Download a Build Artifact(php-gd)
uses: actions/download-artifact@v2
with:
name: php-gd
- name: Download a Build Artifact(php-gd-no-modification)
uses: actions/download-artifact@v2
with:
name: php-gd-no-modification
- name: Download a Build Artifact(php-next-major-gd)
uses: actions/download-artifact@v2
with:
name: php-next-major-gd
- name: Download a Build Artifact(php-experimental-gd)
uses: actions/download-artifact@v2
with:
name: php-experimental-gd
- name: Download a Build Artifact(php.ini)
uses: actions/download-artifact@v2
with:
name: php.ini
- name: Download a Build Artifact(php-next-major.ini)
uses: actions/download-artifact@v2
with:
name: php-next-major.ini
- name: Download a Build Artifact(php-experimental-gd.ini)
uses: actions/download-artifact@v2
with:
name: php-experimental-gd.ini
- name: file compressions
run: |
zip -9 zip-php php
zip -9 zip-php-gd php-gd
zip -9 zip-php-gd-no-modification php-gd-no-modification
zip -9 zip-php-next-major-gd php-next-major-gd
zip -9 zip-php-experimental-gd php-experimental-gd
- name: create checksums.sha256
run: |
sha256sum "php" "php-gd" "php-gd-no-modification" "php-next-major-gd" "php-experimental-gd" "zip-php.zip" "zip-php-gd.zip" "zip-php-gd-no-modification.zip" "zip-php-next-major-gd.zip" "zip-php-experimental-gd.zip" "php.ini" "php-next-major.ini" "php-experimental-gd.ini" > checksums.sha256
cat checksums.sha256
- uses: actions/upload-artifact@v1
with:
name: "checksums.sha256"
path: "./checksums.sha256"
- name: Create Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.event.inputs.tagname }}
name: Release ${{ github.event.inputs.tagname }}
files: |
php
php-gd
php-gd-no-modification
php-next-major-gd
php-experimental-gd
zip-php.zip
zip-php-gd.zip
zip-php-gd-no-modification.zip
zip-php-next-major-gd.zip
zip-php-experimental-gd.zip
php.ini
php-next-major.ini
php-experimental-gd.ini
checksums.sha256
body: "The php version for this release is ${{ github.event.inputs.tagname }}.
The download is available from the Assets dropdown.
#### Notes
This binary does not support jit.
This binary is for ARMv8 (aarch64, 64bit).
It does not work on arm (32bit).
All binaries are not compatible with pmmp3 and are for pmmp4.
the php or php-gd binaries are recommended.
The php version of php-next-major-gd is 8.1..
The php version of php-experimental-gd is 8.2..
"