44 - 3.11
55
66jobs :
7- mac_arm :
8- name : MacOS ARM Build
7+ mac :
8+ strategy :
9+ matrix :
10+ architecture :
11+ - arch : arm64
12+ - arch : x86_64
13+ lto :
14+ - lto : With LTO
15+ lto_arg : " "
16+ artifact_tag : " "
17+ - lto : No LTO
18+ lto_arg : " --no-lto"
19+ artifact_tag : " _No_LTO"
20+ name : MacOS Build
921 runs-on : macos-latest
1022 steps :
1123 - name : Check out repository code
@@ -15,144 +27,34 @@ jobs:
1527 CACHE_SAS : ${{ secrets.CACHE_SAS }}
1628 run : |
1729 cd ..
18- export "file_name=NP_mac-arm -${{ hashFiles('build.mac.sh') }}.tar.gz"
30+ export "file_name=NP_mac-${{ matrix.architecture.arch }}${{ matrix.lto.lto_arg }} -${{ hashFiles('build.mac.sh') }}.tar.gz"
1931 export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
2032 curl -L "$file_url" -o "$file_name" || exit 0
2133 tar -xf "$file_name" || exit 0
2234 rm ${file_name} || exit 0
35+ ln -s lib Nuitka-Python-Deps/lib64 || exit 0
2336 - name : Uninstall homebrew
2437 run : /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
2538 - name : Run Build
26- run : bash build.mac.sh "${{ github.workspace }}/Nuitka-Python-Out"
39+ run : arch -${{ matrix.architecture.arch }} bash build.mac.sh ${{ matrix.lto.lto_arg }} "${{ github.workspace }}/Nuitka-Python-Out"
2740 - name : Cleanup artifact
2841 run : find "${{ github.workspace }}/Nuitka-Python-Out" \( -iname '*.o' -iname '*.pc' -o -iname '__pycache__' -o -iname 'link.json' \) | xargs rm -rf
2942 - uses : actions/upload-artifact@v4
3043 with :
31- name : Nuitka-Python311_mac_arm64
44+ name : Nuitka-Python311_mac_${{ matrix.architecture.arch }}${{ matrix.lto.lto_arg }}
3245 path : ${{ github.workspace }}/Nuitka-Python-Out
3346 - name : Store cache
3447 env :
3548 CACHE_SAS : ${{ secrets.CACHE_SAS }}
3649 run : |
3750 cd ..
38- export "file_name=NP_mac-arm -${{ hashFiles('build.mac.sh') }}.tar.gz"
51+ export "file_name=NP_mac-${{ matrix.architecture.arch }}${{ matrix.lto.lto_arg }} -${{ hashFiles('build.mac.sh') }}.tar.gz"
3952 export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
4053 rm -rf ${file_name}
54+ rm -f Nuitka-Python-Deps/lib64
4155 tar -cf ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
4256 curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
4357 rm -rf ${file_name}
44- mac_x64 :
45- name : MacOS Intel Build
46- runs-on : macos-latest
47- steps :
48- - name : Check out repository code
49- uses : actions/checkout@v4
50- - name : Download cache
51- env :
52- CACHE_SAS : ${{ secrets.CACHE_SAS }}
53- run : |
54- cd ..
55- export "file_name=NP_mac-intel-${{ hashFiles('build.mac.sh') }}.tar.gz"
56- export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
57- curl -L "$file_url" -o "$file_name" || exit 0
58- tar -xf "$file_name" || exit 0
59- rm ${file_name} || exit 0
60- - name : Uninstall homebrew
61- run : /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
62- - name : Run Build
63- run : arch -x86_64 bash build.mac.sh "${{ github.workspace }}/Nuitka-Python-Out"
64- - name : Cleanup artifact
65- run : find "${{ github.workspace }}/Nuitka-Python-Out" \( -iname '*.o' -o -iname '__pycache__' -o -iname 'link.json' \) | xargs rm -rf
66- - uses : actions/upload-artifact@v4
67- with :
68- name : Nuitka-Python311_mac_x86_64
69- path : ${{ github.workspace }}/Nuitka-Python-Out
70- - name : Store cache
71- env :
72- CACHE_SAS : ${{ secrets.CACHE_SAS }}
73- run : |
74- cd ..
75- export "file_name=NP_mac-intel-${{ hashFiles('build.mac.sh') }}.tar.gz"
76- export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
77- rm -rf ${file_name}
78- tar -cf ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
79- curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
80- rm -rf ${file_name}
81-
82- mac_arm_no_lto :
83- name : MacOS ARM Build No LTO
84- runs-on : macos-latest
85- steps :
86- - name : Check out repository code
87- uses : actions/checkout@v4
88- - name : Download cache
89- env :
90- CACHE_SAS : ${{ secrets.CACHE_SAS }}
91- run : |
92- cd ..
93- export "file_name=NP_mac-arm-no_lto-${{ hashFiles('build.mac.sh') }}.tar.gz"
94- export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
95- curl -L "$file_url" -o "$file_name" || exit 0
96- tar -xf "$file_name" || exit 0
97- rm ${file_name} || exit 0
98- - name : Uninstall homebrew
99- run : /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
100- - name : Run Build
101- run : bash build.mac.sh --no-lto "${{ github.workspace }}/Nuitka-Python-Out"
102- - name : Cleanup artifact
103- run : find "${{ github.workspace }}/Nuitka-Python-Out" \( -iname '*.o' -o -iname '__pycache__' -o -iname 'link.json' \) | xargs rm -rf
104- - uses : actions/upload-artifact@v4
105- with :
106- name : Nuitka-Python311_mac_arm64_No_LTO
107- path : ${{ github.workspace }}/Nuitka-Python-Out
108- - name : Store cache
109- env :
110- CACHE_SAS : ${{ secrets.CACHE_SAS }}
111- run : |
112- cd ..
113- export "file_name=NP_mac-arm-no_lto-${{ hashFiles('build.mac.sh') }}.tar.gz"
114- export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
115- rm -rf ${file_name}
116- tar -cf ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
117- curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
118- rm -rf ${file_name}
119- mac_x64_no_lto :
120- name : MacOS Intel Build No LTO
121- runs-on : macos-latest
122- steps :
123- - name : Check out repository code
124- uses : actions/checkout@v4
125- - name : Download cache
126- env :
127- CACHE_SAS : ${{ secrets.CACHE_SAS }}
128- run : |
129- cd ..
130- export "file_name=NP_mac-intel-no_lto-${{ hashFiles('build.mac.sh') }}.tar.gz"
131- export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
132- curl -L "$file_url" -o "$file_name" || exit 0
133- tar -xf "$file_name" || exit 0
134- rm ${file_name} || exit 0
135- - name : Uninstall homebrew
136- run : /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
137- - name : Run Build
138- run : arch -x86_64 bash build.mac.sh --no-lto "${{ github.workspace }}/Nuitka-Python-Out"
139- - name : Cleanup artifact
140- run : find "${{ github.workspace }}/Nuitka-Python-Out" \( -iname '*.o' -o -iname '__pycache__' -o -iname 'link.json' \) | xargs rm -rf
141- - uses : actions/upload-artifact@v4
142- with :
143- name : Nuitka-Python311_mac_x86_64_No_LTO
144- path : ${{ github.workspace }}/Nuitka-Python-Out
145- - name : Store cache
146- env :
147- CACHE_SAS : ${{ secrets.CACHE_SAS }}
148- run : |
149- cd ..
150- export "file_name=NP_mac-intel-no_lto-${{ hashFiles('build.mac.sh') }}.zip"
151- export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
152- rm -rf ${file_name}
153- tar -cf ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
154- curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
155- rm -rf ${file_name}
15658
15759 linux :
15860 name : Ubuntu Build
17072 curl -L "$file_url" -o "$file_name" || exit 0
17173 unzip -q "$file_name" || exit 0
17274 rm ${file_name} || exit 0
75+ ln -s lib Nuitka-Python-Deps/lib64 || exit 0
17376 - name : Run Build
17477 run : bash build.sh "${{ github.workspace }}/Nuitka-Python-Out"
17578 - name : Cleanup artifact
18689 export "file_name=NP_ubuntu-${{ hashFiles('build.sh') }}.zip"
18790 export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
18891 rm -rf ${file_name}
92+ rm -f Nuitka-Python-Deps/lib64
18993 zip -r ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
19094 curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
19195 rm -rf ${file_name}
0 commit comments