Skip to content

Commit c6b088c

Browse files
[scripts] Add support for Darwin ARM64 builds.
1 parent ad661c2 commit c6b088c

File tree

3 files changed

+70
-41
lines changed

3 files changed

+70
-41
lines changed

scripts/deploy.z-run

+19-16
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88

99

1010

11-
--:: deploy / rsync / * / linux :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' linux "${@}"
12-
--:: deploy / rsync / * / darwin :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' darwin "${@}"
13-
--:: deploy / rsync / * / freebsd :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' freebsd "${@}"
14-
--:: deploy / rsync / * / openbsd :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' openbsd "${@}"
11+
--:: deploy / rsync / * / linux :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' linux--amd64 "${@}"
12+
--:: deploy / rsync / * / darwin :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' darwin--amd64 "${@}"
13+
--:: deploy / rsync / * / freebsd :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' freebsd--amd64 "${@}"
14+
--:: deploy / rsync / * / openbsd :: exec -- "${ZRUN[@]}" ':: deploy / rsync / *' openbsd--amd64 "${@}"
1515

1616

1717

@@ -63,7 +63,7 @@
6363
if test "${_main_0}" != all -a "${_main_0}" != "${_main}" ; then
6464
continue
6565
fi
66-
for _os in linux darwin freebsd openbsd ; do
66+
for _os in linux--amd64 darwin--amd64 darwin--arm64 freebsd--amd64 openbsd--amd64 ; do
6767
if test -e "./.publish/${_os}/${_main}--${_os}--v${_build_version}${_build_suffix}" ; then
6868
printf -- '[ee] release already exists for `%s` for `%s`!\n' "${_main}" "${_os}" >&2
6969
exit -- 1
@@ -114,7 +114,7 @@
114114

115115
printf -- '[ii] publishing all for `%s`...\n' "${_build_version}${_build_suffix}" >&2
116116

117-
for _os in linux darwin freebsd openbsd ; do
117+
for _os in linux--amd64 darwin--amd64 darwin--arm64 freebsd--amd64 openbsd--amd64 ; do
118118
for _main in z-run z-input z-select z-fzf ; do
119119

120120
if test "${_main_0}" != all -a "${_main_0}" != "${_main}" ; then
@@ -164,7 +164,7 @@
164164

165165
printf -- '[ii] publishing all for `%s` (on GitHub)...\n' "${_build_version}${_build_suffix}" >&2
166166

167-
for _os in linux darwin freebsd openbsd ; do
167+
for _os in linux--amd64 darwin--amd64 darwin--arm64 freebsd--amd64 openbsd--amd64 ; do
168168
for _main in z-run z-input z-select z-fzf ; do
169169

170170
if test "${_main_0}" != all -a "${_main_0}" != "${_main}" ; then
@@ -213,22 +213,25 @@
213213
if test "${_main_0}" != all -a "${_main_0}" != "${_main}" ; then
214214
continue
215215
fi
216-
for _os in linux darwin freebsd openbsd ; do
216+
for _os in linux--amd64 darwin--amd64 darwin--arm64 freebsd--amd64 openbsd--amd64 ; do
217217
if test "${_os_0}" != all -a "${_os_0}" != "${_os}" ; then
218218
continue
219219
fi
220220
case "${_os}" in
221-
( linux )
222-
"${ZRUN[@]}" ':: go / build / * / release / linux' "${_main}"
221+
( linux--amd64 )
222+
"${ZRUN[@]}" ':: go / build / * / release / linux / amd64' "${_main}"
223223
;;
224-
( darwin )
225-
"${ZRUN[@]}" ':: go / build / * / release / darwin' "${_main}"
224+
( darwin--amd64 )
225+
"${ZRUN[@]}" ':: go / build / * / release / darwin / amd64' "${_main}"
226226
;;
227-
( freebsd )
228-
"${ZRUN[@]}" ':: go / build / * / release / freebsd' "${_main}"
227+
( darwin--arm64 )
228+
"${ZRUN[@]}" ':: go / build / * / release / darwin / arm64' "${_main}"
229229
;;
230-
( openbsd )
231-
"${ZRUN[@]}" ':: go / build / * / release / openbsd' "${_main}"
230+
( freebsd--amd64 )
231+
"${ZRUN[@]}" ':: go / build / * / release / freebsd / amd64' "${_main}"
232+
;;
233+
( openbsd--amd64 )
234+
"${ZRUN[@]}" ':: go / build / * / release / openbsd / amd64' "${_main}"
232235
;;
233236
esac
234237
done

