mirror of
https://github.com/dgibson/dtc.git
synced 2025-10-13 16:27:39 -04:00
meson: port python bindings to build natively via meson and meson-python
We get full build parallelism and fewer confusing ancient distutils paths. The python wheels build fully standalone, including linking libfdt as a static library. For convenience, when running pip install a meson option is passed that prevents building tools or installing headers/pkgconfig files. meson-python would otherwise include them in the wheel itself, in case they are needed, but this is essentially a bit useless so don't bother. The old setuptools-based build is now redundant and goes away. Signed-off-by: Eli Schwartz <eschwartz@gentoo.org> Message-ID: <20250430152601.43554-3-eschwartz@gentoo.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
7ebfcac852
commit
ecb21febfd
9 changed files with 73 additions and 213 deletions
|
@ -43,6 +43,7 @@ py = import('python')
|
|||
py = py.find_installation(required: get_option('python'))
|
||||
swig = find_program('swig', required: get_option('python'))
|
||||
pylibfdt_enabled = not meson.is_cross_build() and py.found() and swig.found() ? true : false
|
||||
wheel_only = get_option('wheel-only')
|
||||
|
||||
version_gen_h = vcs_tag(
|
||||
command: ['git', 'describe', '--dirty=+'],
|
||||
|
@ -59,7 +60,7 @@ util_dep = declare_dependency(
|
|||
dependencies: libfdt_dep
|
||||
)
|
||||
|
||||
if get_option('tools')
|
||||
if get_option('tools') and not wheel_only
|
||||
flex = find_program('flex', required: true)
|
||||
bison = find_program('bison', required: true)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue