8000 .github/workflows/build_mpy_cross.yml: Build mpy-cross for PyPI package. · jimmo/micropython@7ea217c · GitHub
[go: up one dir, main page]

Skip to content

Commit 7ea217c

Browse files
committed
.github/workflows/build_mpy_cross.yml: Build mpy-cross for PyPI package.
Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
1 parent 8d9a7fd commit 7ea217c

File tree

2 files changed

+95
-0
lines changed

2 files changed

+95
-0
lines changed

.github/workflows/build_mpy_cross.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Build mpy-cross binaries
2+
3+
on: workflow_dispatch
4+
5+
jobs:
6+
build:
7+
runs-on: ubuntu-18.04
8+
steps:
9+
- uses: actions/checkout@v3
10+
- name: Install packages
11+
run: source tools/ci.sh && ci_mpy_cross_setup
12+
- name: Build
13+
run: source tools/ci.sh && ci_mpy_cross_build
14+
- name: Archive binaries (Linux x64)
15+
uses: actions/upload-artifact@v3
16+
with:
17+
name: mpy-cross-binaries-linux-x64
18+
path: mpy-cross/build-linux-x64/mpy-cross
19+
- name: Archive binaries (Linux aarch64)
20+
uses: actions/upload-artifact@v3
21+
with:
22+
name: mpy-cross-binaries-linux-aarch64
23+
path: mpy-cross/build-linux-aarch64/mpy-cross
24+
- name: Archive binaries (Linux armhf)
25+
uses: actions/upload-artifact@v3
26+
with:
27+
name: mpy-cross-binaries-linux-armhf
28+
path: mpy-cross/build-linux-armhf/mpy-cross
29+
- name: Archive binaries (Windows x64)
30+
uses: actions/upload-artifact@v3
31+
with:
32+
name: mpy-cross-binaries-windows-x64
33+
path: mpy-cross/build-windows-x64/mpy-cross.exe
34+
35+
build-i686:
36+
runs-on: ubuntu-18.04
37+
steps:
38+
- uses: actions/checkout@v3
39+
- name: Install packages
40+
run: source tools/ci.sh && ci_mpy_cross_i686_setup
41+
- name: Build
42+
run: source tools/ci.sh && ci_mpy_cross_i686_build
43+
- name: Archive binaries (Linux i686)
44+
uses: actions/upload-artifact@v3
45+
with:
46+
name: mpy-cross-binaries-linux-i686
47+
path: mpy-cross/build-linux-i686/mpy-cross
48+
- name: Archive binaries (Windows i686)
49+
uses: actions/upload-artifact@v3
50+
with:
51+
name: mpy-cross-binaries-windows-i686
52+
path: mpy-cross/build-windows-i686/mpy-cross.exe
53+
54+
macos:
55+
runs-on: macos-11.0
56+
steps:
57+
- uses: actions/checkout@v3
58+
- uses: actions/setup-python@v4
59+
with:
60+
python-version: '3.8'
61+
- name: Build
62+
run: source tools/ci.sh && ci_mpy_cross_macos_build
63+
- name: Archive binaries (macOS x64)
64+
uses: actions/upload-artifact@v3
65+
with:
66+
name: mpy-cross-binaries-macos-x64
67+
path: mpy-cross/build-macos-x64/mpy-cross

tools/ci.sh

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -703,3 +703,31 @@ function ci_zephyr_build {
703703
docker exec zephyr-ci west build -p auto -b mimxrt1050_evk
704704
docker exec zephyr-ci west build -p auto -b nucleo_wb55rg # for bluetooth
705705
}
706+
707+
########################################################################################
708+
# mpy-cross
709+
710+
function ci_mpy_cross_setup {
711+
sudo apt-get install gcc-arm-linux-gnueabihf gcc-aarch64-linux-gnu gcc-mingw-w64
712+
}
713+
714+
function ci_mpy_cross_build {
715+
make ${MAKEOPTS} -C mpy-cross BUILD=build-linux-x64
716+
make ${MAKEOPTS} -C mpy-cross BUILD=build-linux-aarch64 CROSS_COMPILE=aarch64-linux-gnu-
717+
make ${MAKEOPTS} -C mpy-cross BUILD=build-linux-armhf CROSS_COMPILE=arm-linux-gnueabihf-
718+
make ${MAKEOPTS} -C mpy-cross BUILD=build-windows-x64 CROSS_COMPILE=x86_64-w64-mingw32-
719+
}
720+
721+
function ci_mpy_cross_i686_setup {
722+
sudo apt-get install gcc-multilib gcc-mingw-w64-i686
723+
# Note gcc-mingw-w64-i686 renamed to gcc-mingw-w64-i686-win32 in jammy
724+
}
725+
726+
function ci_mpy_cross_i686_build {
727+
make ${MAKEOPTS} -C mpy-cross MICROPY_FORCE_32BIT=1 BUILD=build-linux-i686
728+
make ${MAKEOPTS} -C mpy-cross MICROPY_FORCE_32BIT=1 BUILD=build-windows-i686 CROSS_COMPILE=i686-w64-mingw32-
729+
}
730+
731+
function ci_mpy_cross_macos_build {
732+
make ${MAKEOPTS} -C mpy-cross BUILD=build-macos-x64
733+
}

0 commit comments

Comments
 (0)
0