diff --git a/.github/workflows/build_wheels.yml b/.github/workflows/build_wheels.yml index 254c942..a9a91e4 100644 --- a/.github/workflows/build_wheels.yml +++ b/.github/workflows/build_wheels.yml @@ -19,7 +19,8 @@ jobs: gcc-12-aarch64-linux-gnu \ gcc-12-arm-linux-gnueabihf \ gcc-12-mips-linux-gnu \ - gcc-12-riscv64-linux-gnu + gcc-12-riscv64-linux-gnu \ + gcc-12-multilib - name: Build object files run: bash tools/crosscompile.sh @@ -67,7 +68,7 @@ jobs: # Multi-arch builds CIBW_ARCHS_LINUX: "x86_64 aarch64" CIBW_ARCHS_MACOS: "universal2" # x86_64 arm64 - CIBW_ARCHS_WINDOWS: "AMD64" # x86 + CIBW_ARCHS_WINDOWS: "amd64 x86" CIBW_TEST_REQUIRES: "pytest" CIBW_TEST_COMMAND: "pytest {package}/tests/test_coparun_module.py" diff --git a/tools/crosscompile.sh b/tools/crosscompile.sh index b4e92cd..8ace41d 100644 --- a/tools/crosscompile.sh +++ b/tools/crosscompile.sh @@ -28,6 +28,14 @@ gcc-12 -$OPT -c $SRC -o $DEST/stencils_AMD64_$OPT.o python tools/generate_stencils.py $SRC gcc-12 -$OPT -c $SRC -o $DEST/stencils_x86_64_$OPT.o +# Windows x86 +python tools/generate_stencils.py --abi ms $SRC +gcc-12 -m32 -$OPT -c $SRC -o $DEST/stencils_x86_$OPT.o + +# Native i686 +python tools/generate_stencils.py $SRC +gcc-12 -m32 -$OPT -c $SRC -o $DEST/stencils_i686_$OPT.o + # ARM64 linux (aarch64) aarch64-linux-gnu-gcc-12 -$OPT -c $SRC -o $DEST/stencils_aarch64_$OPT.o