@@ -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 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 {
@@ -115,6 +127,9 @@ function kconfig-frontends {
115127 add_path $prebuilt /kconfig-frontends/bin
116128
117129 if [ ! -f " $prebuilt /kconfig-frontends/bin/kconfig-conf" ]; then
130+ if [ ! -d " $tools " ]; then
131+ git clone https://bitbucket.org/nuttx/tools.git $tools
132+ fi
118133 cd $tools /kconfig-frontends
119134 ./configure --prefix=$prebuilt /kconfig-frontends \
120135 --disable-kconfig --disable-nconf --disable-qconf \
@@ -142,22 +157,33 @@ function bloaty {
142157
143158function arm-gcc-toolchain {
144159 add_path $prebuilt /gcc-arm-none-eabi/bin
160+ urlbase=" https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/"
161+ releasebase=" gcc-arm-none-eabi-9-2019-q4-major"
145162
146163 if [ ! -f " $prebuilt /gcc-arm-none-eabi/bin/arm-none-eabi-gcc" ]; then
147- local flavor
164+ cd $prebuilt
165+ local filename
148166 case $os in
149167 Darwin)
150- flavor=mac
151- ;;
168+ filename=" $releasebase -mac.tar.bz2"
169+ wget --quiet $urlbase /$filename
170+ tar jxf $filename
171+ mv $releasebase gcc-arm-none-eabi
172+ ;;
152173 Linux)
153- flavor=x86_64-linux
174+ filename=" $releasebase -x86_64.tar.bz2"
175+ wget --quiet $urlbase /$filename
176+ tar jxf $filename
177+ mv $releasebase gcc-arm-none-eabi
178+ ;;
179+ Cygwin)
180+ filename=" $releasebase -win32.zip"
181+ wget --quiet $urlbase /$filename
182+ mkdir -p gcc-arm-none-eabi
183+ unzip -qq $filename -d ./gcc-arm-none-eabi
154184 ;;
155185 esac
156- cd $prebuilt
157- 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
158- tar jxf gcc-arm-none-eabi-9-2019-q4-major-${flavor} .tar.bz2
159- mv gcc-arm-none-eabi-9-2019-q4-major gcc-arm-none-eabi
160- rm gcc-arm-none-eabi-9-2019-q4-major-${flavor} .tar.bz2
186+ rm $filename
161187 fi
162188 arm-none-eabi-gcc --version
163189}
@@ -391,6 +417,9 @@ function run_builds {
391417 Linux)
392418 ncpus=` grep -c ^processor /proc/cpuinfo`
393419 ;;
420+ Cygwin)
421+ ncpus=` grep -c ^processor /proc/cpuinfo`
422+ ;;
394423 esac
395424
396425 options+=" -j $ncpus "
0 commit comments