generated from amazon-archives/__template_Apache-2.0
-
Notifications
You must be signed in to change notification settings - Fork 176
149 lines (148 loc) · 6.42 KB
/
cross-test.yml
File metadata and controls
149 lines (148 loc) · 6.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
name: Cross Build & Test
on:
push:
branches: ["*"]
pull_request:
branches: ["*"]
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}
cancel-in-progress: true
permissions:
contents: read
jobs:
ppc64-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: PPC64 Build/Test
run: tests/ci/run_cross_tests.sh ppc64 powerpc64-unknown-linux-gnu "-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_BUILD_TYPE=Release -DFIPS=1 -DBUILD_SHARED_LIBS=1"
ppc32-non-fips-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: PPC32 Build/Test
run: tests/ci/run_cross_tests.sh ppc powerpc-unknown-linux-gnu "-DCMAKE_BUILD_TYPE=Release"
ppc32-fips-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: PPC32 Build/Test
run: tests/ci/run_cross_tests.sh ppc powerpc-unknown-linux-gnu "-DCMAKE_BUILD_TYPE=Release -DFIPS=1 -DBUILD_SHARED_LIBS=1"
ppc64le-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: PPC64LE Build/Test
run: tests/ci/run_cross_tests.sh ppc64le powerpc64le-unknown-linux-gnu "-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_BUILD_TYPE=Release -DFIPS=1 -DBUILD_SHARED_LIBS=1"
riscv64-non-fips-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: RISC-V 64 Build/Test
# The flag below is set to avoid the following error with GCC 11.4.0:
#
# /home/runner/work/aws-lc/aws-lc/crypto/pem/pem_lib.c:705:11: error: 'strncmp' of strings of length 1 and 9 and bound of 9 evaluates to nonzero [-Werror=string-compare]
# 705 | if (strncmp(buf, "-----END ", 9) == 0) {
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
env:
CFLAGS: "-Wno-string-compare"
run: tests/ci/run_cross_tests.sh riscv riscv64-unknown-linux-gnu "-DCMAKE_BUILD_TYPE=Release"
armv6-non-fips-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: armv6 Build/Test
run: tests/ci/run_cross_tests.sh armv6 armv6-unknown-linux-gnueabi "-DCMAKE_BUILD_TYPE=Release"
loongarch64-non-fips-build-test:
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: loongarch64 Build/Test
run: tests/ci/run_cross_tests.sh loongarch64 loongarch64-unknown-linux-gnu "-DCMAKE_BUILD_TYPE=Release"
s390x-non-fips-build-test:
if: github.repository_owner == 'aws'
runs-on: ubuntu-24.04
steps:
- name: Install qemu
run: |
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
sudo apt-get -y install qemu-user qemu-user-binfmt
- uses: actions/checkout@v4
- name: s390x Build/Test
# The flag below is set to avoid the following error with GCC 11.4.0:
#
# /home/runner/work/aws-lc/aws-lc/crypto/pem/pem_lib.c:705:11: error: 'strncmp' of strings of length 1 and 9 and bound of 9 evaluates to nonzero [-Werror=string-compare]
# 705 | if (strncmp(buf, "-----END ", 9) == 0) {
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
env:
CFLAGS: "-Wno-string-compare"
run: tests/ci/run_cross_tests.sh s390x s390x-ibm-linux-gnu "-DCMAKE_BUILD_TYPE=Release"
ios-aarch64:
if: github.repository_owner == 'aws'
name: iOS aarch64 cross-platform build
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: ">=1.18"
- run: |
brew install llvm bash
- name: Setup Xcode
run: |
echo "Setting up Xcode environment..."
sudo xcodebuild -license accept || echo "License acceptance failed, continuing..."
xcodebuild -runFirstLaunch || echo "First launch setup failed, continuing..."
echo "Available Xcode versions:"
xcodebuild -version
echo "Available iOS simulator runtimes:"
xcrun simctl list runtimes | grep -i ios || echo "No iOS runtimes found via simctl"
- name: iOS Simulator Runner
timeout-minutes: 45
run: /opt/homebrew/bin/bash tests/ci/run_ios_sim_tests.sh
powerpc-old-glibc:
if: github.repository_owner == 'aws'
runs-on: ubuntu-latest
container:
image: ghcr.io/rust-lang/rust-ci:3afb64da05021f4e35690ff82852d9f0fa0028c30a5676cdb3844a697e863e7c1d3648c4243300ab8578d65d1f7a5bb727da01026e762b7e9ae6733339d8446b
env:
CC: /x-tools/powerpc-unknown-linux-gnu/bin/powerpc-unknown-linux-gnu-gcc
CXX: /x-tools/powerpc-unknown-linux-gnu/bin/powerpc-unknown-linux-gnu-g++
steps:
- uses: actions/checkout@v4
- name: Perform Build
run: ./util/build_and_test.sh --build-only -G "Unix Makefiles" -DDISABLE_GO=ON -DDISABLE_PERL=ON -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_FIND_ROOT_PATH=/x-tools/powerpc-unknown-linux-gnu/powerpc-unknown-linux-gnu/