Commit Graph

57 Commits

Author SHA1 Message Date
Petro Karashchenko
d7af2f4c0a tools/ci: remove 'brew update' needed for AVR toolchain installation on OSX
Remove 'brew update' introduced by https://github.com/apache/nuttx-testing/pull/88
as it seems to be not longer needed

Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-07-03 19:16:19 -03:00
chao an
df6d799577 tools/ci: Update GNU Arm Embedded Toolchain to Version 12.2-2022.12.22
x86_64 Linux hosted cross toolchains
AArch32 bare-metal target (arm-none-eabi)

arm-gnu-toolchain-12.2.rel1-x86_64-arm-none-eabi.tar.xz

Remove toolchain workaround which already fixed by ARM:
https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
https://community.arm.com/support-forums/f/compilers-and-libraries-forum/53470/arm-gnu-toolchain-11-3-rel1-x86_64-arm-none-eabi-wrong-newlib-version-strings-error-when-stdlib-h-is-included

Signed-off-by: chao an <anchao@xiaomi.com>
2023-06-26 20:03:38 +08:00
chao an
41f1044fa0 ci/cibuild.sh: upgrade esptool to 4.5.1
Signed-off-by: chao an <anchao@xiaomi.com>
2023-04-12 23:14:45 +03:00
Petro Karashchenko
f84f30fe17 tools/ci: upgrade to the latest Xtensa ESP32 toolchains
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-03-21 21:59:30 -03:00
chao an
a7de849944 tools/ci: setup wasi-sdk/wamrc into cibuild
wasi-sdk:
https://github.com/WebAssembly/wasi-sdk
wamrc:
https://github.com/bytecodealliance/wasm-micro-runtime

Signed-off-by: chao an <anchao@xiaomi.com>
2023-03-04 01:40:25 +08:00
chao an
b8ef55d201 Revert "tools/ci: Update GNU Arm Embedded Toolchain to Version 12.2-2022.12.22"
This reverts commit 809252e3fd.

Wrong warning array subscript [0] is outside array bounds:

|  chip/lpc43_usb0dev.c: In function 'lpc43_getframe':
|  arch/arm/src/common/arm_internal.h:134:25: warning: array subscript 0 is outside array bounds of 'volatile uint32_t[0]' {aka 'volatile long unsigned int[]'} [-Warray-bounds]
|    134 | #define getreg32(a)    (*(volatile uint32_t *)(a))
|        |                        ~^~~~~~~~~~~~~~~~~~~~~~~~~~
|  chip/lpc43_usb0dev.c:347:33: note: in expansion of macro 'getreg32'
|    347 | # define lpc43_getreg(addr)     getreg32(addr)
|        |                                 ^~~~~~~~
|  chip/lpc43_usb0dev.c:2605:15: note: in expansion of macro 'lpc43_getreg'
|   2605 |   return (int)lpc43_getreg(LPC43_USBDEV_FRINDEX_OFFSET);
|        |

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523

Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-20 20:05:13 +08:00
chao an
809252e3fd tools/ci: Update GNU Arm Embedded Toolchain to Version 12.2-2022.12.22
x86_64 Linux hosted cross toolchains
AArch32 bare-metal target (arm-none-eabi)

arm-gnu-toolchain-12.2.rel1-x86_64-arm-none-eabi.tar.xz

