Commit Graph

912 Commits

Author SHA1 Message Date
Huang Qi f824e6852f apps/rust: makefile updates for unified library build system
Replace individual Rust crate building with unified library approach through
makefile modifications for better build performance and dependency management.

* Updated Application.mk to include Rust.mk and add unified build targets
* Modified top-level Makefile to integrate RUST_BUILD_UNIFIED in build process
* Added RUST_CLEAN_UNIFIED call to Application.mk clean target
* Updated Makefile distclean target to remove rust_unified_lib directory
* Updated example Makefiles to use nuttx_add_rust registration function
* Removed manual EXTRA_LIBS configurations from Rust example Make.defs files
* Added .rdat registry files and rust_unified_lib to gitignore
* Enhanced tools/Rust.mk with unified build system functions

The unified system builds all registered Rust crates together through
makefile integration, improving compilation efficiency and enabling better
dependency management across the NuttX applications framework.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-04-20 15:20:21 +08:00
anjiahao 0123be06e8 Fix not define elf attribute error
build examplse/elf
arm-none-eabi-ld:--defsym:0: syntax error

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:20:14 +08:00
anjiahao 51e47f4b3e Application.mk:define application attribute in elf symbol
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:20:14 +08:00
anjiahao b77bad3d1b Application.mk:fix can't find extra lib path
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:19:37 +08:00
xuxin19 597462a77c kernel build(bugfix): support fix kernel build mod wasm build
1. elf prog should not build with WASM_BUILD
2. make import add WASM link

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:19:29 +08:00
anjiahao b419759530 Kconfig/task heap:use Kconfig to contrl Application heapsize
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:19:27 +08:00
xuxin19 61fdc3f1ac kernel build(fix):fix kernel build elf link error
add libapps link lib by default
add extra link lib
make compiler-rt lib into extra lib

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-04-20 15:19:18 +08:00
anjiahao e4437325c2 bin:Copy debug info to a separate folder
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:19:18 +08:00
anjiahao 1ebce0611d macos:fix sim:module build warning
CP:  /Users/vela/ajh/nuttx/include/nuttx/fs/hostfs.h
CC:  inode/fs_inodebasename.c ar: no archive members specified
usage:  ar -d [-TLsv] archive file ...
        ar -m [-TLsv] archive file ...
        ar -m [-abiTLsv] position archive file ...
        ar -p [-TLsv] archive [file ...]
        ar -q [-cTLsv] archive file ...
        ar -r [-cuTLsv] archive file ...
        ar -r [-abciuTLsv] position archive file ...
        ar -t [-TLsv] archive [file ...]
        ar -x [-ouTLsv] archive [file ...]

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:18:56 +08:00
openvela-robot 373ce0a3b0 Merge branch 'master' into vela
apache/nuttx-apps commit id: c5c18a29973802b196e77adf3fd3e6742a269d83

Signed-off-by: ligd <liguiding1@xiaomi.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-04-20 15:18:54 +08:00
openvela-robot 4e0a573f23 nsh: support watch command
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2026-04-20 15:18:53 +08:00
openvela-robot b0d05e45c1 cmake(snyc):fix nuttx-apps CMakeList.txt conflit
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:18:51 +08:00
anjiahao 7188b8aae6 apps/Makefile:Add a postinstall keyword to do something before compilation is completed and linking begin
It is better to package the dynamic module into romfs after it is compiled.

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:18:49 +08:00
anjiahao b659973ecd Application.mk:unify module compilation
we can build a module like app,
use 'DYNLIB' mark current path is a loadable module

