@@ -5,10 +5,13 @@ set -euo pipefail
5
5
# Defaults
6
6
SKIP_RISCV=${SKIP_RISCV-0}
7
7
SKIP_OPENOCD=${SKIP_OPENOCD-0}
8
+ SKIP_PICOTOOL=${SKIP_PICOTOOL-0}
8
9
9
10
# Install prerequisites
10
11
arch -x86_64 /usr/local/bin/brew install jq libtool libusb automake hidapi jimtcl --quiet
11
- arch -arm64 /opt/homebrew/bin/brew install jq libtool libusb automake hidapi jimtcl --quiet
12
+ if [[ $( uname -m) == ' arm64' ]]; then
13
+ arch -arm64 /opt/homebrew/bin/brew install jq libtool libusb automake hidapi jimtcl --quiet
14
+ fi
12
15
# RISC-V prerequisites
13
16
echo " Listing local"
14
17
ls /usr/local/bin
@@ -17,7 +20,9 @@ rm /usr/local/bin/idle3* || true
17
20
rm /usr/local/bin/pip* || true
18
21
rm /usr/local/bin/py* || true
19
22
arch -x86_64 /usr/local/bin/brew install python3 gawk gnu-sed make gmp mpfr libmpc isl zlib expat texinfo flock libslirp --quiet
20
- arch -arm64 /opt/homebrew/bin/brew install python3 gawk gnu-sed make gmp mpfr libmpc isl zlib expat texinfo flock libslirp --quiet
23
+ if [[ $( uname -m) == ' arm64' ]]; then
24
+ arch -arm64 /opt/homebrew/bin/brew install python3 gawk gnu-sed make gmp mpfr libmpc isl zlib expat texinfo flock libslirp --quiet
25
+ fi
21
26
22
27
repos=$( cat config/repositories.json | jq -c ' .repositories.[]' )
23
28
export version=$( cat ./version.txt)
@@ -51,83 +56,89 @@ done < <(echo "$repos")
51
56
52
57
53
58
cd $builddir
54
- if [[ " $SKIP_OPENOCD " != 1 ]] && [[ $( uname -m ) == ' arm64 ' ]] ; then
59
+ if [[ " $SKIP_OPENOCD " != 1 ]]; then
55
60
if ! ../packages/macos/openocd/build-openocd.sh; then
56
61
echo " ::error title=openocd-fail-macos::OpenOCD Build Failed on macOS"
57
62
SKIP_OPENOCD=1
58
63
fi
64
+ echo " OpenOCD Build Complete"
59
65
fi
60
66
if [[ " $SKIP_RISCV " != 1 ]]; then
61
67
# Takes ages to build
62
68
../packages/macos/riscv/build-riscv-gcc.sh
69
+ echo " RISC-V Build Complete"
70
+ fi
71
+ if [[ " $SKIP_PICOTOOL " != 1 ]]; then
72
+ arch -x86_64 ../packages/macos/picotool/build-picotool.sh
73
+ if [[ $( uname -m) == ' arm64' ]]; then
74
+ arch -arm64 ../packages/macos/picotool/build-picotool.sh
75
+ fi
76
+ echo " Picotool Build Complete"
77
+
78
+ ../packages/macos/make-universal.sh " pico-sdk-tools" " pioasm" " pioasm"
79
+ echo " Pioasm Universal Merge Complete"
80
+ ../packages/macos/make-universal.sh " picotool-install" " picotool" " picotool"
81
+ echo " Picotool Universal Merge Complete"
63
82
fi
64
- arch -x86_64 ../packages/macos/picotool/build-picotool.sh
65
- arch -arm64 ../packages/macos/picotool/build-picotool.sh
66
- ../packages/macos/picotool/merge-picotool.sh
67
83
cd ..
68
84
69
85
topd=$PWD
70
- if [ ${version: 0: 1} -ge 2 ]; then
71
- # Package pico-sdk-tools separately as well
72
86
73
- filename=" pico-sdk-tools-${version} -${suffix} .zip"
87
+ if [[ " $SKIP_PICOTOOL " != 1 ]]; then
88
+ echo " Packaging picotool"
89
+ if [ ${version: 0: 1} -ge 2 ]; then
90
+ # Package pico-sdk-tools separately as well
74
91
75
- echo " Saving pico-sdk-tools package to $filename "
76
- pushd " $builddir /pico-sdk-tools/"
77
- tar -a -cf " $topd /bin/$filename " * .keep
78
- popd
79
- fi
92
+ filename=" pico-sdk-tools-${version} -${suffix} .zip"
80
93
81
- # Package picotool separately as well
82
- version=$( " ./$builddir /picotool-install/picotool/picotool" version -s)
83
- echo " Picotool version $version "
94
+ echo " Saving pico-sdk-tools package to $filename "
95
+ pushd " $builddir /pico-sdk-tools/"
96
+ tar -a -cf " $topd /bin/$filename " * .keep
97
+ popd
98
+ fi
84
99
85
- filename=" picotool-${version} -${suffix} .zip"
100
+ # Package picotool separately as well
101
+ version=$( " ./$builddir /picotool-install/picotool/picotool" version -s)
102
+ echo " Picotool version $version "
86
103
87
- echo " Saving picotool package to $filename "
88
- pushd " $builddir /picotool-install/"
89
- tar -a -cf " $topd /bin/$filename " * .keep
90
- popd
104
+ filename=" picotool-${version} -${suffix} .zip"
91
105
92
- if [[ " $SKIP_OPENOCD " != 1 ]] && [[ $( uname -m) == ' arm64' ]]; then
106
+ echo " Saving picotool package to $filename "
107
+ pushd " $builddir /picotool-install/"
108
+ tar -a -cf " $topd /bin/$filename " * .keep
109
+ popd
110
+ fi
111
+
112
+ if [[ " $SKIP_OPENOCD " != 1 ]]; then
113
+ echo " Packaging OpenOCD"
93
114
# Package OpenOCD separately as well
94
115
95
- version=($( " ./$builddir /openocd-install/usr/local/bin/openocd" --version 2>&1 ) )
116
+ version=($( " ./$builddir /openocd-install- $( uname -m ) /usr/local/bin/openocd" --version 2>&1 ) )
96
117
version=${version[0]}
97
118
version=${version[3]}
98
119
version=$( echo $version | cut -d " -" -f 1)
99
120
100
121
echo " OpenOCD version $version "
101
122
102
- filename=" openocd-${version} -arm64 -${suffix} .zip"
123
+ filename=" openocd-${version} -$( uname -m ) -${suffix} .zip"
103
124
104
125
echo " Saving OpenOCD package to $filename "
105
- pushd " $builddir /openocd-install/usr/local/bin"
126
+ pushd " $builddir /openocd-install- $( uname -m ) /usr/local/bin"
106
127
tar -a -cf " $topd /bin/$filename " * -C " ../share/openocd" " scripts"
107
128
popd
108
129
fi
109
130
110
131
if [[ " $SKIP_RISCV " != 1 ]]; then
132
+ echo " Packaging RISC-V Toolchain"
111
133
# Package riscv toolchain separately as well
112
- version=$( " ./$builddir /riscv-install/bin/riscv32-unknown-elf-gcc" -dumpversion)
134
+ version=$( " ./$builddir /riscv-install- $( uname -m ) /bin/riscv32-unknown-elf-gcc" -dumpversion)
113
135
version=$( echo $version | cut -d " ." -f 1)
114
136
echo " Risc-V Toolchain version $version "
115
137
116
- filename=" riscv-toolchain-${version} -arm64-${suffix} .zip"
117
-
118
- echo " Saving RISC-V Toolchain package to $filename "
119
- pushd " $builddir /riscv-install/"
120
- tar -a -cf " $topd /bin/$filename " *
121
- popd
122
-
123
- # Package x64-mac riscv toolchain separately as well
124
- version=" 14"
125
- echo " RISC-V Toolchain version $version "
126
-
127
- filename=" riscv-toolchain-${version} -x64-mac.zip"
138
+ filename=" riscv-toolchain-${version} -$( uname -m) -${suffix} .zip"
128
139
129
140
echo " Saving RISC-V Toolchain package to $filename "
130
- pushd " $builddir /riscv-install-x64-mac /"
141
+ pushd " $builddir /riscv-install-$( uname -m ) /"
131
142
tar -a -cf " $topd /bin/$filename " *
132
143
popd
133
144
fi
0 commit comments