diff mbox series

[08/11] clang: multilib-header fix for llvm-config.h

Message ID 20250424-clang-merge-v1-8-5a492a8461aa@gmail.com
State New
Headers show
Series clang-merge: Bring clang recipes from meta-clang | expand

Commit Message

Khem Raj April 24, 2025, 7:20 a.m. UTC
From: Liu Yiding <liuyd.fnst@fujitsu.com>

fix the issue that:
| file /usr/include/llvm/Config/llvm-config.h conflicts between attempted installs of lib32-llvm-dev-20.1.2-r0.core2_32 and llvm-dev-20.1.2-r0.core2_64

reproduce steps:
1. Add in local.conf the following lines:

  MACHINE ?= "qemux86-64"

  require conf/multilib.conf

  MULTILIBS ?= "multilib:lib32"

  DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"

2. add lib32-llvm-dev llvm-dev to core-image-minimal.bb

  IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL} lib32-llvm-dev llvm-dev"

3. $ bitbake core-image-minimal

Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/clang/clang_git.bb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Dmitry Baryshkov April 24, 2025, 9:06 a.m. UTC | #1
On Thu, Apr 24, 2025 at 12:20:42AM -0700, Khem Raj wrote:
> From: Liu Yiding <liuyd.fnst@fujitsu.com>
> 
> fix the issue that:
> | file /usr/include/llvm/Config/llvm-config.h conflicts between attempted installs of lib32-llvm-dev-20.1.2-r0.core2_32 and llvm-dev-20.1.2-r0.core2_64
> 
> reproduce steps:
> 1. Add in local.conf the following lines:
> 
>   MACHINE ?= "qemux86-64"
> 
>   require conf/multilib.conf
> 
>   MULTILIBS ?= "multilib:lib32"
> 
>   DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"
> 
> 2. add lib32-llvm-dev llvm-dev to core-image-minimal.bb
> 
>   IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL} lib32-llvm-dev llvm-dev"
> 
> 3. $ bitbake core-image-minimal
> 
> Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-devtools/clang/clang_git.bb | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Can be squashed into the previous patch. There is little point in adding
a commit with known issues.
Khem Raj April 24, 2025, 6:20 p.m. UTC | #2
On Thu, Apr 24, 2025 at 2:06 AM Dmitry Baryshkov
<dmitry.baryshkov@oss.qualcomm.com> wrote:
>
> On Thu, Apr 24, 2025 at 12:20:42AM -0700, Khem Raj wrote:
> > From: Liu Yiding <liuyd.fnst@fujitsu.com>
> >
> > fix the issue that:
> > | file /usr/include/llvm/Config/llvm-config.h conflicts between attempted installs of lib32-llvm-dev-20.1.2-r0.core2_32 and llvm-dev-20.1.2-r0.core2_64
> >
> > reproduce steps:
> > 1. Add in local.conf the following lines:
> >
> >   MACHINE ?= "qemux86-64"
> >
> >   require conf/multilib.conf
> >
> >   MULTILIBS ?= "multilib:lib32"
> >
> >   DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"
> >
> > 2. add lib32-llvm-dev llvm-dev to core-image-minimal.bb
> >
> >   IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL} lib32-llvm-dev llvm-dev"
> >
> > 3. $ bitbake core-image-minimal
> >
> > Signed-off-by: Liu Yiding <liuyd.fnst@fujitsu.com>
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >  meta/recipes-devtools/clang/clang_git.bb | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
>
> Can be squashed into the previous patch. There is little point in adding
> a commit with known issues.
>

seem fine. I wanted to credit the authors thats why I kept it separate
but I have squashed that for v2 with SOBs added

>
> --
> With best wishes
> Dmitry
diff mbox series

Patch

diff --git a/meta/recipes-devtools/clang/clang_git.bb b/meta/recipes-devtools/clang/clang_git.bb
index 86a5277a179bd9b9522ad0298212f7e0b4f6504f..92a2f7c94bffc3480254280923365656eda704ca 100644
--- a/meta/recipes-devtools/clang/clang_git.bb
+++ b/meta/recipes-devtools/clang/clang_git.bb
@@ -22,7 +22,7 @@  INHIBIT_DEFAULT_DEPS:class-native = "1"
 LDFLAGS:append:class-target:riscv32 = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
 LDFLAGS:append:class-target:mips = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
 
-inherit cmake cmake-native pkgconfig python3native python3targetconfig
+inherit cmake cmake-native multilib_header pkgconfig python3native python3targetconfig
 
 OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
 
@@ -244,6 +244,7 @@  do_install:append:class-target () {
     # Allow bin path to change based on YOCTO_ALTERNATE_EXE_PATH
     sed -i 's;${_IMPORT_PREFIX}/bin;${_IMPORT_PREFIX_BIN};g' ${D}${libdir}/cmake/llvm/LLVMExports-release.cmake
 
+    oe_multilib_header llvm/Config/llvm-config.h
     # Insert function to populate Import Variables
     sed -i "4i\
 if(DEFINED ENV{YOCTO_ALTERNATE_EXE_PATH})\n\