@@ -32,9 +32,18 @@ nuttx=$WORKSPACE/nuttx
3232apps=$WORKSPACE /apps
3333tools=$WORKSPACE /tools
3434prebuilt=$WORKSPACE /prebuilt
35- os=$( uname -s)
3635EXTRA_PATH=
3736
37+
38+ kernel=" $( uname -s) "
39+ case $kernel in
40+ Linux* ) os=Linux;;
41+ Darwin* ) os=Darwin;;
42+ CYGWIN* ) os=Cygwin;;
43+ MINGW* ) os=MinGw;;
44+ * ) os=" UNKNOWN:$kernel "
45+ esac
46+
3847case $os in
3948 Darwin)
4049 install=" python-tools u-boot-tools discoteq-flock elf-toolchain gen-romfs kconfig-frontends arm-gcc-toolchain riscv-gcc-toolchain xtensa-esp32-gcc-toolchain avr-gcc-toolchain c-cache binutils"
@@ -44,6 +53,9 @@ case $os in
4453 Linux)
4554 install=" python-tools gen-romfs gperf kconfig-frontends arm-gcc-toolchain mips-gcc-toolchain riscv-gcc-toolchain xtensa-esp32-gcc-toolchain rx-gcc-toolchain c-cache"
4655 ;;
56+ Cygwin)
57+ install=" gen-romfs kconfig-frontends arm-gcc-toolchain"
58+ ;;
4759esac
4860
4961function add_path {
@@ -126,6 +138,9 @@ function kconfig-frontends {
126138 add_path $prebuilt /kconfig-frontends/bin
127139
128140 if [ ! -f " $prebuilt /kconfig-frontends/bin/kconfig-conf" ]; then
141+ if [ ! -d " $tools " ]; then
142+ git clone https://bitbucket.org/nuttx/tools.git $tools
143+ fi
129144 cd $tools /kconfig-frontends
130145 ./configure --prefix=$prebuilt /kconfig-frontends \
131146 --disable-kconfig --disable-nconf --disable-qconf \
@@ -153,22 +168,33 @@ function bloaty {
153168
154169function arm-gcc-toolchain {
155170 add_path $prebuilt /gcc-arm-none-eabi/bin
171+ urlbase=" https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/"
172+ releasebase=" gcc-arm-none-eabi-9-2019-q4-major"
156173
157174 if [ ! -f " $prebuilt /gcc-arm-none-eabi/bin/arm-none-eabi-gcc" ]; then
158- local flavor
175+ cd $prebuilt
176+ local filename
159177 case $os in
160178 Darwin)
161- flavor=mac
162- ;;
179+ filename=" $releasebase -mac.tar.bz2"
180+ wget --quiet $urlbase /$filename
181+ tar jxf $filename
182+ mv $releasebase gcc-arm-none-eabi
183+ ;;
163184 Linux)
164- flavor=x86_64-linux
185+ filename=" $releasebase -x86_64.tar.bz2"
186+ wget --quiet $urlbase /$filename
187+ tar jxf $filename
188+ mv $releasebase gcc-arm-none-eabi
189+ ;;
190+ Cygwin)
191+ filename=" $releasebase -win32.zip"
192+ wget --quiet $urlbase /$filename
193+ mkdir -p gcc-arm-none-eabi
194+ unzip -qq $filename -d ./gcc-arm-none-eabi
165195 ;;
166196 esac
167- cd $prebuilt
168- wget --quiet https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/RC2.1/gcc-arm-none-eabi-9-2019-q4-major-${flavor} .tar.bz2
169- tar jxf gcc-arm-none-eabi-9-2019-q4-major-${flavor} .tar.bz2
170- mv gcc-arm-none-eabi-9-2019-q4-major gcc-arm-none-eabi
171- rm gcc-arm-none-eabi-9-2019-q4-major-${flavor} .tar.bz2
197+ rm $filename
172198 fi
173199 arm-none-eabi-gcc --version
174200}
@@ -402,6 +428,9 @@ function run_builds {
402428 Linux)
403429 ncpus=` grep -c ^processor /proc/cpuinfo`
404430 ;;
431+ Cygwin)
432+ ncpus=` grep -c ^processor /proc/cpuinfo`
433+ ;;
405434 esac
406435
407436 options+=" -j $ncpus "
0 commit comments