nuttx/cmake
Abhishek Mishra ab6b1fd6f9 !build: add build-time password generation with mkpasswd tool.
Introduce mkpasswd, a pure-C host tool for generating encrypted password
files at build time using TEA encryption. This enables secure,
credential-free firmware images while allowing build-time password
configuration.

Changes:
* Add mkpasswd.c host tool for TEA-based password hashing and encryption
* Integrate mkpasswd into Make build system (tools/Makefile.host)
* Add CMake support for mkpasswd compilation and ROMFS passwd generation
* Add CONFIG_BOARD_ETC_ROMFS_PASSWD_* configuration options to Kconfig
* Implement credential exclusion from defconfig to prevent password leaking
* Update savedefconfig.cmake to strip sensitive credentials
* Fix mkdir() portability for Windows Native builds (CONFIG_WINDOWS_NATIVE)
* Change default username from "admin" to "root" (POSIX convention)
* Improve build-failure error message with full menuconfig navigation path

BREAKING CHANGE: Boards enabling CONFIG_BOARD_ETC_ROMFS_PASSWD_ENABLE
must set CONFIG_BOARD_ETC_ROMFS_PASSWD_PASSWORD to a non-empty string
of at least 8 characters. The build now fails with an explicit error if
this config is left empty. To fix: run 'make menuconfig' and navigate to:
  Board Selection --->
    Auto-generate /etc/passwd at build time --->
      Admin password

Signed-off-by: Abhishek Mishra <mishra.abhishek2808@gmail.com>
2026-04-14 16:06:30 +08:00
..
menuconfig.cmake cmake: add olddefconfig target for CMake builds 2026-04-02 13:16:54 +08:00
nuttx_3rdparty.cmake cmake: add support for 3rdparty functions 2026-04-02 13:16:54 +08:00
nuttx_add_application.cmake cmake(bugfix):do not set nuttx_add_app NAME as required 2026-01-27 20:54:26 +08:00
nuttx_add_dependencies.cmake style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
nuttx_add_library.cmake cmake(feat):define elf option and enable apps module build 2026-01-19 14:45:37 +08:00
nuttx_add_module.cmake cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00
nuttx_add_romfs.cmake !build: add build-time password generation with mkpasswd tool. 2026-04-14 16:06:30 +08:00
nuttx_add_subdirectory.cmake cmake: pass exclusion list to nuttx_add_subdirectory 2025-10-03 11:34:56 +08:00
nuttx_add_symtab.cmake style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
nuttx_create_symlink.cmake cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00
nuttx_export_header.cmake cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00
nuttx_extensions.cmake cmake(enhance):cmake support DYNLIB build 2026-01-19 14:45:37 +08:00
nuttx_generate_headers.cmake style: Fix "the the" typo across the codebase. 2026-03-23 11:07:49 +01:00
nuttx_generate_outputs.cmake arch/tricore: Remove tasking compiler tool specific code from 2025-09-26 13:26:31 +02:00
nuttx_generate_sim_ld.cmake cmake:bugfix refine gen sim link script to independent cmake module 2024-09-15 10:01:07 +08:00
nuttx_kconfig.cmake cmake(enhance):include-style defconfig can modified via menuconfig 2026-01-15 15:42:17 -03:00
nuttx_mkconfig.cmake cmake: Enhance .config handling and comparison logic 2026-02-26 09:46:02 -03:00
nuttx_mkversion.cmake cmake(bugfix):fix VERSION genarator strip error in CMake build 2025-06-18 15:45:30 -04:00
nuttx_multiple_link.cmake cmake/multiple link: cmake supports multiple link global variables out of bounds 2024-10-08 16:55:45 +08:00
nuttx_overrides.cmake cmake(bugfix):change default compile obj extension to .o 2026-01-27 20:54:26 +08:00
nuttx_parse_function_args.cmake cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00
nuttx_process_config.cmake cmake(enhance):include-style defconfig can modified via menuconfig 2026-01-15 15:42:17 -03:00
nuttx_redefine_symbols.cmake cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00
nuttx_remove_compile_options.cmake style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
nuttx_sethost.cmake build ci:add msvc windows native ci workflow 2024-10-13 10:25:19 +08:00
nuttx_source_file_properties.cmake cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00
nuttx_toolchain.cmake cmake: add -D__NuttX__ to preprocessor 2026-04-10 12:22:24 -03:00
savedefconfig.cmake !build: add build-time password generation with mkpasswd tool. 2026-04-14 16:06:30 +08:00
symtab.c.in cmake: migrate to SPDX identifier 2024-09-10 11:34:40 +08:00