buildroot/utils
Vincent Fazio 76cd14167f package/python3: bump python to 3.12.4
Along with the version bump, a number of the patches have been dropped
or reworked.

Compiled shared module builds are now disabled via py_cv_module_* = n/a
when possible (see PY_STDLIB_MOD_SET_NA). Leveraging this method allows
dropping numerous patches.

Note: this method does not work when access to a compiled module is
wrapped by a python-based module such as sqlite, tkinter, etc. In these
cases, configure knobs are still required to disable these modules and
their wrappers.

Both setup.py and distutils are no longer utilized upstream, so patches
have been dropped or adjusted accordingly.

Patch 0007 has been dropped, the Xtensa architecture can avoid compile
errors by using a toolchain with kernel headers newer than 3.17 [0].
That would require a new, non-trivial dependency to be added, but it
would also need to be propagated to all packages that select python3; as
we consider xtensa with old headers to be a corner case, we decide to
not address the issue, and rather add an exclusion in genrandconfig to
avoid the issue in autobuilders.

Patch 0026 has been dropped, the issue is fixed in uClibc v1.0.37+ [1].
Note: uClibc is not generally supported by upstream CPython.

While we're making assumptions about uClibc, ac_cv_func_wcsftime=no is
no longer set as it was fixed in v1.0.0 [2].

Co-developed-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Co-developed-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[See 36e635d2d5]

Co-developed-by: Roy Kollen Svendsen <roy.kollen.svendsen@akersolutions.com>
[See 687b96db4d]

[0]: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=f61bf8e7d19e0a3456a7a9ed97c399e4353698dc
[1]: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/libcrypt/crypt.c?id=2f6076cdaada2132b670b5ef25ad80c76a916c5a
[2]: https://lists.uclibc.org/pipermail/uclibc/2014-November/048723.html

Signed-off-by: Vincent Fazio <vfazio@gmail.com>
[yann.morin.1998@free.fr;
  - extend the commit log for the xtensa headers case
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2024-06-21 21:10:37 +02:00
..
checkpackagelib utils/check-package: new check for Buildroot's defconfig files 2024-05-01 21:41:27 +02:00
checksymbolslib toolchain/toolchain-bare-metal-buildroot: new toolchain 2024-02-06 17:57:17 +01:00
add-custom-hashes utils/add-custom-hashes: symlink linux-headers to linux 2024-05-29 08:56:47 +02:00
brmake utils/brmake: fix shellcheck errors 2023-02-08 15:28:28 +01:00
check-package utils/check-package: new check for Buildroot's defconfig files 2024-05-01 21:41:27 +02:00
check-symbols utils/check-symbols: new script 2023-02-06 16:30:20 +01:00
config utils/config: fix shellcheck errors 2023-02-08 15:28:30 +01:00
diffconfig utils/diffconfig: use python3 explicitly 2021-12-29 10:07:59 +01:00
docker-run utils/docker-run: set podman userns option in environment 2024-06-01 15:51:11 +02:00
genrandconfig package/python3: bump python to 3.12.4 2024-06-21 21:10:37 +02:00
get-developers utils/get-developers: add -d option for custom DEVELOPERS file 2022-07-23 16:32:58 +02:00
getdeveloperlib.py utils/getdeveloperlib.py: handle file removal 2023-09-11 22:08:22 +02:00
readme.txt utils/readme.txt: document docker-run script 2024-02-06 17:02:03 +01:00
scancpan package/perl: bump to version 5.36.0 2023-01-12 20:33:22 +01:00
scanpypi utils/scanpypi: use a set comprehension for dependencies 2024-02-07 19:58:28 +01:00
size-stats-compare utils/size-stats-compare: fix flake8 error 2022-02-01 21:52:35 +01:00
test-pkg utils/docker-run: fix shellcheck errors 2023-02-08 15:28:32 +01:00
update-rust package/rust: update to 1.79.0 2024-06-21 21:10:33 +02:00

This directory contains various useful scripts and tools for working
with Buildroot. You need not add this directory in your PATH to use
any of those tools, but you may do so if you want.

brmake
    a script that can be run instead of make, that prepends the date in
    front of each line, redirects all of the build output to a file
    ("'br.log' in the current directory), and just outputs the Buildroot
    messages (those lines starting with >>>) on stdout.
    Do not run this script for interactive configuration (e.g. menuconfig)
    or on an unconfigured directory. The output is redirected so you will see
    nothing.

check-package
    a script that checks the coding style across the buildroot tree. It
    checks package's Config.in and .mk files, runs shellcheck for all shell
    scripts, flake8 for python files, checks for typoes, etc.
    It checks the .checkpackageignore file if errors should be ignored and
    errors if there's a file listed that doesn't produce an error.

docker-run
    a script that runs a command (like make check-package) inside the
    buildroot CI docker container; pass no command to get an interactive
    shell.

genrandconfig
    a script that generates a random configuration, used by the autobuilders
    (http://autobuild.buildroot.org). It selects a random toolchain from
    support/config-fragments/autobuild and randomly selects packages to build.

get-developers
    a script to return the list of people interested in a specific part
    of Buildroot, so they can be Cc:ed on a mail. Accepts a patch as
    input, a package name or and architecture name.

scancpan
    a script to create a Buildroot package by scanning a CPAN module
    description.

scanpypi
    a script to create a Buildroot package by scanning a PyPI package
    description.

size-stats-compare
    a script to compare the rootfs size between two different Buildroot
    configurations. This can be used to identify the size impact of
    a specific option, of a set of specific options, or of an update
    to a newer Buildroot version...

test-pkg
    a script that tests a specific package against a set of various
    toolchains, with the goal to detect toolchain-related dependencies
    (wchar, threads...)