Skip to content

Commit 356cf6b

Browse files
committed
Enable AArch64 Ubuntu CI jobs for OpenSSL and JIT
Enable OpenSSL builds on AArch64 Move AArch64 JIT builds from emulated to native.
1 parent 3cf83d9 commit 356cf6b

File tree

2 files changed

+6
-27
lines changed

2 files changed

+6
-27
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ jobs:
249249
strategy:
250250
fail-fast: false
251251
matrix:
252-
os: [ubuntu-24.04]
252+
os: [ubuntu-24.04, ubuntu-24.04-aarch64]
253253
openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2]
254254
env:
255255
OPENSSL_VER: ${{ matrix.openssl_ver }}
@@ -429,7 +429,7 @@ jobs:
429429
if: needs.check_source.outputs.run_tests == 'true'
430430
strategy:
431431
matrix:
432-
os: [ubuntu-24.04]
432+
os: [ubuntu-24.04, ubuntu-24.04-aarch64]
433433
env:
434434
OPENSSL_VER: 3.0.15
435435
PYTHONSTRICTEXTENSIONBUILD: 1

.github/workflows/jit.yml

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,11 @@ jobs:
9393
compiler: clang
9494
- target: aarch64-unknown-linux-gnu/gcc
9595
architecture: aarch64
96-
runner: ubuntu-22.04
96+
runner: ubuntu-24.04-aarch64
9797
compiler: gcc
9898
- target: aarch64-unknown-linux-gnu/clang
9999
architecture: aarch64
100-
runner: ubuntu-22.04
100+
runner: ubuntu-24.04-aarch64
101101
compiler: clang
102102
env:
103103
CC: ${{ matrix.compiler }}
@@ -123,7 +123,7 @@ jobs:
123123
124124
# The `find` line is required as a result of https://github.com/actions/runner-images/issues/9966.
125125
# This is a bug in the macOS runner image where the pre-installed Python is installed in the same
126-
# directory as the Homebrew Python, which causes the build to fail for macos-13. This line removes
126+
# directory as the Homebrew Python, which causes the build to fail for macos-13. This line removes
127127
# the symlink to the pre-installed Python so that the Homebrew Python is used instead.
128128
- name: Native macOS
129129
if: runner.os == 'macOS'
@@ -137,35 +137,14 @@ jobs:
137137
./python.exe -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
138138
139139
- name: Native Linux
140-
if: runner.os == 'Linux' && matrix.architecture == 'x86_64'
140+
if: runner.os == 'Linux'
141141
run: |
142142
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ matrix.llvm }}
143143
export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
144144
./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '--enable-optimizations --with-lto' }}
145145
make all --jobs 4
146146
./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
147147
148-
- name: Emulated Linux
149-
if: runner.os == 'Linux' && matrix.architecture != 'x86_64'
150-
# The --ignorefile on ./python -m test is used to exclude tests known to fail when running on an emulated Linux.
151-
run: |
152-
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ matrix.llvm }}
153-
export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
154-
./configure --prefix="$(pwd)/../build"
155-
make install --jobs 4
156-
make clean --jobs 4
157-
export HOST=${{ matrix.architecture }}-linux-gnu
158-
sudo apt install --yes "gcc-$HOST" qemu-user
159-
${{ !matrix.debug && matrix.compiler == 'clang' && './configure --enable-optimizations' || '' }}
160-
${{ !matrix.debug && matrix.compiler == 'clang' && 'make profile-run-stamp --jobs 4' || '' }}
161-
export QEMU_LD_PREFIX="/usr/$HOST"
162-
CC="${{ matrix.compiler == 'clang' && 'clang --target=$HOST' || '$HOST-gcc' }}" \
163-
CPP="$CC --preprocess" \
164-
HOSTRUNNER=qemu-${{ matrix.architecture }} \
165-
./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '--with-lto' }} --build=x86_64-linux-gnu --host="$HOST" --with-build-python=../build/bin/python3 --with-pkg-config=no ac_cv_buggy_getaddrinfo=no ac_cv_file__dev_ptc=no ac_cv_file__dev_ptmx=yes
166-
make all --jobs 4
167-
./python -m test --ignorefile=Tools/jit/ignore-tests-emulated-linux.txt --multiprocess 0 --timeout 4500 --verbose2 --verbose3
168-
169148
jit-with-disabled-gil:
170149
name: Free-Threaded (Debug)
171150
needs: interpreter

0 commit comments

Comments
 (0)