[GitHub] Use an even newer version of Python to make it run on arm64-… #256
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Linux | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-x86_64: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup latest Alpine Linux | |
id: alpine-target | |
uses: jirutka/setup-alpine@v1 | |
with: | |
packages: > | |
build-base | |
python3 | |
wget | |
linux-headers | |
git | |
bash | |
- name: Build in Alpine chroot | |
run: | | |
cd /home/runner/work/kmake/kmake | |
./configure --openssl-no-asm --without-intl --fully-static | |
make -j$(nproc) | |
shell: alpine.sh --root {0} | |
- name: Get KincTools_linux_x64 | |
run: git clone https://github.com/Kode/KincTools_linux_x64.git | |
- name: Copy binary | |
run: cp /home/runner/work/kmake/kmake/out/Release/node KincTools_linux_x64/kmake | |
- name: Set name | |
run: git config --global user.name "Robbot" | |
- name: Set email | |
run: git config --global user.email "[email protected]" | |
- name: Add binary | |
run: git -C KincTools_linux_x64 add . | |
- name: Commit binary | |
id: commit | |
continue-on-error: true | |
run: git -C KincTools_linux_x64 commit -a -m "Update kmake binary to $GITHUB_SHA." | |
- name: Tag binary | |
if: steps.commit.outcome == 'success' | |
run: git -C KincTools_linux_x64 tag kmake_$GITHUB_SHA | |
- name: Push binary | |
id: push1 | |
if: steps.commit.outcome == 'success' | |
continue-on-error: true | |
run: git -C KincTools_linux_x64 push https://Kode-Robbot:[email protected]/Kode/KincTools_linux_x64.git main --tags | |
env: | |
ROBBOT_PASS: ${{ secrets.ROBBOT_PASS }} | |
- name: Pull | |
if: steps.commit.outcome == 'success' && steps.push1.outcome != 'success' | |
run: git -C KincTools_linux_x64 pull --no-rebase | |
- name: Push binary again | |
if: steps.commit.outcome == 'success' && steps.push1.outcome != 'success' | |
continue-on-error: true | |
run: git -C KincTools_linux_x64 push https://Kode-Robbot:[email protected]/Kode/KincTools_linux_x64.git main --tags | |
env: | |
ROBBOT_PASS: ${{ secrets.ROBBOT_PASS }} | |
build-aarch64: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup latest Alpine Linux | |
uses: jirutka/setup-alpine@v1 | |
with: | |
packages: > | |
build-base | |
python3 | |
wget | |
linux-headers | |
git | |
bash | |
- name: Build in Alpine chroot | |
run: | | |
cd /home/runner/work | |
mkdir aarch64 | |
wget -qO - https://more.musl.cc/11.2.1/x86_64-linux-musl/aarch64-linux-musl-cross.tgz | gunzip | tar xfp - -C ./aarch64 | |
export PATH=$PATH:/home/runner/work/aarch64/aarch64-linux-musl-cross/bin:/home/runner/work/aarch64/aarch64-linux-musl-cross/include:/home/runner/work/aarch64/aarch64-linux-musl-cross/lib | |
cd /home/runner/work/kmake/kmake | |
mkdir install | |
CC=aarch64-linux-musl-gcc CXX=aarch64-linux-musl-g++ CC_host=gcc CXX_host=g++ ./configure --prefix=install --dest-cpu=arm64 --cross-compiling --dest-os=linux --openssl-no-asm --without-intl --fully-static | |
make -j$(nproc) | |
shell: alpine.sh --root {0} | |
- name: Get KincTools_linux_arm64 | |
run: git clone https://github.com/Kode/KincTools_linux_arm64.git | |
- name: Copy binary | |
run: cp /home/runner/work/kmake/kmake/out/Release/node KincTools_linux_arm64/kmake | |
- name: Set name | |
run: git config --global user.name "Robbot" | |
- name: Set email | |
run: git config --global user.email "[email protected]" | |
- name: Commit binary | |
id: commit | |
continue-on-error: true | |
run: | | |
git -C KincTools_linux_arm64 add . | |
git -C KincTools_linux_arm64 commit -a -m "Update kmake binary to $GITHUB_SHA." | |
- name: Tag binary | |
if: steps.commit.outcome == 'success' | |
run: git -C KincTools_linux_arm64 tag linuxaarch64_$GITHUB_SHA | |
- name: Push binary | |
id: push1 | |
if: steps.commit.outcome == 'success' | |
continue-on-error: true | |
run: git -C KincTools_linux_arm64 push https://Kode-Robbot:[email protected]/Kode/KincTools_linux_arm64.git main --tags | |
env: | |
ROBBOT_PASS: ${{ secrets.ROBBOT_PASS }} | |
- name: Pull | |
if: steps.commit.outcome == 'success' && steps.push1.outcome != 'success' | |
run: git -C KincTools_linux_arm64 pull --no-rebase | |
- name: Push binary again | |
if: steps.commit.outcome == 'success' && steps.push1.outcome != 'success' | |
continue-on-error: true | |
run: git -C KincTools_linux_arm64 push https://Kode-Robbot:[email protected]/Kode/KincTools_linux_arm64.git main --tags | |
env: | |
ROBBOT_PASS: ${{ secrets.ROBBOT_PASS }} | |
build-armv7l: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup latest Alpine Linux | |
uses: jirutka/setup-alpine@v1 | |
with: | |
arch: x86 | |
packages: > | |
build-base | |
python3 | |
wget | |
linux-headers | |
git | |
bash | |
- name: Build in Alpine chroot | |
run: | | |
cd /home/runner/work | |
mkdir armv7l | |
wget -qO - https://musl.cc/armv7l-linux-musleabihf-cross.tgz | gunzip | tar xfp - -C ./armv7l | |
export PATH=$PATH:/home/runner/work/armv7l/armv7l-linux-musleabihf-cross/bin:/home/runner/work/armv7l/armv7l-linux-musleabihf-cross/include:/home/runner/work/armv7l/armv7l-linux-musleabihf-cross/lib | |
cd /home/runner/work/kmake/kmake | |
mkdir install | |
CC=armv7l-linux-musleabihf-gcc CXX=armv7l-linux-musleabihf-g++ CC_host=gcc CXX_host=g++ ./configure --prefix=install --dest-cpu=arm --cross-compiling --dest-os=linux --openssl-no-asm --without-intl --fully-static --with-arm-fpu=vfpv3 | |
make -j$(nproc) ASFLAGS="-mcpu=cortex-a53 -mfpu=neon-vfpv3 -mfloat-abi=hard" CFLAGS="-mcpu=cortex-a53 -mfpu=neon-vfpv3 -mfloat-abi=hard" CXXFLAGS="-mcpu=cortex-a53 -mfpu=neon-vfpv3 -mfloat-abi=hard" | |
shell: alpine.sh --root {0} | |
- name: Get KincTools_linux_arm | |
run: git clone https://github.com/Kode/KincTools_linux_arm.git | |
- name: Copy binary | |
run: cp /home/runner/work/kmake/kmake/out/Release/node KincTools_linux_arm/kmake | |
- name: Set name | |
run: git config --global user.name "Robbot" | |
- name: Set email | |
run: git config --global user.email "[email protected]" | |
- name: Commit binary | |
id: commit | |
continue-on-error: true | |
run: | | |
git -C KincTools_linux_arm add . | |
git -C KincTools_linux_arm commit -a -m "Update kmake binary to $GITHUB_SHA." | |
- name: Tag binary | |
if: steps.commit.outcome == 'success' | |
run: git -C KincTools_linux_arm tag kmake_$GITHUB_SHA | |
- name: Push binary | |
id: push1 | |
if: steps.commit.outcome == 'success' | |
continue-on-error: true | |
run: git -C KincTools_linux_arm push https://Kode-Robbot:[email protected]/Kode/KincTools_linux_arm.git main --tags | |
env: | |
ROBBOT_PASS: ${{ secrets.ROBBOT_PASS }} | |
- name: Pull | |
if: steps.commit.outcome == 'success' && steps.push1.outcome != 'success' | |
run: git -C KincTools_linux_arm pull --no-rebase | |
- name: Push binary again | |
if: steps.commit.outcome == 'success' && steps.push1.outcome != 'success' | |
continue-on-error: true | |
run: git -C KincTools_linux_arm push https://Kode-Robbot:[email protected]/Kode/KincTools_linux_arm.git main --tags | |
env: | |
ROBBOT_PASS: ${{ secrets.ROBBOT_PASS }} |