Remove toolchain workaround which already fixed by ARM:
https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
https://community.arm.com/support-forums/f/compilers-and-libraries-forum/53470/arm-gnu-toolchain-11-3-rel1-x86_64-arm-none-eabi-wrong-newlib-version-strings-error-when-stdlib-h-is-included

Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-20 16:20:39 +08:00
Xiang Xiao
d5b510e023 tools/ci: Install genromfs instead building it from source code
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-17 16:01:52 +08:00
Xiang Xiao
0582930e4b tools/ci: Install python kconfiglib
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-17 16:01:52 +08:00
Fotis Panagiotopoulos
290a9157eb checkpatch: Added encoding check with cvt2utf 2023-02-01 20:42:35 +08:00
Petro Karashchenko
a208e5860a tools: Ensure removing Python3.11 related commands for macOS
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-12-28 22:05:33 +08:00
Petro Karashchenko
b52aa1b5ca tools: Ensure removing Python related commands for macOS
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-12-25 04:35:27 +08:00
Gustavo Henrique Nihei
aac0228c74 ci: Force reinstall of python tools to workaround GitHub cache issue
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-17 14:02:20 +08:00
Xiang Xiao
4873fec670 cibuild.sh: Remove bloaty-src and nuttx-tools repo after build
to avoid the below error:
destination path '/Users/runner/work/nuttx/nuttx/sources/tools/bloaty-src' already exists and is not an empty directory.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-13 18:25:35 +08:00
Xiang Xiao
c6d31ac990 cibuild.sh: Install ccache in the last step
to fix the below error:
x86_64-elf-gcc --version
Copyright (C) 2002-2007 Andrew Tridgell
ccache: error: Could not find compiler "x86_64-elf-gcc" in PATH
Copyright (C) 2009-2022 Joel Rosdahl and other contributors

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-13 15:35:09 +09:00
Xiang Xiao
2392659258 cibuild.sh: Fix "Untracked files: tools/ci/bloaty-src/"
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-13 15:35:09 +09:00
Xiang Xiao
7a9267219c Revert "Fix ccache: error: Could not find compiler "x86_64-elf-gcc" in PATH"
This reverts commit 0a23bfea03.
2022-12-13 15:35:09 +09:00
Xiang Xiao
3c99c5cf45 tools/ci/cibuild.sh: Fix destination path 'pinguino-compilers' already exists and is not an empty directory.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-13 10:17:39 +09:00
Xiang Xiao
0a23bfea03 Fix ccache: error: Could not find compiler "x86_64-elf-gcc" in PATH
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-12 20:25:51 +09:00
Xiang Xiao
4b760fcea8 tools/cibuild.sh: Sync the installation between macOS and Ubuntu
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
Xiang Xiao
b83f3e6ca7 workflow: Move ccache setting from build.yml to cibuild.sh
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
Xiang Xiao
98412b9e97 tools/cibuild.sh: Move the installation directory from prebuilt to tools
sync with tools/ci/docker/linux/Dockerfile

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
Nathan Hartman
03802dad13 NuttX graduated the Incubator; update repository links 2022-11-26 11:58:15 -08:00
chao an
f23ec0f995 Revert "tools/ci/arm/llvm/clang: bump up LLVMEmbeddedToolchainForArm to release-15.0.2"
This reverts commit b4bab51e86.

Issue:
Builtin math symbols are missing on llvm 15.0.2(libm.a):
https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/issues/158

Signed-off-by: chao an <anchao@xiaomi.com>
2022-11-22 07:43:02 -08:00
chao an
b4bab51e86 tools/ci/arm/llvm/clang: bump up LLVMEmbeddedToolchainForArm to release-15.0.2
Upstream:
https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm/releases/tag/release-15.0.2

Signed-off-by: chao an <anchao@xiaomi.com>
2022-11-22 19:07:13 +08:00
Brennan Ashton
9140b39bde CI: Update worker base OS version
Also pin Bloaty to 52948c107c8f81045e7f9223ec02706b19cfa882
 - see https://github.com/google/bloaty/pull/326/files
2022-11-21 17:20:24 +08:00
Xiang Xiao
c8670cf2eb tools/ci/cibuild.sh: Add bloaty to install variable
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-28 21:22:44 +02:00
Xiang Xiao
9810ab817d tools/ci/cibuild.sh: Keep the installation in alphabetical order
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-28 21:22:44 +02:00
Xiang Xiao
cdf8cff1f6 tools/ci/cibuild.sh: Move all pip3 installation into python-tools
and keep the installation in alphabetical order

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-28 21:22:44 +02:00
W-Mai
07a2fa8d57 ci/docker: copy clang-extdef-mapping to clang-arm
Clang relies on clang-extdef-mapping for ctu checking. But clang-arm doesn't provide this file
A tweaking way to support this feature is copy a `clang-extdef-mapping` from other clang version.

Signed-off-by: xinbingnan <xinbingnan@xiaomi.com>
2022-10-24 17:04:45 +08:00
Xiang Xiao
4ea0c905e6 ci: Install LLVM Embedded Toolchain for Arm
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-22 17:04:21 +08:00
Xiang Xiao
b42b8c9275 Revert "Revert "tools/ci: patch for gcc-arm-none-eabi to 11.3.Rel1 August 08, 2022""
This reverts commit 8150534a2f.
2022-10-22 09:12:18 +08:00
chao an
8150534a2f Revert "tools/ci: patch for gcc-arm-none-eabi to 11.3.Rel1 August 08, 2022"
revert this change since docker image upload always fails

This reverts commit 0f3f5d091a.

Signed-off-by: chao an <anchao@xiaomi.com>
2022-10-13 17:28:37 +08:00
chao an
0f3f5d091a tools/ci: patch for gcc-arm-none-eabi to 11.3.Rel1 August 08, 2022
Fix Wrong Newlib version strings, error when stdlib.h is included

Reference:
https://community.arm.com/support-forums/f/compilers-and-libraries-forum/53470/arm-gnu-toolchain-11-3-rel1-x86_64-arm-none-eabi-wrong-newlib-version-strings-error-when-stdlib-h-is-included