and CFLAGSELF and CMODFLAGS can act on
these compiled as loadable module

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
Signed-off-by: wanggang26 <wanggang26@xiaomi.com>
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:18:49 +08:00
openvela-robot db9da5caee nshlib:Add macro restrictions to code that uses floating point numbers
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:18:49 +08:00
openvela-robot 7344f54d1a top:fix memleak if ps_recored retrun error
7   534         128     6096556 0x44c43720  [0x0402a5ec0] <mm_zalloc+8>        mm_heap/mm_zalloc.c:45
                                             [0x0402a35ce] <zalloc+18>          umm_heap/umm_zalloc.c:70
                                             [0x0402b72ba] <top_callback+238>   nsh_proccmds.c:733
                                             [0x0402b57f8] <nsh_foreach_direntry+32> nsh_fsutils.c:474
                                             [0x0402b7c86] <cmd_top+562>        nsh_proccmds.c:1252
                                             [0x0402b2496] <nsh_command+70>     nsh_command.c:1262
                                             [0x0402ae9fc] <nsh_execute+60>     nsh_parse.c:717

 7   534         512     6095859 0x44c1e270  [0x0402a5ec0] <mm_zalloc+8>        mm_heap/mm_zalloc.c:45
                                             [0x0402a35ce] <zalloc+18>          umm_heap/umm_zalloc.c:70
                                             [0x0402b72d8] <top_callback+268>   nsh_proccmds.c:741
                                             [0x0402b57f8] <nsh_foreach_direntry+32> nsh_fsutils.c:474
                                             [0x0402b7c86] <cmd_top+562>        nsh_proccmds.c:1252
                                             [0x0402b2496] <nsh_command+70>     nsh_command.c:1262
                                             [0x0402ae9fc] <nsh_execute+60>     nsh_parse.c:717

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2026-04-20 15:18:47 +08:00
openvela-robot 552570496c cjson_test:add define CONFIG_CJSON_NESTING_LIMIT
Summary:
 Added a limit to CJSON_NESTING_LIMIT. The default value is 1000, which can cause stack overflow in some test cases.

Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
2026-04-20 15:18:46 +08:00
openvela-robot ce2bf03d31 net: Remove IFF_DOWN flag to compatible with Linux/*BSD
turn off interface by checking IFF_UP flag isn't set:
https://github.com/apache/nuttx/issues/1838

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-04-20 15:18:45 +08:00
openvela-robot 3a3a0906f6 examples/pipe: Enhance test by different r/w thread priority
By arranging and combining the priorities of read and write
threads to cover more usage scenarios.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-04-20 15:18:43 +08:00
openvela-robot 7be1dac276 tools/mksymtab.sh: Using getopts to parse parameters
Use the "-a" option to specify additional lists

Examples
  - The basic.txt
    $ cat basic.txt
    basic_func0
    basic_func1
    basic_func2

  - The additional.txt
    $ cat additional.txt
    additional_func0
    additional_func1
    additional_func2

  1. Get symbols from directory "EMPTY_DIR" and additional list basic.txt
    ./tools/mksymtab.sh ./EMPTY_DIR -a basic.txt
    #if defined(CONFIG_EXECFUNCS_HAVE_SYMTAB)
    const struct symtab_s CONFIG_EXECFUNCS_SYMTAB_ARRAY[] =
    #elif defined(CONFIG_NSH_SYMTAB)
    const struct symtab_s CONFIG_NSH_SYMTAB_ARRAYNAME[] =
    #else
    const struct symtab_s dummy_symtab[] =
    #endif
    {
      {"basic_func0", &basic_func0},
      {"basic_func1", &basic_func1},
      {"basic_func2", &basic_func2},
    };

  2. Get symbols from directory "EMPTY_DIR" and two additional lists basic.txt, additional.txt
    ./tools/mksymtab.sh ./EMPTY_DIR -a basic.txt -a additional.txt
    #if defined(CONFIG_EXECFUNCS_HAVE_SYMTAB)
    const struct symtab_s CONFIG_EXECFUNCS_SYMTAB_ARRAY[] =
    #elif defined(CONFIG_NSH_SYMTAB)
    const struct symtab_s CONFIG_NSH_SYMTAB_ARRAYNAME[] =
    #else
    const struct symtab_s dummy_symtab[] =
    #endif
    {
      {"additional_func0", &additional_func0},
      {"additional_func1", &additional_func1},
      {"additional_func2", &additional_func2},
      {"basic_func0", &basic_func0},
      {"basic_func1", &basic_func1},
      {"basic_func2", &basic_func2},
    };

  3. Set prefix and get symbols from directory "EMPTY_DIR" and two additional lists basic.txt, additional.txt
    ./tools/mksymtab.sh ./EMPTY_DIR PREFIX_TEST  -a basic.txt -a additional.txt
    const struct symtab_s PREFIX_TEST_exports[] =
    {
      {"additional_func0", &additional_func0},
      {"additional_func1", &additional_func1},
      {"additional_func2", &additional_func2},
      {"basic_func0", &basic_func0},
      {"basic_func1", &basic_func1},
      {"basic_func2", &basic_func2},
    };

  4. Error: Missing <imagedirpath>
    $ ./tools/mksymtab.sh
    ERROR: Missing <imagedirpath>

    Usage: ./tools/mksymtab.sh <imagedirpath> [symtabprefix] [-a additionalsymbolspath]

UNSUPPORTED usage examples
  # `getopt` supports these, but the usage in GNU and macOS is incompatible.
  - ./tools/mksymtab.sh ./EMPTY_DIR -a basic.txt PREFIX_TEST -a additional.txt
  - ./tools/mksymtab.sh -a basic.txt ./EMPTY_DIR PREFIX_TEST -a additional.txt

References
  BASH(1)   -- getopts
  GETOPT(1) -- getopt

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-04-20 15:18:42 +08:00
openvela-robot a6daffa109 nxcodec: add rich debugging logs
Signed-off-by: shizhenghui <shizhenghui@xiaomi.com>
2026-04-20 15:18:41 +08:00
openvela-robot b2949ba2d4 nxcodec: fix build warning
nxcodec_main.c:143:37: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘uint32_t’ {aka ‘unsigned int’} [-Wformat=]
  143 |             printf("nxcodec size: %lux%lu\n",
      |                                   ~~^
      |                                     |
      |                                     long unsigned int
      |                                   %u
  144 |                    codec.output.format.fmt.pix.width,
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                               |
      |                                               uint32_t {aka unsigned int}
nxcodec_main.c:143:41: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint32_t’ {aka ‘unsigned int’} [-Wformat=]
  143 |             printf("nxcodec size: %lux%lu\n",
      |                                       ~~^
      |                                         |
      |                                         long unsigned int
      |                                       %u
  144 |                    codec.output.format.fmt.pix.width,
  145 |                    codec.output.format.fmt.pix.height);
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                               |
      |                                               uint32_t {aka unsigned int}

Signed-off-by: shizhenghui <shizhenghui@xiaomi.com>
2026-04-20 15:18:40 +08:00
openvela-robot 8c632a5e3b nsh: Fix PS printing misalignment
When the stack is allocated in megabytes, printing seven bits of ps will not align

Signed-off-by: wangmingrong <wangmingrong@xiaomi.com>
2026-04-20 15:18:26 +08:00
openvela-robot 6fd790f084 add INTERPRETERS_WAMR_DYNAMIC_AOT_DEBUG config
Signed-off-by: zhangliangyu3 <zhangliangyu3@xiaomi.com>
2026-04-20 15:18:22 +08:00
xuxin19 dff8011f04 app build:enhance apps to support independent out-of-tree builds
by defining the `PREFIX` variable and setting it to an external path,
`make -C /some/app` can be called independently to build a separate application out_tree.

modify Make.defs and Application.mk so that their dependent variables can be overwritten.

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:18:19 +08:00
openvela-robot 79b997db4c coremark:Fix renaming issues with other libraries
The crc16 naming implemented in coremark is duplicated in zblue.

Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
2026-04-20 15:18:17 +08:00
openvela-robot ec4f19c3fa app/netstatistics: Add net statistics api for user
Signed-off-by: meijian <meijian@xiaomi.com>
2026-04-20 15:18:16 +08:00
openvela-robot cdc354393f uORB: Add topic information acquisition and setting interface.
Signed-off-by: likun17 <likun17@xiaomi.com>
2026-04-20 15:18:15 +08:00
openvela-robot 504c342d88 examples/tlpi:Add t_sched_getaffinity.c compilation
Signed-off-by: chenzhijia <chenzhijia@xiaomi.com>
2026-04-20 15:18:14 +08:00
openvela-robot ef994d3c0b build(deps): bump codelytv/pr-size-labeler from 1.10.0 to 1.10.1
Bumps [codelytv/pr-size-labeler](https://github.com/codelytv/pr-size-labeler) from 1.10.0 to 1.10.1.
- [Release notes](https://github.com/codelytv/pr-size-labeler/releases)
- [Commits](https://github.com/codelytv/pr-size-labeler/compare/v1.10.0...v1.10.1)

---
updated-dependencies:
- dependency-name: codelytv/pr-size-labeler
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-20 15:18:13 +08:00
openvela-robot bf1281df9f uORB: DEBUG_UORB add LIBC_PRINT_EXTENSION dependency.
Signed-off-by: likun17 <likun17@xiaomi.com>
2026-04-20 15:18:11 +08:00
openvela-robot ce02909afe build.yml: Workflow aligned with nuttx repo
build.yml: Limit the GitHub Runners

see https://github.com/apache/nuttx/pull/13412
2026-04-20 15:18:10 +08:00
openvela-robot aa82103353 system/coredump: compatible restore name with NAME_MAX 32 Bytes
Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-04-20 15:18:09 +08:00
openvela-robot 33257351ff gas.c:Adapt to uORB new macro definition content.
Signed-off-by: likun17 <likun17@xiaomi.com>
2026-04-20 15:18:07 +08:00
openvela-robot e417694fd3 cmake: change the aiotjsc tool compilation from quickjs to quickapp
refactor aiotjsc tools cmake and cmake-format related CMakeLists.txt

Signed-off-by: liaobin1 <liaobin1@xiaomi.com>
2026-04-20 15:18:06 +08:00
xuxin19 4aa9073a9a module build:replace BUILD_LOADABLE with MODULES
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:18:05 +08:00
openvela-robot 4f8bb2f266 module/sotest: Fix depends of SOTEST_BUILTINFS
Log:
  sotest_main.c: In function 'sotest_main':
  sotest_main.c:116:29: error: storage size of 'desc' isn't known
    116 |   struct boardioc_romdisk_s desc;
        |                             ^~~~
  sotest_main.c:116:29: error: unused variable 'desc' [-Werror=unused-variable]
  cc1: all warnings being treated as errors

Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-04-20 15:18:04 +08:00
openvela-robot de64f97d23 cmake(fix):bugfix fix missing include path for aiotjs
in file included from /home/work/ssd1/workspace/mirtos-ci/nuttx/../apps/frameworks/quickapp/src/framework/cdp/cdpprotocol.h:12,
                 from /home/work/ssd1/workspace/mirtos-ci/nuttx/../apps/frameworks/quickapp/src/framework/cdp/heapprofiler.h:3,
                 from /home/work/ssd1/workspace/MiRTOS-CI/apps/frameworks/quickapp/src/jse/quickjs/jse_quickjs.cpp:11:
/home/work/ssd1/workspace/MiRTOS-CI/nuttx/../apps/frameworks/quickapp/src/aiotjs.h:10:10: fatal error: app_interface.h: No such file or directory
   10 | #include "app_interface.h"
      |          ^~~~~~~~~~~~~~~~~

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:18:03 +08:00
openvela-robot 2a21bb4eec pthread_cleanup: move clenup down to tls
Signed-off-by: ligd <liguiding1@xiaomi.com>
2026-04-20 15:18:02 +08:00
openvela-robot 715ac5e7a6 nshlib: fix top command accessing illegal memory
When initialized for the first time, the memset parameter is smaller than the actual buffer size
Causes subsequent accesses to uninitialized memory in the array

Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2026-04-20 15:18:01 +08:00
openvela-robot 0feaf96295 testing/crypto: add crc32 testcases
Signed-off-by: makejian <makejian@xiaomi.com>
2026-04-20 15:17:59 +08:00
openvela-robot abd7c12d01 lvgl/Makefile: support multiple options for LV_OPTLEVEL
This configuration is added to put LVGL into PSRAM for execution, and the lv_*.o file needs to be matched in the link script. Since LTO optimization will cause the file name to be modified, resulting in a matching failure, it will only take effect if LTO optimization is removed during compilation.

Link script modification: https://gerrit.odm.mioffice.cn/c/velaos/vendor/bes/framework/services_1502x/+/680741

Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
2026-04-20 15:17:58 +08:00
openvela-robot 6806436819 cmake:implement CMake build for NuttX Lua interpreter
add CMake module for register lua mod
nsh> lua
Lua 5.4.0  Copyright (C) 1994-2020 Lua.org, PUC-Rio
> hello.say_hello()
Hello World!
> io.write("abs is =",math.abs(-10),"\n")
abs is =10
> os.exit()
nsh>

Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2026-04-20 15:17:57 +08:00
openvela-robot e66c0dfb50 benchmarks/rt-tests: Add CONFIG_PIPE dependency and fix compilation issues.
This commit added the required CONFIG_PIPE dependency and fix
the compilation issues.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2026-04-20 15:17:56 +08:00
openvela-robot 30856f00da [wireless][wapi] add extend api for private needs
Signed-off-by: meijian <meijian@xiaomi.com>
2026-04-20 15:17:55 +08:00
openvela-robot 86ea27e8ec ltp: TESTING_LTP_STACKSIZE depend on TESTING_LTP
Signed-off-by: zhangshoukui <zhangshoukui@xiaomi.com>
2026-04-20 15:17:54 +08:00
openvela-robot 2a98df01c3 fastboot tool: Status read failed while rebooting into bootloader
Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
2026-04-20 15:17:52 +08:00
openvela-robot 5e07563436 update config switch to only a HEAPDUMP
now open a HEAPDUMP Marco for heapdump tool
test by specific product
Signed-off-by: qinliansong <qinliansong@xiaomi.com>
2026-04-20 15:17:51 +08:00
openvela-robot 8bf2e0a88b .gitignore: Add .aider* to .gitignore
Aider is AI pair programmer: https://aider.chat

The .aider* files is not a part of NuttX but used by
Aider as temporary files.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-04-20 15:17:50 +08:00
openvela-robot aa8f4c7688 testing/debug: Enhancement for watch address by cmd line
This patch add some command line arguments for debug
program, then you can use it to insert watchpoint or
breakpoint to arbitrary address at runtime.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2026-04-20 15:17:49 +08:00