Skip to content
Open
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
b27ef51
WIP: build zauth binary for arm64
lwille Oct 10, 2025
7f6f20e
fixup! WIP: build zauth binary for arm64
lwille Oct 10, 2025
2bd2628
fixup! WIP: build zauth binary for arm64
lwille Oct 10, 2025
2aff2e7
fixup! fixup! WIP: build zauth binary for arm64
lwille Oct 10, 2025
3232307
fixup! WIP: build zauth binary for arm64
lwille Oct 10, 2025
bf72bb2
fixup! WIP: build zauth binary for arm64
lwille Oct 10, 2025
3d20187
fixup! WIP: build zauth binary for arm64
lwille Oct 10, 2025
4130402
testing build
jschumacher-wire Nov 3, 2025
128b001
testing build
jschumacher-wire Nov 3, 2025
1ffed40
testing build
jschumacher-wire Nov 3, 2025
38aac93
testing build
jschumacher-wire Nov 3, 2025
d775f60
testing build
jschumacher-wire Nov 3, 2025
ed63d4f
testing build
jschumacher-wire Nov 3, 2025
1724b7c
testing build
jschumacher-wire Nov 3, 2025
ed7543f
testing build
jschumacher-wire Nov 3, 2025
0fa323f
testing build
jschumacher-wire Nov 3, 2025
23efda1
testing build
jschumacher-wire Nov 3, 2025
c26f04b
testing build
jschumacher-wire Nov 3, 2025
f2b884b
testing build
jschumacher-wire Nov 3, 2025
3d99a5f
testing build
jschumacher-wire Nov 3, 2025
385ef5f
testing build
jschumacher-wire Nov 3, 2025
9285a66
testing build
jschumacher-wire Nov 3, 2025
734325f
testing build
jschumacher-wire Nov 3, 2025
6021197
testing build
jschumacher-wire Nov 3, 2025
99499c3
testing build
jschumacher-wire Nov 3, 2025
8652d69
testing build
jschumacher-wire Nov 3, 2025
98a420e
testing build
jschumacher-wire Nov 3, 2025
fd50095
testing build
jschumacher-wire Nov 4, 2025
5b1dc92
testing build
jschumacher-wire Nov 4, 2025
83e4d86
testing build
jschumacher-wire Nov 4, 2025
f4c4b1d
testing build
jschumacher-wire Nov 4, 2025
8273a8f
testing build
jschumacher-wire Nov 4, 2025
320b62b
testing build
jschumacher-wire Nov 4, 2025
4b8c7a7
testing build
jschumacher-wire Nov 4, 2025
f22ae75
testing build
jschumacher-wire Nov 4, 2025
7259fb2
testing build
jschumacher-wire Nov 4, 2025
becf249
testing build
jschumacher-wire Nov 4, 2025
4d5b239
testing build
jschumacher-wire Nov 4, 2025
5d46cca
testing build
jschumacher-wire Nov 4, 2025
cafee1d
testing build
jschumacher-wire Nov 4, 2025
684905c
testing build
jschumacher-wire Nov 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions .github/workflows/build-zauth.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
on:
push:
branches:
- lwille/zauth-arm64

name: Build zAuth Rust binary for ARM64
jobs:
build-macos-arm:
runs-on: ubuntu-latest
env:
SDK_VERSION: 12.3
TARGET: aarch64-apple-darwin
OSXCROSS_TARGET: ${{ github.workspace }}/osxcross
CARGO_HOME: ${{ github.workspace }}/.cargo

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup osxcross
uses: Timmmm/setup-osxcross@v2
with:
osx-version: ${{ env.SDK_VERSION }}

- name: Install Rust (with macOS ARM64 target)
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
target: aarch64-apple-darwin

- name: Verify target installed
run: rustup target list --installed

- name: Build zauth
run: |
cd libs/libzauth/libzauth-c
export TOOLCHAIN=/home/runner/work/_actions/Timmmm/setup-osxcross/v2/osxcross/target/bin
export CC=$(find "$TOOLCHAIN" \( -type f -o -type l \) -name 'aarch64-apple-darwin*-clang' | head -n 1)
export CXX=$(find "$TOOLCHAIN" \( -type f -o -type l \) -name 'aarch64-apple-darwin*-clang++' | head -n 1)
export AR=$(find "$TOOLCHAIN" \( -type f -o -type l \) -name 'aarch64-apple-darwin*-ar' | head -n 1)
export AR_aarch64_apple_darwin=$AR

if [ -z "$CC" ]; then
echo "Error: couldn't find aarch64 clang in $TOOLCHAIN"
ls -l "$TOOLCHAIN"
exit 1
fi

export OSXCROSS="$OSXCROSS_TARGET"
export SDKROOT="$OSXCROSS/SDK/MacOSX${SDK_VERSION}.sdk"
ls -l "$SDKROOT"
export MACOSX_DEPLOYMENT_TARGET=11.0
export CFLAGS="-isysroot $SDKROOT -arch arm64 -mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET}"
export LDFLAGS="-isysroot $SDKROOT -arch arm64 -mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET}"
export CFLAGS_aarch64_apple_darwin="$CFLAGS"
export LDFLAGS_aarch64_apple_darwin="$LDFLAGS"
export PKG_CONFIG_ALLOW_CROSS=1
export CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$CC
export CC_aarch64_apple_darwin="$CC"

echo "Using CC=$CC"
$CC --version || (echo "clang executable broken" && exit 1)
cargo build --release --target aarch64-apple-darwin --verbose

- name: List built binaries
run: ls -lh libs/libzauth/libzauth-c/target/aarch64-apple-darwin/release

- name: Upload zauth binary as artifact
uses: actions/upload-artifact@v4
with:
name: zauth-macos-arm64
path: libs/libzauth/libzauth-c/target/aarch64-apple-darwin/release/zauth

- name: Upload config.log on failure
if: failure()
uses: actions/upload-artifact@v4
with:
name: libsodium-config-log
path: libs/libzauth/libzauth-c/target/aarch64-apple-darwin/release/build/libsodium-sys-*/out/
Loading