clang: Include the libclang python bindings in the build

Modify the clang recipe to provide also the python module
'clang' when building libclang.

(From OE-Core rev: 091fb8f51b5fdd3cb8e53e540d3c6feb8c40f8d5)

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Luca Fancellu 2025-05-19 12:18:50 +01:00 committed by Richard Purdie
parent c26f016b74
commit 474a7b65e3

View File

@ -49,7 +49,7 @@ def get_clang_host_arch(bb, d):
def get_clang_target_arch(bb, d): def get_clang_target_arch(bb, d):
return get_clang_arch(bb, d, 'TARGET_ARCH') return get_clang_arch(bb, d, 'TARGET_ARCH')
PACKAGECONFIG_CLANG_COMMON = "build-id eh libedit rtti shared-libs \ PACKAGECONFIG_CLANG_COMMON = "build-id eh libedit rtti shared-libs libclang-python \
${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcplusplus libomp unwindlib', '', d)} \ ${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcplusplus libomp unwindlib', '', d)} \
" "
@ -90,6 +90,7 @@ PACKAGECONFIG[split-dwarf] = "-DLLVM_USE_SPLIT_DWARF=ON,-DLLVM_USE_SPLIT_DWARF=O
PACKAGECONFIG[terminfo] = "-DLLVM_ENABLE_TERMINFO=ON -DCOMPILER_RT_TERMINFO_LIB=ON,-DLLVM_ENABLE_TERMINFO=OFF -DCOMPILER_RT_TERMINFO_LIB=OFF,ncurses," PACKAGECONFIG[terminfo] = "-DLLVM_ENABLE_TERMINFO=ON -DCOMPILER_RT_TERMINFO_LIB=ON,-DLLVM_ENABLE_TERMINFO=OFF -DCOMPILER_RT_TERMINFO_LIB=OFF,ncurses,"
PACKAGECONFIG[thin-lto] = "-DLLVM_ENABLE_LTO=Thin -DLLVM_BINUTILS_INCDIR=${STAGING_INCDIR},,binutils," PACKAGECONFIG[thin-lto] = "-DLLVM_ENABLE_LTO=Thin -DLLVM_BINUTILS_INCDIR=${STAGING_INCDIR},,binutils,"
PACKAGECONFIG[unwindlib] = "-DCLANG_DEFAULT_UNWINDLIB=libunwind,-DCLANG_DEFAULT_UNWINDLIB=libgcc,," PACKAGECONFIG[unwindlib] = "-DCLANG_DEFAULT_UNWINDLIB=libunwind,-DCLANG_DEFAULT_UNWINDLIB=libgcc,,"
PACKAGECONFIG[libclang-python] = "-DCLANG_PYTHON_BINDINGS_VERSIONS=${PYTHON_BASEVERSION},,"
OECMAKE_SOURCEPATH = "${S}/llvm" OECMAKE_SOURCEPATH = "${S}/llvm"
@ -312,7 +313,7 @@ PROVIDES:append:class-native = " llvm-native libclc-native"
PROVIDES:append:class-target = " llvm libclc" PROVIDES:append:class-target = " llvm libclc"
PROVIDES:append:class-nativesdk = " nativesdk-llvm nativesdk-libclc" PROVIDES:append:class-nativesdk = " nativesdk-llvm nativesdk-libclc"
PACKAGES =+ "${PN}-libllvm ${PN}-lldb-python ${PN}-libclang-cpp ${PN}-tidy ${PN}-format ${PN}-tools ${PN}-clc \ PACKAGES =+ "${PN}-libllvm ${PN}-lldb-python ${PN}-libclang-python ${PN}-libclang-cpp ${PN}-tidy ${PN}-format ${PN}-tools ${PN}-clc \
libclang lldb lldb-server liblldb llvm-linker-tools" libclang lldb lldb-server liblldb llvm-linker-tools"
@ -342,6 +343,8 @@ FILES:${PN}-libclang-cpp = "${libdir}/libclang-cpp.so.*"
FILES:${PN}-lldb-python = "${libdir}/python*/site-packages/lldb/*" FILES:${PN}-lldb-python = "${libdir}/python*/site-packages/lldb/*"
FILES:${PN}-libclang-python = "${PYTHON_SITEPACKAGES_DIR}/clang/*"
FILES:${PN}-tidy = "${bindir}/*clang-tidy*" FILES:${PN}-tidy = "${bindir}/*clang-tidy*"
FILES:${PN}-format = "${bindir}/*clang-format*" FILES:${PN}-format = "${bindir}/*clang-format*"