Signed-off-by: chao an <anchao@xiaomi.com>
2022-10-12 19:54:37 +08:00
chao an
cfe2ec3d4d tools/ci: Update gcc-arm-none-eabi to 11.3.Rel1 August 08, 2022
Signed-off-by: chao an <anchao@xiaomi.com>
2022-10-12 19:54:37 +08:00
yinshengkai
d9065f29aa tools/ci: add pyelftools and cxxfilt 2022-09-28 14:08:13 +08:00
nietingting
8b3a936588 ci: enable pytest on docker file
Signed-off-by: nietingting <nietingting@xiaomi.com>
2022-09-26 13:47:23 +08:00
xinbingnan
204d143e9e tools/ci/cibuild.sh: add CodeChecker requirements for cibuild.sh
Signed-off-by: xinbingnan <xinbingnan@xiaomi.com>
2022-09-16 02:09:20 +08:00
qinwei
881c896c06 tools: ci : add cibuild rule for arm64
Summary:

1. add aarch64-none-elf toolchain for cibuild rule

Signed-off-by: qinwei <qinwei1@xiaomi.com>
2022-06-22 12:14:59 +08:00
Abdelatif Guettouche
53cf328cbe xtensa.h: Remove old prototype.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-05-18 01:07:48 +08:00
Petro Karashchenko
88369d54c4 Revert "tools/cibuild.sh: Download risc-v toolchain with --no-check-certificate"
This reverts commit 3b97e37b52.
2022-04-19 09:56:26 +08:00
Xiang Xiao
3b97e37b52 tools/cibuild.sh: Download risc-v toolchain with --no-check-certificate
untils SiFive update their certification

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-18 17:07:21 +03:00
Xiang Xiao
a3e2b0a992 tools/cibuild.sh: Migrate risc-v toolchian from 8.3.0 to 10.2.0
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-18 17:07:21 +03:00
Petro Karashchenko
b302173f31 Revert "zig-build added"
This reverts commit 4880613b26.
2022-03-16 22:17:16 +02:00
Matheus Catarino França
4880613b26 zig-build added
zig install added on CI - fixed

Docker - zig install

parent 5d2e3573c25b48ba7c3d697de11e64896e818aea
author Matheus Catarino França <matheus-catarino@hotmail.com> 1647344723 -0300
committer Matheus Catarino França <matheus-catarino@hotmail.com> 1647344723 -0300

zig-build added

zig install added on CI - fixed

Docker - zig install

CI - replace wget2curl

rm bloat curl command & zig latest version

ZIG_ENV - rm bin folder

ident format

Apply suggestions from code review

Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>

rm arch-zigoptimization

rm arch-zigoptimization ref
2022-03-17 02:09:36 +08:00
Huang Qi
572f961136 ci: Update gcc-arm-none-eabi to 10.3-2021.10
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-03-02 15:41:56 +08:00
Piet
c5bdbc810d ci: get rust copied to final image. 2022-02-21 16:58:29 -08:00
Piet
bb3d8c35e4 ci: add Rust compiler suite 2022-02-20 10:30:30 +08:00
zouboan
09d57de7ec add sparc toolchain to linux docker 2022-02-03 13:20:39 +08:00
Alan Rosenthal
2366795786 Improve dependencies for dirlinks.
This PR updates the dependencies for `dirlinks` so they're all real files. This allows `dirlinks` rule to not have to be rerun every time.
This PR also changes the name from `dirlinks` to `.dirlinks`, since a file named `.dirlinks` is created to denote that all symlinks have been created

Changes:
* tools/link.sh
  * link.sh now detects broken symlinks. Previously, it would return `0` if the symlink existed, but didn't point to anything.

* tools/Makefile.unix
  * Added dependencies to symlinks as order-only prerequisites. See https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html
  * Removed `touch` from symlink recipes by specifying them as order only prerequisites.
  * Check Kconfig variables before adding directories as symlinks
  * Added rule for `$(TOPDIR)/arch/dummy/Kconfig`
  * Added rule for `$(ARCH_SRC)/board/board`
  * Added pattern rule (similar to `CONTEXTDIRS_DEPS`) for external folder dirlink dependencies
  * Use $(APPDIR) instead of $(CONFIG_APPS_DIR), since on line 64 $(APPDIR) is validated and `realpath` is called on the path
  * Added a rule `clean_dirlinks` to cleanup the symlinks in the correct order

* .gitignore
  * Added ignore rule for `.dirlinks`

Testing
Step 1: configure nuttx:
```
$ (cd tools && ./configure.sh -a ../incubator-nuttx-apps stm32f3discovery:nsh)
```
part of the configure step ends up calling `.dirlinks`.

Step 2: We can confirm that `.dirlinks` doesn't need to be run again by running with the question flag: `--question`
```
$ make .dirlinks --question
$ echo $?
0
```

Step 3: confirm `make` succeeds.
```
make
```
2022-01-03 17:12:18 +01:00