scripts/generate.z-run

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
printf -- ':: go / build / %s / release / all :: exec -- "${ZRUN[@]}" ":: go / build / * / release / all" %q "${@}"\n' "${_main}" "${_main}"
2727

2828
for _os in linux darwin freebsd openbsd ; do
29-
printf -- ':: go / build / %s / debug / %s :: exec -- "${ZRUN[@]}" ":: go / build / * / debug / %q" %q "${@}"\n' "${_main}" "${_os}" "${_os}" "${_main}"
30-
printf -- ':: go / build / %s / release / %s :: exec -- "${ZRUN[@]}" ":: go / build / * / release / %q" %q "${@}"\n' "${_main}" "${_os}" "${_os}" "${_main}"
29+
printf -- ':: go / build / %s / debug / %s :: exec -- "${ZRUN[@]}" ":: go / build / * / debug / %q / amd64" %q "${@}"\n' "${_main}" "${_os}" "${_os}" "${_main}"
30+
printf -- ':: go / build / %s / release / %s :: exec -- "${ZRUN[@]}" ":: go / build / * / release / %q / amd64" %q "${@}"\n' "${_main}" "${_os}" "${_os}" "${_main}"
3131
done
3232

3333

scripts/go.z-run

+49-23
Original file line numberDiff line numberDiff line change
@@ -91,10 +91,12 @@
9191
_gcflags="$( printf -- '%s ' "${_gcflags[@]}" )"
9292
_ldflags="$( printf -- '%s ' "${_ldflags[@]}" )"
9393

94+
_suffix=''
9495
if test -n "${GOOS:-}" ; then
95-
_suffix="--${GOOS}"
96-
else
97-
_suffix=''
96+
_suffix="${_suffix}--${GOOS}"
97+
fi
98+
if test -n "${GOARCH:-}" ; then
99+
_suffix="${_suffix}--${GOARCH}"
98100
fi
99101

100102
exec -- \
@@ -142,13 +144,15 @@
142144
_gcflags="$( printf -- '%s ' "${_gcflags[@]}" )"
143145
_ldflags="$( printf -- '%s ' "${_ldflags[@]}" )"
144146

147+
_suffix=''
145148
if test -n "${GOOS:-}" ; then
146-
_suffix="--${GOOS}"
147-
else
148-
_suffix=''
149+
_suffix="${_suffix}--${GOOS}"
150+
fi
151+
if test -n "${GOARCH:-}" ; then
152+
_suffix="${_suffix}--${GOARCH}"
149153
fi
150154

151-
printf -- '[ii] building `%s` release for `%s`...\n' "${_main}" "${GOOS:-native}" >&2
155+
printf -- '[ii] building `%s` release for `%s`...\n' "${_main}" "${_suffix:-native}" >&2
152156

153157
if test -f "${_outputs}/${_main}--release${_suffix}" ; then
154158
mv -T -- "${_outputs}/${_main}--release${_suffix}" "${_outputs}/${_main}--release${_suffix}.old"
@@ -183,59 +187,81 @@
183187

184188

185189
--<< go / build / * / debug / all
186-
"${ZRUN[@]}" ':: go / build / * / debug / linux' "${@}"
187-
"${ZRUN[@]}" ':: go / build / * / debug / darwin' "${@}"
188-
"${ZRUN[@]}" ':: go / build / * / debug / freebsd' "${@}"
189-
"${ZRUN[@]}" ':: go / build / * / debug / openbsd' "${@}"
190+
"${ZRUN[@]}" ':: go / build / * / debug / linux / amd64' "${@}"
191+
"${ZRUN[@]}" ':: go / build / * / debug / darwin / amd64' "${@}"
192+
"${ZRUN[@]}" ':: go / build / * / debug / darwin / arm64' "${@}"
193+
"${ZRUN[@]}" ':: go / build / * / debug / freebsd / amd64' "${@}"
194+
"${ZRUN[@]}" ':: go / build / * / debug / openbsd / amd64' "${@}"
190195
!!
191196

