Skip to content

Commit c8bb6c6

Browse files
committed
ci: Add native macOS arm64 job
1 parent 1791f6f commit c8bb6c6

File tree

1 file changed

+60
-3
lines changed

1 file changed

+60
-3
lines changed

.github/workflows/ci.yml

Lines changed: 60 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -591,10 +591,10 @@ jobs:
591591
run: env
592592
if: ${{ always() }}
593593

594-
macos-native:
595-
name: "x86_64: macOS Monterey"
594+
x86_64-macos-native:
595+
name: "x86_64: macOS Monterey, Valgrind"
596596
# See: https://github.com/actions/runner-images#available-images.
597-
runs-on: macos-12 # Use M1 once available https://github.com/github/roadmap/issues/528
597+
runs-on: macos-12
598598

599599
env:
600600
CC: 'clang'
@@ -650,6 +650,63 @@ jobs:
650650
run: env
651651
if: ${{ always() }}
652652

653+
arm64-macos-native:
654+
name: "ARM64: macOS Sonoma"
655+
# See: https://github.com/actions/runner-images#available-images.
656+
runs-on: macos-14
657+
658+
env:
659+
CC: 'clang'
660+
HOMEBREW_NO_AUTO_UPDATE: 1
661+
HOMEBREW_NO_INSTALL_CLEANUP: 1
662+
WITH_VALGRIND: 'no'
663+
CTIMETESTS: 'no'
664+
665+
strategy:
666+
fail-fast: false
667+
matrix:
668+
env_vars:
669+
- { WIDEMUL: 'int64', RECOVERY: 'yes', ECDH: 'yes', SCHNORRSIG: 'yes', ELLSWIFT: 'yes' }
670+
- { WIDEMUL: 'int128_struct', ECMULTGENPRECISION: 2, ECMULTWINDOW: 4 }
671+
- { WIDEMUL: 'int128', ECDH: 'yes', SCHNORRSIG: 'yes', ELLSWIFT: 'yes' }
672+
- { WIDEMUL: 'int128', RECOVERY: 'yes' }
673+
- { WIDEMUL: 'int128', RECOVERY: 'yes', ECDH: 'yes', SCHNORRSIG: 'yes', ELLSWIFT: 'yes' }
674+
- { WIDEMUL: 'int128', RECOVERY: 'yes', ECDH: 'yes', SCHNORRSIG: 'yes', ELLSWIFT: 'yes', CC: 'gcc' }
675+
- { WIDEMUL: 'int128', RECOVERY: 'yes', ECDH: 'yes', SCHNORRSIG: 'yes', ELLSWIFT: 'yes', CPPFLAGS: '-DVERIFY' }
676+
- { CTIMETESTS: 'yes', CFLAGS: '-fsanitize=memory -fsanitize-recover=memory -g' }
677+
- BUILD: 'distcheck'
678+
679+
steps:
680+
- name: Checkout
681+
uses: actions/checkout@v4
682+
683+
- name: Install Homebrew packages
684+
run: |
685+
brew install automake libtool gcc
686+
ln -s $(brew --prefix gcc)/bin/gcc-?? /usr/local/bin/gcc
687+
688+
- name: CI script
689+
env: ${{ matrix.env_vars }}
690+
run: ./ci/ci.sh
691+
692+
- run: cat tests.log || true
693+
if: ${{ always() }}
694+
- run: cat noverify_tests.log || true
695+
if: ${{ always() }}
696+
- run: cat exhaustive_tests.log || true
697+
if: ${{ always() }}
698+
- run: cat ctime_tests.log || true
699+
if: ${{ always() }}
700+
- run: cat bench.log || true
701+
if: ${{ always() }}
702+
- run: cat config.log || true
703+
if: ${{ always() }}
704+
- run: cat test_env.log || true
705+
if: ${{ always() }}
706+
- name: CI env
707+
run: env
708+
if: ${{ always() }}
709+
653710
win64-native:
654711
name: ${{ matrix.configuration.job_name }}
655712
# See: https://github.com/actions/runner-images#available-images.

0 commit comments

Comments
 (0)