You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2020/04/09 05:20:54 UTC
[incubator-nuttx-testing] branch master updated (072bd86 -> 108a496)
This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-testing.git.
from 072bd86 Sync with the main repo
new c592722 cibuild.sh: Disable more kconfig features not used for the CI
new bf7e19b Avoid occasional "aclocal/automake missing" errors
new 48ef2e9 Add macOS builds
new 108a496 Remove the most of arm from the list for macOS
The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/workflows/build.yml | 49 +++++++++++++++-
cibuild.sh | 114 ++++++++++++++++++++++++++++++++-----
testlist/mips-riscv-x86-xtensa.dat | 8 ++-
testlist/sim.dat | 12 ++++
4 files changed, 165 insertions(+), 18 deletions(-)
[incubator-nuttx-testing] 02/04: Avoid occasional "aclocal/automake
missing" errors
Posted by xi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-testing.git
commit bf7e19be89a471020cfe3a40d157a5de0c737d95
Author: YAMAMOTO Takashi <ya...@midokura.com>
AuthorDate: Thu Apr 2 02:16:03 2020 +0900
Avoid occasional "aclocal/automake missing" errors
---
cibuild.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/cibuild.sh b/cibuild.sh
index 7af00df..c3f678f 100755
--- a/cibuild.sh
+++ b/cibuild.sh
@@ -76,6 +76,8 @@ function kconfig-frontends {
--disable-kconfig --disable-nconf --disable-qconf \
--disable-gconf --disable-mconf --disable-static \
--disable-shared --disable-L10n --disable-utils
+ # Avoid "aclocal/automake missing" errors
+ touch aclocal.m4 Makefile.in
make install
cd $tools; git clean -xfd
fi
[incubator-nuttx-testing] 04/04: Remove the most of arm from the
list for macOS
Posted by xi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-testing.git
commit 108a4964644b3b10ac12693b564103d8f725ee72
Author: YAMAMOTO Takashi <ya...@midokura.com>
AuthorDate: Thu Apr 9 13:04:49 2020 +0900
Remove the most of arm from the list for macOS
To save the CI resources.
I left arm-13 as it used to have macOS-specific build issues.
https://github.com/apache/incubator-nuttx-apps/pull/156
---
.github/workflows/build.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 63522f7..71957fa 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -71,7 +71,7 @@ jobs:
strategy:
matrix:
- boards: [arm-01, arm-02, arm-03, arm-04, arm-05, arm-06, arm-07, arm-08, arm-09, arm-10, arm-11, arm-12, arm-13, mips-riscv-x86-xtensa, sim]
+ boards: [arm-13, mips-riscv-x86-xtensa, sim]
steps:
- name: Checkout nuttx repo
[incubator-nuttx-testing] 01/04: cibuild.sh: Disable more kconfig
features not used for the CI
Posted by xi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-testing.git
commit c59272289d8f6a1611eeba18638df08b52e4b517
Author: YAMAMOTO Takashi <ya...@midokura.com>
AuthorDate: Wed Apr 1 23:02:49 2020 +0900
cibuild.sh: Disable more kconfig features not used for the CI
---
cibuild.sh | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/cibuild.sh b/cibuild.sh
index 1742405..7af00df 100755
--- a/cibuild.sh
+++ b/cibuild.sh
@@ -70,9 +70,12 @@ function gperf {
function kconfig-frontends {
add_path $prebuilt/kconfig-frontends/bin
- if [ ! -f "$prebuilt/kconfig-frontends/bin/kconfig-mconf" ]; then
+ if [ ! -f "$prebuilt/kconfig-frontends/bin/kconfig-conf" ]; then
cd $tools/kconfig-frontends
- ./configure --prefix=$prebuilt/kconfig-frontends --enable-mconf --disable-gconf --disable-qconf --enable-static
+ ./configure --prefix=$prebuilt/kconfig-frontends \
+ --disable-kconfig --disable-nconf --disable-qconf \
+ --disable-gconf --disable-mconf --disable-static \
+ --disable-shared --disable-L10n --disable-utils
make install
cd $tools; git clean -xfd
fi
[incubator-nuttx-testing] 03/04: Add macOS builds
Posted by xi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-testing.git
commit 48ef2e9b562678348efb5ff944f2f8354e19b754
Author: YAMAMOTO Takashi <ya...@midokura.com>
AuthorDate: Mon Mar 30 14:20:42 2020 +0900
Add macOS builds
Blacklist some configs in a few test lists as they don't work
on macOS. (See the comments in the test lists why.)
They are still covered by the nightly builds.
---
.github/workflows/build.yml | 49 ++++++++++++++++-
cibuild.sh | 105 ++++++++++++++++++++++++++++++++-----
testlist/mips-riscv-x86-xtensa.dat | 8 ++-
testlist/sim.dat | 12 +++++
4 files changed, 158 insertions(+), 16 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index cf37b70..63522f7 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -16,7 +16,7 @@ on:
pull_request:
jobs:
- build:
+ build-linux:
runs-on: ubuntu-18.04
env:
DOCKER_BUILDKIT: 1
@@ -65,3 +65,50 @@ jobs:
run: |
cd testing
./cibuild.sh -x -G testlist/${{matrix.boards}}.dat
+
+ build-macos:
+ runs-on: macos-10.15
+
+ strategy:
+ matrix:
+ boards: [arm-01, arm-02, arm-03, arm-04, arm-05, arm-06, arm-07, arm-08, arm-09, arm-10, arm-11, arm-12, arm-13, mips-riscv-x86-xtensa, sim]
+
+ steps:
+ - name: Checkout nuttx repo
+ uses: actions/checkout@v2
+ with:
+ repository: apache/incubator-nuttx
+ path: nuttx
+ fetch-depth: 0
+
+ - name: Fetch nuttx tags
+ run: |
+ cd nuttx
+ git fetch --tags
+
+ - name: Checkout apps repo
+ uses: actions/checkout@v2
+ with:
+ repository: apache/incubator-nuttx-apps
+ path: apps
+ fetch-depth: 0
+
+ - name: Checkout testing repo
+ uses: actions/checkout@v2
+ with:
+ repository: apache/incubator-nuttx-testing
+ path: testing
+
+ - name: Restore cache
+ id: cache-tools
+ uses: actions/cache@v1
+ env:
+ cache-name: ${{ runner.os }}-cache-tools
+ with:
+ path: prebuilt
+ key: ${{ runner.os }}-tools-${{ hashFiles('./testing/cibuild.sh') }}
+
+ - name: Run builds
+ run: |
+ cd testing
+ ./cibuild.sh -i -x -G testlist/${{matrix.boards}}.dat
diff --git a/cibuild.sh b/cibuild.sh
index c3f678f..8f9f0f4 100755
--- a/cibuild.sh
+++ b/cibuild.sh
@@ -23,8 +23,18 @@ nuttx=$WD/../nuttx
apps=$WD/../apps
tools=$WD/../tools
prebuilt=$WD/../prebuilt
+os=$(uname -s)
-install="python-tools gen-romfs gperf kconfig-frontends arm-gcc-toolchain mips-gcc-toolchain riscv-gcc-toolchain xtensa-esp32-gcc-toolchain c-cache"
+case $os in
+ Darwin)
+ install="python-tools u-boot-tools discoteq-flock elf-toolchain gen-romfs kconfig-frontends arm-gcc-toolchain riscv-gcc-toolchain xtensa-esp32-gcc-toolchain"
+ mkdir -p ${prebuilt}/homebrew
+ export HOMEBREW_CACHE=${prebuilt}/homebrew
+ ;;
+ Linux)
+ install="python-tools gen-romfs gperf kconfig-frontends arm-gcc-toolchain mips-gcc-toolchain riscv-gcc-toolchain xtensa-esp32-gcc-toolchain c-cache"
+ ;;
+esac
function add_path {
PATH=$1:$PATH
@@ -37,6 +47,38 @@ function python-tools {
add_path $PYTHONUSERBASE/bin
}
+function u-boot-tools {
+ if ! type mkimage > /dev/null; then
+ case $os in
+ Darwin)
+ brew install u-boot-tools
+ ;;
+ esac
+ fi
+}
+
+function discoteq-flock {
+ if ! type flock > /dev/null; then
+ case $os in
+ Darwin)
+ brew tap discoteq/discoteq
+ brew install flock
+ ;;
+ esac
+ fi
+}
+
+function elf-toolchain {
+ if ! type x86_64-elf-gcc > /dev/null; then
+ case $os in
+ Darwin)
+ brew install x86_64-elf-gcc
+ ;;
+ esac
+ fi
+ x86_64-elf-gcc --version
+}
+
function gen-romfs {
add_path $prebuilt/genromfs/usr/bin
@@ -87,11 +129,20 @@ function arm-gcc-toolchain {
add_path $prebuilt/gcc-arm-none-eabi/bin
if [ ! -f "$prebuilt/gcc-arm-none-eabi/bin/arm-none-eabi-gcc" ]; then
+ local flavor
+ case $os in
+ Darwin)
+ flavor=mac
+ ;;
+ Linux)
+ flavor=x86_64-linux
+ ;;
+ esac
cd $prebuilt
- wget https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/RC2.1/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
- tar jxf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
+ wget https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/RC2.1/gcc-arm-none-eabi-9-2019-q4-major-${flavor}.tar.bz2
+ tar jxf gcc-arm-none-eabi-9-2019-q4-major-${flavor}.tar.bz2
mv gcc-arm-none-eabi-9-2019-q4-major gcc-arm-none-eabi
- rm gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
+ rm gcc-arm-none-eabi-9-2019-q4-major-${flavor}.tar.bz2
fi
arm-none-eabi-gcc --version
}
@@ -110,11 +161,20 @@ function riscv-gcc-toolchain {
add_path $prebuilt/riscv64-unknown-elf-gcc/bin
if [ ! -f "$prebuilt/riscv64-unknown-elf-gcc/bin/riscv64-unknown-elf-gcc" ]; then
+ local flavor
+ case $os in
+ Darwin)
+ flavor=x86_64-apple-darwin
+ ;;
+ Linux)
+ flavor=x86_64-linux-ubuntu14
+ ;;
+ esac
cd $prebuilt
- wget https://static.dev.sifive.com/dev-tools/riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14.tar.gz
- tar zxf riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14.tar.gz
- mv riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14 riscv64-unknown-elf-gcc
- rm riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14.tar.gz
+ wget https://static.dev.sifive.com/dev-tools/riscv64-unknown-elf-gcc-8.3.0-2019.08.0-${flavor}.tar.gz
+ tar zxf riscv64-unknown-elf-gcc-8.3.0-2019.08.0-${flavor}.tar.gz
+ mv riscv64-unknown-elf-gcc-8.3.0-2019.08.0-${flavor} riscv64-unknown-elf-gcc
+ rm riscv64-unknown-elf-gcc-8.3.0-2019.08.0-${flavor}.tar.gz
fi
riscv64-unknown-elf-gcc --version
}
@@ -124,10 +184,19 @@ function xtensa-esp32-gcc-toolchain {
if [ ! -f "$prebuilt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc" ]; then
cd $prebuilt
- wget https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar.xz
- xz -d xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar.xz
- tar xf xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar
- rm xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar
+ case $os in
+ Darwin)
+ wget https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp-2019r2-macos.tar.gz
+ tar xzf xtensa-esp32-elf-gcc8_2_0-esp-2019r2-macos.tar.gz
+ rm xtensa-esp32-elf-gcc8_2_0-esp-2019r2-macos.tar.gz
+ ;;
+ Linux)
+ wget https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar.xz
+ xz -d xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar.xz
+ tar xf xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar
+ rm xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar
+ ;;
+ esac
fi
xtensa-esp32-elf-gcc --version
pip install esptool
@@ -206,7 +275,17 @@ function install_tools {
}
function run_builds {
- local ncpus=`grep -c ^processor /proc/cpuinfo`
+ local ncpus
+
+ case $os in
+ Darwin)
+ ncpus=$(sysctl -n machdep.cpu.thread_count)
+ ;;
+ Linux)
+ ncpus=`grep -c ^processor /proc/cpuinfo`
+ ;;
+ esac
+
options+="-j $ncpus"
for build in $builds; do
diff --git a/testlist/mips-riscv-x86-xtensa.dat b/testlist/mips-riscv-x86-xtensa.dat
index 5bf4ba0..6add50e 100644
--- a/testlist/mips-riscv-x86-xtensa.dat
+++ b/testlist/mips-riscv-x86-xtensa.dat
@@ -1,9 +1,13 @@
-/mips,CONFIG_MIPS32_TOOLCHAIN_PINGUINOL
+# PINGUINOL toolchain doesn't provide macOS binaries
+# with the same name
+# /mips,CONFIG_MIPS32_TOOLCHAIN_PINGUINOL
/risc-v,CONFIG_RV32IM_TOOLCHAIN_GNU_RVGL
-gapuino:nsh
-nr5m100-nexys4:nsh
-/x86
+# x86_64-elf-gcc from homebrew doesn't seem to
+# provide __udivdi3 etc for -m32
+# /x86
/xtensa
diff --git a/testlist/sim.dat b/testlist/sim.dat
index 17bb150..ce45887 100644
--- a/testlist/sim.dat
+++ b/testlist/sim.dat
@@ -3,3 +3,15 @@
-sim:nxwm
-sim:rpproxy
-sim:rpserver
+
+# X11
+# macOS doesn't have X11
+-sim:nxlines
+-sim:touchscreen
+-sim:nx11
+-sim:nsh2
+
+# CONFIG_SIM_M32=y
+# The recent versions of macOS is 64-bit only
+-sim:loadable
+-sim:module32