Rewrite the lunabuild toolchain with enhanced feature (#60)
authorLunaixsky <lunaixsky@qq.com>
Sun, 11 May 2025 16:09:23 +0000 (17:09 +0100)
committerGitHub <noreply@github.com>
Sun, 11 May 2025 16:09:23 +0000 (17:09 +0100)
* rewrite the lunabuild toolchain with enhanced feature

* reduce the boilerplate code in LConfig and LBuild
* introduce new syntax suger for better expressiveness
* support predicate based config depedency checking
* more efficient lazy evaluation

* polish the shconfig with new cmds and auto-completion

* temporary removed the menuconfig (for further inspection)
* add feature of aliasing commands
* add feature of auto-completion of config options

* clean up redundant lines

* add validator to restrict the flexibility of LConfig

* allow a bool config option change value based on other option's value
  similar to "select" in kconfig, but it is distributed to the actual
  affecting flags rather than centered around the master option

* update readme on build system

* clean up: unused node property
* clean up: add space after node directives for clarity
* clean up: reduce the size of whitelist of non-trivial-value rule

* shconfig: add `link` command to view the inverse dependency

* fix some typos

* migrate stock user space build to new build system

* fix corner cases in luna_build.py when no LConfig is used
* add back the missing arch_bits_* flags
* fix sometimes the shconfig being triggered multiple times

* refine the documentation, add extra warning messages

* shconfig: add "find" command to enable fuzzy searching
* shconfig: use shlex.split to disassemble the command line


No differences found