Skip to content

Commit

Permalink
Add Linux arm64 builds for some raisin
Browse files Browse the repository at this point in the history
  • Loading branch information
EionRobb committed Aug 27, 2024
1 parent 365da26 commit 8157b29
Showing 1 changed file with 66 additions and 0 deletions.
66 changes: 66 additions & 0 deletions .github/workflows/linux-arm64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Linux ARM64
on:
- push
- pull_request
jobs:
build:
name: build
runs-on: ubuntu-latest
permissions:
id-token: write
contents: write
attestations: write

steps:
- uses: actions/checkout@v4

- name: install deps
run: |
# Add arm64 sources
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy main restricted" >> /etc/apt/sources.list.d/arm.list
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy-updates main restricted" >> /etc/apt/sources.list.d/arm.list
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy universe" >> /etc/apt/sources.list.d/arm.list
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy-updates universe" >> /etc/apt/sources.list.d/arm.list
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy multiverse" >> /etc/apt/sources.list.d/arm.list
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy-updates multiverse" >> /etc/apt/sources.list.d/arm.list
sudo echo "deb [arch=arm64] http://ports.ubuntu.com/ jammy-backports main restricted universe multiverse" >> /etc/apt/sources.list.d/arm.list
sudo apt update
sudo apt install -y gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu gettext
# Remove conflicting packages
sudo apt remove -y libglib2.0-dev
sudo dpkg --add-architecture arm64
# We only need these to build, not to run. Skip the dependency check.
sudo apt download libpurple0:arm64 libpurple-dev:arm64 libglib2.0-dev:arm64 libjson-glib-dev:arm64 libjson-glib-1.0-0:arm64 zlib1g-dev:arm64
sudo dpkg --force-depends -i *_arm64.deb *_arm64.deb
- name: make
run: |
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/aarch64-linux-gnu/pkgconfig/
export CC=aarch64-linux-gnu-gcc
make
file libteams.so
mv libteams.so libteams_arm64.so
mv libteams-personal.so libteams-personal_arm64.so
- name: archive
if: ${{ !env.ACT }}
uses: actions/upload-artifact@v4
with:
name: plugin
path: lib*.so

- name: release
if: ${{ !env.ACT }}
uses: ncipollo/release-action@v1
with:
artifacts: lib*.so
tag: nightly-${{ github.sha }}
name: Nightly ${{ github.sha }}
allowUpdates: true
makeLatest: true

- name: attest
if: ${{ !env.ACT }}
uses: actions/attest-build-provenance@v1
with:
subject-path: lib*.so

0 comments on commit 8157b29

Please sign in to comment.