Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: Native ARM64 jobs #1163

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
63 changes: 36 additions & 27 deletions .cirrus.yml
Expand Up @@ -61,18 +61,18 @@ merge_base_script_snippet: &MERGE_BASE
- git checkout FETCH_HEAD # Use merged changes to detect silent merge conflicts

linux_container_snippet: &LINUX_CONTAINER
container:
dockerfile: ci/linux-debian.Dockerfile
# Reduce number of CPUs to be able to do more builds in parallel.
cpu: 1
# Gives us more CPUs for free if they're available.
greedy: true
# More than enough for our scripts.
memory: 1G
dockerfile: ci/linux-debian.Dockerfile
# Reduce number of CPUs to be able to do more builds in parallel.
cpu: 1
# Gives us more CPUs for free if they're available.
greedy: true
# More than enough for our scripts.
memory: 1G

task:
name: "x86_64: Linux (Debian stable)"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
matrix: &ENV_MATRIX
- env: {WIDEMUL: int64, RECOVERY: yes}
- env: {WIDEMUL: int64, ECDH: yes, SCHNORRSIG: yes, ELLSWIFT: yes}
Expand Down Expand Up @@ -100,7 +100,8 @@ task:

task:
name: "i686: Linux (Debian stable)"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
HOST: i686-linux-gnu
ECDH: yes
Expand Down Expand Up @@ -146,7 +147,8 @@ task:

task:
name: "s390x (big-endian): Linux (Debian stable, QEMU)"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
WRAPPER_CMD: qemu-s390x
SECP256K1_TEST_ITERS: 16
Expand All @@ -165,13 +167,13 @@ task:
<< : *CAT_LOGS

task:
name: "ARM32: Linux (Debian stable, QEMU)"
<< : *LINUX_CONTAINER
name: "ARM32: Linux (Debian stable)"
arm_container:
<< : *LINUX_CONTAINER
env:
WRAPPER_CMD: qemu-arm
SECP256K1_TEST_ITERS: 16
HOST: arm-linux-gnueabihf
WITH_VALGRIND: no
WIDEMUL: int64
ECDH: yes
RECOVERY: yes
SCHNORRSIG: yes
Expand All @@ -186,11 +188,10 @@ task:
<< : *CAT_LOGS

task:
name: "ARM64: Linux (Debian stable, QEMU)"
<< : *LINUX_CONTAINER
name: "ARM64: Linux (Debian stable)"
arm_container:
<< : *LINUX_CONTAINER
env:
WRAPPER_CMD: qemu-aarch64
SECP256K1_TEST_ITERS: 16
HOST: aarch64-linux-gnu
WITH_VALGRIND: no
ECDH: yes
Expand All @@ -205,7 +206,8 @@ task:

task:
name: "ppc64le: Linux (Debian stable, QEMU)"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
WRAPPER_CMD: qemu-ppc64le
SECP256K1_TEST_ITERS: 16
Expand All @@ -222,7 +224,8 @@ task:
<< : *CAT_LOGS

task:
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
WRAPPER_CMD: wine
WITH_VALGRIND: no
Expand All @@ -243,7 +246,8 @@ task:
<< : *CAT_LOGS

task:
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
WRAPPER_CMD: wine
WERROR_CFLAGS: -WX
Expand Down Expand Up @@ -287,7 +291,8 @@ task:

# Sanitizers
task:
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
ECDH: yes
RECOVERY: yes
Expand Down Expand Up @@ -332,7 +337,8 @@ task:

# Memory sanitizers
task:
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
name: "MSan"
env:
ECDH: yes
Expand All @@ -359,7 +365,8 @@ task:

task:
name: "C++ -fpermissive (entire project)"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
env:
CC: g++
CFLAGS: -fpermissive -g
Expand All @@ -376,15 +383,17 @@ task:

task:
name: "C++ (public headers)"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
test_script:
- g++ -Werror include/*.h
- clang -Werror -x c++-header include/*.h
- /opt/msvc/bin/x64/cl.exe -c -WX -TP include/*.h

task:
name: "sage prover"
<< : *LINUX_CONTAINER
container:
<< : *LINUX_CONTAINER
test_script:
- cd sage
- sage prove_group_implementations.sage
Expand Down
1 change: 0 additions & 1 deletion ci/linux-debian.Dockerfile
Expand Up @@ -16,7 +16,6 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
gcc-i686-linux-gnu libc6-dev-i386-cross libc6-dbg:i386 libubsan1:i386 libasan8:i386 \
gcc-s390x-linux-gnu libc6-dev-s390x-cross libc6-dbg:s390x \
gcc-arm-linux-gnueabihf libc6-dev-armhf-cross libc6-dbg:armhf \
gcc-aarch64-linux-gnu libc6-dev-arm64-cross libc6-dbg:arm64 \
gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross libc6-dbg:ppc64el \
gcc-mingw-w64-x86-64-win32 wine64 wine \
gcc-mingw-w64-i686-win32 wine32 \
Expand Down