mirror of
https://github.com/apache/nuttx.git
synced 2026-05-26 02:36:11 +08:00
tools/ci: add zig, ldc and swift
The main objective is to determine if the examples really work or if they have been obsoleted. The languages included in the list promote good interoperability with the NuttX API (C predominant). This will show if they are worth integrating in NuttX. **FFI method** - Rust: bindgen or c2rust - D: importC - Swift: Bridging header or clang modulemap. - Zig: `@cImport/@cInclude` or translate-c
This commit is contained in:
committed by
Xiang Xiao
parent
282cf2f7d0
commit
25bd3be167
@@ -247,6 +247,20 @@ rust() {
|
||||
command rustc --version
|
||||
}
|
||||
|
||||
dlang() {
|
||||
if ! type ldc2 > /dev/null 2>&1; then
|
||||
brew install ldc
|
||||
fi
|
||||
|
||||
command ldc2 --version | head -n 5
|
||||
}
|
||||
|
||||
zig() {
|
||||
brew install zig
|
||||
|
||||
command zig cc --version
|
||||
}
|
||||
|
||||
xtensa_esp32_gcc_toolchain() {
|
||||
add_path "${NUTTXTOOLS}"/xtensa-esp32-elf/bin
|
||||
|
||||
@@ -334,7 +348,7 @@ install_build_tools() {
|
||||
mkdir -p "${NUTTXTOOLS}"
|
||||
echo "#!/usr/bin/env sh" > "${NUTTXTOOLS}"/env.sh
|
||||
|
||||
install="arm_gcc_toolchain arm64_gcc_toolchain avr_gcc_toolchain binutils bloaty elf_toolchain gen_romfs gperf kconfig_frontends mips_gcc_toolchain python_tools riscv_gcc_toolchain rust xtensa_esp32_gcc_toolchain u_boot_tools util_linux wasi_sdk c_cache"
|
||||
install="arm_gcc_toolchain arm64_gcc_toolchain avr_gcc_toolchain binutils bloaty elf_toolchain gen_romfs gperf kconfig_frontends mips_gcc_toolchain python_tools riscv_gcc_toolchain rust dlang zig xtensa_esp32_gcc_toolchain u_boot_tools util_linux wasi_sdk c_cache"
|
||||
|
||||
mkdir -p "${NUTTXTOOLS}"/homebrew
|
||||
export HOMEBREW_CACHE=${NUTTXTOOLS}/homebrew
|
||||
|
||||
@@ -236,6 +236,14 @@ rust() {
|
||||
command rustc --version
|
||||
}
|
||||
|
||||
dlang() {
|
||||
if ! type ldc2 > /dev/null 2>&1; then
|
||||
sudo apt-get install ldc
|
||||
fi
|
||||
|
||||
command ldc2 --version | head -n 5
|
||||
}
|
||||
|
||||
rx_gcc_toolchain() {
|
||||
add_path "${NUTTXTOOLS}"/renesas-toolchain/rx-elf-gcc/bin
|
||||
|
||||
@@ -436,7 +444,7 @@ install_build_tools() {
|
||||
mkdir -p "${NUTTXTOOLS}"
|
||||
echo "#!/usr/bin/env sh" > "${NUTTXTOOLS}"/env.sh
|
||||
|
||||
install="arm_clang_toolchain arm_gcc_toolchain arm64_gcc_toolchain avr_gcc_toolchain binutils bloaty clang_tidy gen_romfs gperf kconfig_frontends mips_gcc_toolchain python_tools riscv_gcc_toolchain rust rx_gcc_toolchain sparc_gcc_toolchain xtensa_esp32_gcc_toolchain u_boot_tools util_linux wasi_sdk c_cache"
|
||||
install="arm_clang_toolchain arm_gcc_toolchain arm64_gcc_toolchain avr_gcc_toolchain binutils bloaty clang_tidy gen_romfs gperf kconfig_frontends mips_gcc_toolchain python_tools riscv_gcc_toolchain rust dlang rx_gcc_toolchain sparc_gcc_toolchain xtensa_esp32_gcc_toolchain u_boot_tools util_linux wasi_sdk c_cache"
|
||||
|
||||
oldpath=$(cd . && pwd -P)
|
||||
for func in ${install}; do
|
||||
|
||||
Reference in New Issue
Block a user