Skip to content

Commit 8554dbb

Browse files
committed
cross-compile 32-bit Linux Python
1 parent 2fbb650 commit 8554dbb

File tree

1 file changed

+39
-5
lines changed

1 file changed

+39
-5
lines changed

.github/workflows/test.yml

+39-5
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,6 @@ jobs:
2626
fail-fast: false
2727
matrix:
2828
include:
29-
- name: Test suite with py311-windows-32
30-
python: '3.11'
31-
arch: x86
32-
os: windows-latest
33-
toxenv: py
3429
- name: Test suite with py37-windows-64
3530
python: '3.7'
3631
arch: x64
@@ -160,3 +155,42 @@ jobs:
160155
continue-on-error: true
161156
- name: Mark as a success
162157
run: exit 0
158+
159+
python_32bits:
160+
runs-on: ubuntu-latest
161+
name: Test mypyc suite with 32-bit Python
162+
steps:
163+
- uses: actions/checkout@v3
164+
- name: Install 32-bit build dependencies
165+
run: |
166+
sudo dpkg --add-architecture i386 && \
167+
sudo apt-get update && sudo apt-get install -y \
168+
zlib1g-dev:i386 \
169+
g++-i686-linux-gnu \
170+
gcc-i686-linux-gnu \
171+
libffi-dev:i386 \
172+
libssl-dev:i386 \
173+
libbz2-dev:i386 \
174+
libncurses-dev:i386 \
175+
libreadline-dev:i386 \
176+
libsqlite3-dev:i386 \
177+
liblzma-dev:i386 \
178+
uuid-dev:i386
179+
- name: Activate pyenv cache
180+
uses: actions/cache@v3
181+
with:
182+
path: /opt/hostedtoolcache/pyenv_root/
183+
key: pyenv
184+
- name: Compile, install, and activate 32-bit Python
185+
uses: gabrielfalcao/pyenv-action@v13
186+
env:
187+
CXX: i686-linux-gnu-g++
188+
CC: i686-linux-gnu-gcc
189+
with:
190+
default: 3.11.1
191+
- name: Install tox
192+
run: pip install --upgrade 'setuptools!=50' tox==4.4.4
193+
- name: Setup tox environment
194+
run: tox run -e py --notest
195+
- name: Test
196+
run: tox run -e py --skip-pkg-install -- -n 2 mypyc/test/test_run.py

0 commit comments

Comments
 (0)