Skip to content

Commit

Permalink
Merge branch 'apache:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
pengxianghao21 authored Dec 20, 2024
2 parents 654ab53 + 59a849a commit c1c8e0e
Show file tree
Hide file tree
Showing 16,009 changed files with 218,141 additions and 19,150 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
90 changes: 90 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,96 @@
- any-glob-to-any-file: 'include/crypto/**'
- any-glob-to-any-file: 'include/nuttx/crypto/**'

# someday this should be broken down into more precise categories

"Area: Drivers":
- changed-files:
- any-glob-to-any-file: 'drivers/1wire/**'
- any-glob-to-any-file: 'drivers/bch/**'
- any-glob-to-any-file: 'drivers/can/**'
- any-glob-to-any-file: 'drivers/devicetree/**'
- any-glob-to-any-file: 'drivers/dma/**'
- any-glob-to-any-file: 'drivers/dummy/**'
- any-glob-to-any-file: 'drivers/eeprom/**'
- any-glob-to-any-file: 'drivers/efuse/**'
- any-glob-to-any-file: 'drivers/i2c/**'
- any-glob-to-any-file: 'drivers/i2s/**'
- any-glob-to-any-file: 'drivers/i3c/**'
- any-glob-to-any-file: 'drivers/input/**'
- any-glob-to-any-file: 'drivers/ioexpander/**'
- any-glob-to-any-file: 'drivers/ipcc/**'
- any-glob-to-any-file: 'drivers/lcd/**'
- any-glob-to-any-file: 'drivers/leds/**'
- any-glob-to-any-file: 'drivers/loops/**'
- any-glob-to-any-file: 'drivers/math/**'
- any-glob-to-any-file: 'drivers/misc/**'
- any-glob-to-any-file: 'drivers/mmcsd/**'
- any-glob-to-any-file: 'drivers/modem/**'
- any-glob-to-any-file: 'drivers/motor/**'
- any-glob-to-any-file: 'drivers/mtd/**'
- any-glob-to-any-file: 'drivers/note/**'
- any-glob-to-any-file: 'drivers/pinctrl/**'
- any-glob-to-any-file: 'drivers/pipes/**'
- any-glob-to-any-file: 'drivers/power/**'
- any-glob-to-any-file: 'drivers/rc/**'
- any-glob-to-any-file: 'drivers/regmap/**'
- any-glob-to-any-file: 'drivers/reset/**'
- any-glob-to-any-file: 'drivers/rf/**'
- any-glob-to-any-file: 'drivers/rmt/**'
- any-glob-to-any-file: 'drivers/rpmsg/**'
- any-glob-to-any-file: 'drivers/rptun/**'
- any-glob-to-any-file: 'drivers/segger/**'
- any-glob-to-any-file: 'drivers/serial/**'
- any-glob-to-any-file: 'drivers/spi/**'
- any-glob-to-any-file: 'drivers/syslog/**'
- any-glob-to-any-file: 'drivers/thermal/**'
- any-glob-to-any-file: 'drivers/timers/**'
- any-glob-to-any-file: 'drivers/usrsock/**'
- any-glob-to-any-file: 'drivers/vhost/**'
- any-glob-to-any-file: 'drivers/virtio/**'
- any-glob-to-any-file: 'drivers/wireless/**'
- any-glob-to-any-file: 'include/nuttx/1wire/**'
- any-glob-to-any-file: 'include/nuttx/aie/**'
- any-glob-to-any-file: 'include/nuttx/analog/**'
- any-glob-to-any-file: 'include/nuttx/clk/**'
- any-glob-to-any-file: 'include/nuttx/contactless/**'
- any-glob-to-any-file: 'include/nuttx/coresight/**'
- any-glob-to-any-file: 'include/nuttx/fdt.h'
- any-glob-to-any-file: 'include/nuttx/dma/**'
- any-glob-to-any-file: 'include/nuttx/drivers/**'
- any-glob-to-any-file: 'include/nuttx/eeprom/**'
- any-glob-to-any-file: 'include/nuttx/efuse/**'
- any-glob-to-any-file: 'include/nuttx/i2c/**'
- any-glob-to-any-file: 'include/nuttx/i3c/**'
- any-glob-to-any-file: 'include/nuttx/input/**'
- any-glob-to-any-file: 'include/nuttx/ioexpander/**'
- any-glob-to-any-file: 'include/nuttx/ipcc.h'
- any-glob-to-any-file: 'include/nuttx/lcd/**'
- any-glob-to-any-file: 'include/nuttx/leds/**'
- any-glob-to-any-file: 'include/nuttx/math/**'
- any-glob-to-any-file: 'include/nuttx/modem/**'
- any-glob-to-any-file: 'include/nuttx/motor/**'
- any-glob-to-any-file: 'include/nuttx/mtd/**'
- any-glob-to-any-file: 'include/nuttx/note/**'
- any-glob-to-any-file: 'include/nuttx/pinctrl/**'
- any-glob-to-any-file: 'include/nuttx/power/**'
- any-glob-to-any-file: 'include/nuttx/rc/**'
- any-glob-to-any-file: 'include/nuttx/regmap/**'
- any-glob-to-any-file: 'include/nuttx/reset/**'
- any-glob-to-any-file: 'include/nuttx/rf/**'
- any-glob-to-any-file: 'include/nuttx/rmt/**'
- any-glob-to-any-file: 'include/nuttx/rpmsg/**'
- any-glob-to-any-file: 'include/nuttx/rptun/**'
- any-glob-to-any-file: 'include/nuttx/segger/**'
- any-glob-to-any-file: 'include/nuttx/serial/**'
- any-glob-to-any-file: 'include/nuttx/spi/**'
- any-glob-to-any-file: 'include/nuttx/syslog/**'
- any-glob-to-any-file: 'include/nuttx/timers/**'
- any-glob-to-any-file: 'include/nuttx/usrsock/**'
- any-glob-to-any-file: 'include/nuttx/vhost/**'
- any-glob-to-any-file: 'include/nuttx/virtio/**'
- any-glob-to-any-file: 'include/nuttx/wireless/**'

