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


The following commit(s) were added to refs/heads/master by this push:
     new 0dc7fa8  CI: Add bloaty utility to the ci tools
0dc7fa8 is described below

commit 0dc7fa862dcf6c61d16510b6bf10df686b75a63f
Author: Brennan Ashton <[email protected]>
AuthorDate: Fri Aug 7 17:56:41 2020 -0700

    CI: Add bloaty utility to the ci tools
    
    Signed-off-by: Brennan Ashton <[email protected]>
---
 cibuild.sh              | 17 +++++++++++++++--
 docker/linux/Dockerfile | 17 ++++++++++++++---
 2 files changed, 29 insertions(+), 5 deletions(-)

diff --git a/cibuild.sh b/cibuild.sh
index 7c7fcdf..acd6dd7 100755
--- a/cibuild.sh
+++ b/cibuild.sh
@@ -36,12 +36,12 @@ EXTRA_PATH=
 
 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 avr-gcc-toolchain"
+    install="python-tools u-boot-tools discoteq-flock elf-toolchain gen-romfs 
kconfig-frontends bloaty arm-gcc-toolchain riscv-gcc-toolchain 
xtensa-esp32-gcc-toolchain avr-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"
+    install="python-tools gen-romfs gperf kconfig-frontends bloaty 
arm-gcc-toolchain mips-gcc-toolchain riscv-gcc-toolchain 
xtensa-esp32-gcc-toolchain c-cache"
     ;;
 esac
 
@@ -137,6 +137,19 @@ function kconfig-frontends {
   fi
 }
 
+function bloaty {
+  add_path $prebuilt/bloaty/bin
+  if [ ! -f "$prebuilt/bloaty/bin/bloaty" ]; then
+    git clone --depth 1 --branch v1.1 https://github.com/google/bloaty 
bloaty-src
+    cd bloaty-src
+    mkdir -p $prebuilt/bloaty
+    cmake -DCMAKE_SYSTEM_PREFIX_PATH=$prebuilt/bloaty
+    make install -j 6
+    cd $prebuilt
+    rm -rf bloaty-src
+  fi
+}
+
 function arm-gcc-toolchain {
   add_path $prebuilt/gcc-arm-none-eabi/bin
 
diff --git a/docker/linux/Dockerfile b/docker/linux/Dockerfile
index 46c2246..aff7977 100644
--- a/docker/linux/Dockerfile
+++ b/docker/linux/Dockerfile
@@ -25,12 +25,15 @@ RUN apt-get update -qq && apt-get install -y -qq \
 ###############################################################################
 FROM builder-base AS nuttx-tools
 
-RUN apt-get install -y -qq \
+RUN apt-get update -qq && apt-get install -y -qq \
   flex \
   bison \
   gperf \
   libncurses5-dev \
-  make
+  make \
+  cmake \
+  g++ \
+  git
 
 RUN mkdir /tools
 WORKDIR /tools
@@ -49,6 +52,12 @@ RUN cd nuttx-tools \
   && cd genromfs \
   && make install PREFIX=/tools/genromfs
 
+RUN mkdir bloaty -p \
+  && git clone --depth 1 --branch v1.1 https://github.com/google/bloaty bloaty 
\
+  && cd bloaty \
+  && cmake -DCMAKE_SYSTEM_PREFIX_PATH=/tools/bloaty \
+  && make install
+
 CMD [ "/bin/bash" ]
 
 ###############################################################################
@@ -96,7 +105,7 @@ RUN mkdir xtensa-esp32-elf-gcc && \
   curl -s -L 
"https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-rc2-linux-amd64.tar.xz";
 \
   | tar -C xtensa-esp32-elf-gcc --strip-components 1 -xJ
 
-RUN apt-get install -y -qq --no-install-recommends \
+RUN apt-get update -qq && apt-get install -y -qq --no-install-recommends \
   git bison gperf python python-pip python-setuptools make cmake ninja-build 
ccache libffi-dev libssl-dev libusb-1.0
 RUN git clone --depth 1 --shallow-submodules --recursive 
https://github.com/espressif/esp-idf.git
 # This is unfortunatly going to re-download some of the same toolchains, but 
will only be used in the context of esp-idf
@@ -174,6 +183,8 @@ COPY --from=nuttx-tools /tools/genromfs/ /tools/genromfs/
 ENV PATH="/tools/genromfs/usr/bin:$PATH"
 COPY --from=nuttx-tools /tools/kconfig-frontends/ kconfig-frontends/
 ENV PATH="/tools/kconfig-frontends/bin:$PATH"
+COPY --from=nuttx-tools /tools/bloaty/ bloaty/
+ENV PATH="/tools/bloaty/bin:$PATH"
 
 # ARM toolchain
 COPY --from=nuttx-toolchain-arm /tools/gcc-arm-none-eabi/ gcc-arm-none-eabi/

Reply via email to