Compare commits

...

1 Commits

Author SHA1 Message Date
William Bell
35a0f35cf8 add native arm support 2025-08-17 00:49:34 +01:00
2 changed files with 49 additions and 27 deletions

View File

@@ -10,11 +10,8 @@ on:
- '*' # Any tag - '*' # Any tag
jobs: jobs:
build-linux: build-linux-x86_64:
runs-on: ubuntu-latest runs-on: ubuntu-latest # build both architectures
strategy:
matrix:
arch: [x86_64, arm64] # build both architectures
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
with: with:
@@ -36,14 +33,8 @@ jobs:
- name: Build - name: Build
run: | run: |
if [ "${{ matrix.arch }}" = "x86_64" ]; then
conan install . --build=missing conan install . --build=missing
conan build . conan build .
else
sudo apt-get install -y gcc-aarch64-linux-gnu
conan install . --profile linux-arm-profile.txt --build=missing
conan build . --profile linux-arm-profile.txt
fi
- name: Package - name: Package
run: | run: |
@@ -60,7 +51,50 @@ jobs:
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: linux-${{ matrix.arch }}-artifact name: linux-x86_64-artifact
path: ${{ env.TAR_NAME }}
build-linux-arm64:
runs-on: ubuntu-latest-arm # build both architectures
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install build tools
run: sudo apt-get update && sudo apt-get install -y flex bison
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Install Conan
run: |
python -m pip install --upgrade pip
pip install conan
conan profile detect
- name: Build
run: |
conan install . --build=missing
conan build .
- name: Package
run: |
TAG=${GITHUB_REF##refs/tags/}
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
ARCH=${{ matrix.arch }}
FOLDER="chloride-$TAG-$OS-$ARCH"
TAR="$FOLDER.tar.gz"
mv build/bin "$FOLDER"
cp LICENSE.txt "$FOLDER"
tar -czf "$TAR" "$FOLDER"
echo "TAR_NAME=$TAR" >> $GITHUB_ENV
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: linux-arm64-artifact
path: ${{ env.TAR_NAME }} path: ${{ env.TAR_NAME }}
build-macos: build-macos:
@@ -185,7 +219,7 @@ jobs:
release: release:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [build-linux, build-macos, build-windows] needs: [build-linux-x86_64, build-linux-arm64, build-macos, build-windows]
steps: steps:
- name: Download artifacts - name: Download artifacts
uses: actions/download-artifact@v4 uses: actions/download-artifact@v4

View File

@@ -1,12 +0,0 @@
[settings]
os=Linux
arch=armv8
compiler=gcc
compiler.version=12
compiler.libcxx=libstdc++11
build_type=Release
[conf]
tools.build:compiler_executables={"c": "/usr/bin/gcc-aarch64-linux-gnu"}
tools.cmake.cmaketoolchain:system_name=Linux
tools.cmake.cmaketoolchain:system_processor=aarch64