192-
--<< go / build / * / debug / linux
197+
--<< go / build / * / debug / linux / amd64
193198
export -- GOOS=linux
199+
export -- GOARCH=amd64
200+
exec -- "${ZRUN[@]}" ':: go / build / * / debug' "${@}"
201+
!!
202+
203+
--<< go / build / * / debug / darwin / amd64
204+
export -- GOOS=darwin
205+
export -- GOARCH=amd64
194206
exec -- "${ZRUN[@]}" ':: go / build / * / debug' "${@}"
195207
!!
196208

197-
--<< go / build / * / debug / darwin
209+
--<< go / build / * / debug / darwin / arm64
198210
export -- GOOS=darwin
211+
export -- GOARCH=arm64
199212
exec -- "${ZRUN[@]}" ':: go / build / * / debug' "${@}"
200213
!!
201214

202-
--<< go / build / * / debug / freebsd
215+
--<< go / build / * / debug / freebsd / amd64
203216
export -- GOOS=freebsd
217+
export -- GOARCH=amd64
204218
exec -- "${ZRUN[@]}" ':: go / build / * / debug' "${@}"
205219
!!
206220

207-
--<< go / build / * / debug / openbsd
221+
--<< go / build / * / debug / openbsd / amd64
208222
export -- GOOS=openbsd
223+
export -- GOARCH=amd64
209224
exec -- "${ZRUN[@]}" ':: go / build / * / debug' "${@}"
210225
!!
211226

212227

213228

214229

215230
--<< go / build / * / release / all
216-
"${ZRUN[@]}" ':: go / build / * / release / linux' "${@}"
217-
"${ZRUN[@]}" ':: go / build / * / release / darwin' "${@}"
218-
"${ZRUN[@]}" ':: go / build / * / release / freebsd' "${@}"
219-
"${ZRUN[@]}" ':: go / build / * / release / openbsd' "${@}"
231+
"${ZRUN[@]}" ':: go / build / * / release / linux / amd64' "${@}"
232+
"${ZRUN[@]}" ':: go / build / * / release / darwin / amd64' "${@}"
233+
"${ZRUN[@]}" ':: go / build / * / release / darwin / arm64' "${@}"
234+
"${ZRUN[@]}" ':: go / build / * / release / freebsd / amd64' "${@}"
235+
"${ZRUN[@]}" ':: go / build / * / release / openbsd / amd64' "${@}"
220236
!!
221237

222-
--<< go / build / * / release / linux
238+
--<< go / build / * / release / linux / amd64
223239
export -- GOOS=linux
240+
export -- GOARCH=amd64
241+
exec -- "${ZRUN[@]}" ':: go / build / * / release' "${@}"
242+
!!
243+
244+
--<< go / build / * / release / darwin / amd64
245+
export -- GOOS=darwin
246+
export -- GOARCH=amd64
224247
exec -- "${ZRUN[@]}" ':: go / build / * / release' "${@}"
225248
!!
226249

227-
--<< go / build / * / release / darwin
250+
--<< go / build / * / release / darwin / arm64
228251
export -- GOOS=darwin
252+
export -- GOARCH=arm64
229253
exec -- "${ZRUN[@]}" ':: go / build / * / release' "${@}"
230254
!!
231255

232-
--<< go / build / * / release / freebsd
256+
--<< go / build / * / release / freebsd / amd64
233257
export -- GOOS=freebsd
258+
export -- GOARCH=amd64
234259
exec -- "${ZRUN[@]}" ':: go / build / * / release' "${@}"
235260
!!
236261

237-
--<< go / build / * / release / openbsd
262+
--<< go / build / * / release / openbsd / amd64
238263
export -- GOOS=openbsd
264+
export -- GOARCH=amd64
239265
exec -- "${ZRUN[@]}" ':: go / build / * / release' "${@}"
240266
!!
241267

0 commit comments

Comments
 (0)