Hello,

In addition to the patch I sent earlier to remove the makedepend 
dependency [1], we are experiencing issues with our builds targeting the
master branches. There is a problem with the oe-core clang/LLVM upgrade
to 23.1.0. libclc fails to build and therefore also mesa-pvr.

| The no-dev option is deprecated.  Use -Wno-author instead.
| -- The CXX compiler identification is GNU 16.2.0
| -- The C compiler identification is GNU 16.2.0
| -- Detecting CXX compiler ABI info
| -- Detecting CXX compiler ABI info - done
| -- Check for working CXX compiler: 
/var/home/scf/build/BSP8/bitbake-builds/tdxref-master/build/tmp/work/aarch64-tdx-linux/libclc/23.1.0/recipe-sysroot-native/usr/bin/aarch64-tdx-linux/aarch64-tdx-linux-g++
 - skipped
| -- Detecting CXX compile features
| -- Detecting CXX compile features - done
| -- Detecting C compiler ABI info
| -- Detecting C compiler ABI info - done
| -- Check for working C compiler: 
/var/home/scf/build/BSP8/bitbake-builds/tdxref-master/build/tmp/work/aarch64-tdx-linux/libclc/23.1.0/recipe-sysroot-native/usr/bin/aarch64-tdx-linux/aarch64-tdx-linux-gcc
 - skipped
| -- Detecting C compile features
| -- Detecting C compile features - done
| -- Check for working CLC compiler: 
/var/home/scf/build/BSP8/bitbake-builds/tdxref-master/build/tmp/work/aarch64-tdx-linux/libclc/23.1.0/recipe-sysroot-native/usr/bin/aarch64-tdx-linux/aarch64-tdx-linux-gcc
| CMake Error at cmake/modules/CMakeTestCLCCompiler.cmake:29 (message):
|   The CLC compiler
| 
|     
/var/home/scf/build/BSP8/bitbake-builds/tdxref-master/build/tmp/work/aarch64-tdx-linux/libclc/23.1.0/recipe-sysroot-native/usr/bin/aarch64-tdx-linux/aarch64-tdx-linux-gcc
| 
|   is not able to compile a simple OpenCL test program.
| 
|   Output:
| 
|   aarch64-tdx-linux-gcc: error: unrecognized command-line option
|   '--target=spirv64-unknown-unknown'
| 
| Call Stack (most recent call first):
|   CMakeLists.txt:20 (enable_language)
| 
| 
| -- Configuring incomplete, errors occurred!

I tried to understand what is going on. 
As oe-core removed libclc, a copy was introduced with 
commit de61ea26 ("libclc: Import from removed oe-core recipe").
However, with the upgrade to 23.1.0, libclc changes how it detects the
build compiler. 

Due to the constantly introduced breaking changes from LLVM, mesa itself
moved to its own libclc fork with mesa-libclc [2].
I tried to follow a similar path for mesa-pvr-25.inc:

  --- a/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-25.inc
  +++ b/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr-25.inc
  @@ -206 +206 @@
  -PACKAGECONFIG[libclc] = "...,,libclc spirv-tools spirv-llvm-translator 
${MESA_NATIVE}"
  +PACKAGECONFIG[libclc] = "...,,mesa-libclc spirv-tools spirv-llvm-translator 
${MESA_NATIVE}"
  @@ -239 +239 @@
  -RDEPENDS:libopencl-mesa += "...'libclc'..."
  +RDEPENDS:libopencl-mesa += "...'mesa-libclc'..."

+ dropping libclc_git.bb

mesa-libclc builds correctly, but mesa-pvr do_configure then fails:

  | Found CMake: NO
  | Run-time dependency libclc found: NO  (tried pkg-config)
  | ../sources/mesa-pvr-25.2.8/meson.build:873:12: ERROR: Dependency
  |   "libclc" not found (tried pkg-config)

I got a bit stuck on what the correct approach would be.
Adding a patch to change the dependency in powervr meson.build source?
Before spending more time on it, I wanted to report this here first.

Any ideas how to proceed?

[1] 
https://lore.kernel.org/yocto-meta-ti/[email protected]/T/#u
[2] 
https://git.openembedded.org/openembedded-core/commit/?id=2614dd44ed724844df13d44b7cb6f8971925b0a3

Kind regards

Franz
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20341): 
https://lists.yoctoproject.org/g/meta-ti/message/20341
Mute This Topic: https://lists.yoctoproject.org/mt/121130603/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to