"Area: Documentation":
- changed-files:
- any-glob-to-any-file: 'Documentation/**'
Expand Down
2 changes: 1 addition & 1 deletion .github/linters/setup.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[flake8]
ignore = W503,W605,E203
ignore = W503,W605,E203,E704
max-complexity = 27
max-line-length = 125
multi_line_output=3
Expand Down
23 changes: 18 additions & 5 deletions .github/workflows/arch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ jobs:
echo 'arch_contains_sim=1' | tee -a $GITHUB_OUTPUT
elif [[ "$labels" == *"Arch: x86_64"* ]]; then
echo 'arch_contains_x86_64=1' | tee -a $GITHUB_OUTPUT
elif [[ "$labels" == *"Arch: x86"* ]]; then
echo 'arch_contains_x86=1' | tee -a $GITHUB_OUTPUT
elif [[ "$labels" == *"Arch: xtensa"* ]]; then
echo 'arch_contains_xtensa=1' | tee -a $GITHUB_OUTPUT
fi
Expand All @@ -91,6 +93,8 @@ jobs:
echo 'board_contains_sim=1' | tee -a $GITHUB_OUTPUT
elif [[ "$labels" == *"Board: x86_64"* ]]; then
echo 'board_contains_x86_64=1' | tee -a $GITHUB_OUTPUT
elif [[ "$labels" == *"Board: x86"* ]]; then
echo 'board_contains_x86=1' | tee -a $GITHUB_OUTPUT
elif [[ "$labels" == *"Board: xtensa"* ]]; then
echo 'board_contains_xtensa=1' | tee -a $GITHUB_OUTPUT
fi
Expand All @@ -103,9 +107,9 @@ jobs:
id: select-builds
run: |
# Skip all macOS and Windows Builds
if [[ "${{ inputs.os }}" != "Linux" ]]; then
echo "Skipping all macOS and Windows Builds"
# Skip all macOS Builds
if [[ "${{ inputs.os }}" == "macOS" ]]; then
echo "Skipping all macOS Builds"
echo "skip_all_builds=1" | tee -a $GITHUB_OUTPUT
exit
fi
Expand All @@ -119,12 +123,14 @@ jobs:
arch_contains_arm64=${{ steps.get-arch.outputs.arch_contains_arm64 }}
arch_contains_riscv=${{ steps.get-arch.outputs.arch_contains_riscv }}
arch_contains_sim=${{ steps.get-arch.outputs.arch_contains_sim }}
arch_contains_x86=${{ steps.get-arch.outputs.arch_contains_x86 }}
arch_contains_x86_64=${{ steps.get-arch.outputs.arch_contains_x86_64 }}
arch_contains_xtensa=${{ steps.get-arch.outputs.arch_contains_xtensa }}
board_contains_arm=${{ steps.get-arch.outputs.board_contains_arm }}
board_contains_arm64=${{ steps.get-arch.outputs.board_contains_arm64 }}
board_contains_riscv=${{ steps.get-arch.outputs.board_contains_riscv }}
board_contains_sim=${{ steps.get-arch.outputs.board_contains_sim }}
board_contains_x86=${{ steps.get-arch.outputs.board_contains_x86 }}
board_contains_x86_64=${{ steps.get-arch.outputs.board_contains_x86_64 }}
board_contains_xtensa=${{ steps.get-arch.outputs.board_contains_xtensa }}
Expand All @@ -151,6 +157,7 @@ jobs:
"$arch_contains_arm64" != "$board_contains_arm64" ||
"$arch_contains_riscv" != "$board_contains_riscv" ||
"$arch_contains_sim" != "$board_contains_sim" ||
"$arch_contains_x86" != "$board_contains_x86" ||
"$arch_contains_x86_64" != "$board_contains_x86_64" ||
"$arch_contains_xtensa" != "$board_contains_xtensa"
]]; then
Expand All @@ -169,13 +176,13 @@ jobs:
# If PR was Created or Modified: Exclude some boards
pr=${{github.event.pull_request.number}}
if [[ "$pr" != "" ]]; then
echo "Excluding arm-0[248], arm-1[02-9], risc-v-04..06, sim-03, xtensa-02"
echo "Excluding arm-0[1249], arm-1[124-9], risc-v-04..06, sim-03, xtensa-02"
boards=$(
echo '${{ inputs.boards }}' |
jq --compact-output \
'map(
select(
test("arm-0[248]") == false and test("arm-1[02-9]") == false and
test("arm-0[1249]") == false and test("arm-1[124-9]") == false and
test("risc-v-0[4-9]") == false and
test("sim-0[3-9]") == false and
test("xtensa-0[2-9]") == false
Expand Down Expand Up @@ -218,6 +225,12 @@ jobs:
skip_build=1
fi

# For "Arch / Board: x86": Build other
elif [[ "$arch_contains_x86" == "1" || "$board_contains_x86" == "1" ]]; then
if [[ "$board" != *"other"* ]]; then
skip_build=1
fi

# For "Arch / Board: x86_64": Build x86_64-01
elif [[ "$arch_contains_x86_64" == "1" || "$board_contains_x86_64" == "1" ]]; then
if [[ "$board" != *"x86_64-"* ]]; then
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ on:
paths-ignore:
- 'Documentation/**'
branches:
- master
- 'releases/*'
tags:

Expand Down Expand Up @@ -87,7 +86,7 @@ jobs:
esac
fi
echo "name=$OS_REF" >> $GITHUB_OUTPUT
echo "os_ref=$OS_REF" >> $GITHUB_OUTPUT
echo "apps_ref=$APPS_REF" >> $GITHUB_OUTPUT
- name: Checkout nuttx repo
Expand Down Expand Up @@ -185,6 +184,7 @@ jobs:
if [ "X${{matrix.boards}}" = "Xcodechecker" ]; then
./cibuild.sh -c -A -N -R --codechecker testlist/${{matrix.boards}}.dat
else
( sleep 7200 ; echo Killing pytest after timeout... ; pkill -f pytest )&
./cibuild.sh -c -A -N -R -S testlist/${{matrix.boards}}.dat
fi
Expand Down Expand Up @@ -284,6 +284,7 @@ jobs:
with:
msystem: MSYS
update: false
cache: false
install: >-
base-devel
gcc
Expand Down Expand Up @@ -328,7 +329,7 @@ jobs:
git config --global --add safe.directory /github/workspace/sources/nuttx
git config --global --add safe.directory /github/workspace/sources/apps
cd sources/nuttx/tools/ci
./cibuild.sh -g -i -A -C -R testlist/${{matrix.boards}}.dat
./cibuild.sh -g -i -A -C -N -R testlist/${{matrix.boards}}.dat
- uses: actions/upload-artifact@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
sync-labels: true

- name: Assign labels based on the PR's size
uses: codelytv/[email protected].1
uses: codelytv/[email protected].2
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
ignore_file_deletions: true
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@
/.config-*
/.config\ *
/.cproject
/.cache
/.clang-format
/.gdbinit
/.gdb_history
/.project
Expand Down Expand Up @@ -79,3 +81,5 @@ kwarning
SAVEMake.defs
SAVEconfig
.aider*
imx9-norimage.img
config.txt
11 changes: 11 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ If you are not on this list and believe you should be, please inform us.
ICLA
====
Abdelatif Guettouche
Adam Feuer
Adam Porter
Alan Carvalho de Assis
Aleksandr Vyhovanec
Expand All @@ -20,6 +21,9 @@ Daniel P. Carvalho
David S. Alessio
David Sidrane
Dong Heng
Duo Zhang
Felipe Moura Oliveira
Flavio Paiva Junqueira
Fotis Panagiotopoulos
Giorgio Groß
Goden Freemans
Expand All @@ -36,10 +40,13 @@ Jaehyuk Cho
Janne Rosberg
Johannes Schock
Jose Pablo Carballo
Justin Mclean
Jukka Laitinen
Junmin Kim
Junping Du
Ken Pettit
Laurent Latil
Lup Yuen Lee
Manuel Stuhn
Marc Rechte
Marc Rosen
Expand All @@ -59,6 +66,7 @@ Michael Jung
Michal Lyszczek
Miguel Ángel Herranz Trillo (Miguel Herranz)
Mihai Serban
Mohammad Asif Siddiqui
Nathan Hartman
Neil Hancock
Nicholas Elliot Chin (Nicholas Chin)
Expand All @@ -77,13 +85,16 @@ Sebastien Lorquet
Sergey Nikitenko
Takashi Yamamoto (Yamamoto Takashi)
Thomas Axelsson
Tiago Medicci Serrano
Tomek CEDRO
Uros Platise
Vasilijev Alexand Anatoljevich (Alexander Vasiliev)
Ville Juven
Wolfgang Gerd Reißnegger (Wolfgang Reißnegger)
Xiang Xiao
Yanfeng Liu
Yuuichi Nakamura
Yamamoto Takashi

CCLA
====
Expand Down
23 changes: 19 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ find_program(KCONFIGLIB olddefconfig)
if(NOT KCONFIGLIB)
message(
FATAL_ERROR "Kconfig environment depends on kconfiglib, Please install:
$ pip install kconfiglib")
$ sudo apt install python3-kconfiglib")
endif()

# BOARD CONFIG can be set to directory path, or <board-name>[/:]<config-name>
Expand Down Expand Up @@ -337,13 +337,19 @@ if(NOT EXISTS ${CMAKE_BINARY_DIR}/.config OR NOT "${NUTTX_DEFCONFIG}" STREQUAL
CACHE INTERNAL "Saved defconfig path" FORCE)

# Print configuration choices
message(STATUS " CMake ${CMAKE_VERSION}")
message(STATUS " CMake: ${CMAKE_VERSION}")
if(CMAKE_GENERATOR MATCHES "Ninja")
execute_process(
COMMAND ninja --version
OUTPUT_VARIABLE ninja_version
OUTPUT_STRIP_TRAILING_WHITESPACE)
message(STATUS " Ninja ${ninja_version}")
message(STATUS " Ninja: ${ninja_version}")

# Ninja generator does not yet know how to build archives in pieces, so
# response files must be used to deal with very long linker command lines.
set(CMAKE_NINJA_FORCE_RESPONSE_FILE
1
CACHE INTERNAL "")
endif()
message(STATUS " Board: ${NUTTX_BOARD}")
message(STATUS " Config: ${NUTTX_CONFIG}")
Expand All @@ -359,6 +365,10 @@ nuttx_export_kconfig(${CMAKE_BINARY_DIR}/.config)
include(nuttx_generate_headers)
include(nuttx_generate_outputs)
include(nuttx_add_library)

# add NuttX CMake extenstion after nuttx_add_library
include(nuttx_extensions)

include(nuttx_add_application)
include(nuttx_add_romfs)
include(nuttx_add_symtab)
Expand Down Expand Up @@ -573,6 +583,11 @@ if(NOT CONFIG_BUILD_KERNEL)

endif()

# after we traverse all build directories unify all target dependencies and all
# romfs target
process_all_target_dependencies()
process_all_directory_romfs()

# Link step ##################################################################

# Get linker script to use
Expand Down Expand Up @@ -736,7 +751,7 @@ endif()
# Generate system map using the compiler toolchain. Conventionally, the tool
# which dump symbols are called nm, though, some compiler toolchain may have a
# different name.
if(NOT WIN32)
if(NOT CMAKE_HOST_WIN32)
add_custom_command(
OUTPUT System.map
COMMAND
Expand Down
2 changes: 1 addition & 1 deletion Documentation/Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ verify_ssl = true
[dev-packages]

[packages]
docutils = "==0.18.1"
docutils = "==0.19"
myst-parser = "*"
sphinx_rtd_theme = "*"
Sphinx = "~=6.0"
Expand Down
Loading

0 comments on commit c1c8e0e

Please sign in to comment.