4
4
- 3.11
5
5
6
6
jobs :
7
- mac_arm :
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"
8
20
name : MacOS ARM Build
9
21
runs-on : macos-latest
10
22
steps :
@@ -15,144 +27,34 @@ jobs:
15
27
CACHE_SAS : ${{ secrets.CACHE_SAS }}
16
28
run : |
17
29
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"
19
31
export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
20
32
curl -L "$file_url" -o "$file_name" || exit 0
21
33
tar -xf "$file_name" || exit 0
22
34
rm ${file_name} || exit 0
35
+ ln -s lib Nuitka-Python-Deps/lib64 || exit 0
23
36
- name : Uninstall homebrew
24
37
run : /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
25
38
- 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"
27
40
- name : Cleanup artifact
28
41
run : find "${{ github.workspace }}/Nuitka-Python-Out" \( -iname '*.o' -iname '*.pc' -o -iname '__pycache__' -o -iname 'link.json' \) | xargs rm -rf
29
42
- uses : actions/upload-artifact@v4
30
43
with :
31
- name : Nuitka-Python311_mac_arm64
44
+ name : Nuitka-Python311_mac_${{ matrix.architecture.arch }}${{ matrix.lto.lto_arg }}
32
45
path : ${{ github.workspace }}/Nuitka-Python-Out
33
46
- name : Store cache
34
47
env :
35
48
CACHE_SAS : ${{ secrets.CACHE_SAS }}
36
49
run : |
37
50
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"
39
52
export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
40
53
rm -rf ${file_name}
54
+ rm -f Nuitka-Python-Deps/lib64
41
55
tar -cf ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
42
56
curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
43
57
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}
156
58
157
59
linux :
158
60
name : Ubuntu Build
170
72
curl -L "$file_url" -o "$file_name" || exit 0
171
73
unzip -q "$file_name" || exit 0
172
74
rm ${file_name} || exit 0
75
+ ln -s lib Nuitka-Python-Deps/lib64 || exit 0
173
76
- name : Run Build
174
77
run : bash build.sh "${{ github.workspace }}/Nuitka-Python-Out"
175
78
- name : Cleanup artifact
186
89
export "file_name=NP_ubuntu-${{ hashFiles('build.sh') }}.zip"
187
90
export "file_url=https://nuitkapythonci.blob.core.windows.net/job-cache/${file_name}?${CACHE_SAS}"
188
91
rm -rf ${file_name}
92
+ rm -f Nuitka-Python-Deps/lib64
189
93
zip -r ${file_name} Nuitka-Python-Deps Nuitka-Python/dep-build
190
94
curl -H "x-ms-blob-type: BlockBlob" --upload-file ${file_name} --url "$file_url"
191
95
rm -rf ${file_name}
0 commit comments