8f403f0137
Until now, micropython-lib was a package that installed v1.9.3, which is more than 6 years old. This was acceptable since micropython never made any other official release of the library until v1.20. Meanwhile, the libraries underwent a reorganization, and they are now available in a directory structure that cannot be copied directly into the target. This might explain why v1.9.3 is still present in the current day buildroot (which comes with micropython v1.22). As part of the changes made by the micropython project, the libraries are now released together with the interpreter. They are cloned as a submodule into the lib/micropython-lib directory, and are present in the release tarball. This commit introduces an auxiliary script to collect those libraries and reorder them into a structure that can then be copied into /usr/lib/micropython. The script utilizes a module from the tools directory of the micropython repo. The helper script is kept as simple as possible, and makes use of existing micropython tools (used to process manifests) to discover the list of packages available in micropython-lib. The hope is that by relying on them, any future changes in directory structure will be covered by the official "manifestfile.py" tool. It is to be noted that, even though the manifestfile.py script/module is part of the micropython package, it is actually written for CPython, and is not expected to even work when using micropython as an interpreter. This we do not need to introduce host-micropython to use that tool, and microython already depends on host-python3 for other parts of the build. With this commit, micropython-lib is installed (optionally) as part of micropython, and thus a separate package is no longer needed. The original config variable name was retained as it fits with the micropython package "namespace", and thus this is backward compatible and no legacy handling is needed. This commit also ensures that the libraries in micropython-lib will be updated together with newer versions of micropython in the future. Signed-off-by: Abilio Marques <abiliojr@gmail.com> [yann.morin.1998@free.fr: - use if-block in Config.in - simplify PYTHONPATH - fix check-package - reword and reorder parts of the commit log ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> |
||
---|---|---|
arch | ||
board | ||
boot | ||
configs | ||
docs | ||
fs | ||
linux | ||
package | ||
support | ||
system | ||
toolchain | ||
utils | ||
.checkpackageignore | ||
.clang-format | ||
.defconfig | ||
.editorconfig | ||
.flake8 | ||
.gitignore | ||
.gitlab-ci.yml | ||
.shellcheckrc | ||
CHANGES | ||
Config.in | ||
Config.in.legacy | ||
COPYING | ||
DEVELOPERS | ||
Makefile | ||
Makefile.legacy | ||
README |
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on OFTC IRC. If you would like to contribute patches, please read https://buildroot.org/manual.html#submitting-patches