diff mbox series

spirv-tools: fix SPIRV-ToolsTarget.cmake INTERFACE_LINK_LIBRARIES

Message ID 20230604041042.35737-1-vince@underview.tech
State New
Headers show
Series spirv-tools: fix SPIRV-ToolsTarget.cmake INTERFACE_LINK_LIBRARIES | expand

Commit Message

Vincent Davis Jr June 4, 2023, 4:10 a.m. UTC
The output of spirv-tools specifically SPIRV-ToolsTarget.cmake gets
utilized in other recipes. If other recipe utilizes cmake and includes
SPIRV-Tools in target_link_libraries. With the current setup
do_install:append:class-target updates the cmake checked install
file to bellow

set_target_properties(SPIRV-Tools PROPERTIES
    INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
    INTERFACE_LINK_LIBRARIES "${_IMPORT_PREFIX}/lib"
)

set_target_properties(SPIRV-Tools-shared PROPERTIES
    INTERFACE_COMPILE_DEFINITIONS "SPIRV_TOOLS_SHAREDLIB"
    INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
    INTERFACE_LINK_LIBRARIES "${_IMPORT_PREFIX}/lib"
)

If base_libdir isn't lib, but lib64 it leads to errors such as

error: '../recipe-sysroot/usr/lib',
needed by 'layers/libVkLayer_khronos_validation.so',
missing and no known rule to make it

Signed-off-by: Vincent Davis Jr <vince@underview.tech>
---
 meta/recipes-graphics/spir/spirv-tools_1.3.243.0.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/meta/recipes-graphics/spir/spirv-tools_1.3.243.0.bb b/meta/recipes-graphics/spir/spirv-tools_1.3.243.0.bb
index c57acc5a11..21f9dd9650 100644
--- a/meta/recipes-graphics/spir/spirv-tools_1.3.243.0.bb
+++ b/meta/recipes-graphics/spir/spirv-tools_1.3.243.0.bb
@@ -32,7 +32,7 @@  do_install:append:class-target() {
     # Properly set _IMPORT_PREFIX in INTERFACE_LINK_LIBRARIES so that dependent
     # tools can find the right library
     sed -i ${D}${libdir}/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake \
-        -e 's:INTERFACE_LINK_LIBRARIES.*$:INTERFACE_LINK_LIBRARIES "\$\{_IMPORT_PREFIX\}/lib":'
+        -e 's:INTERFACE_LINK_LIBRARIES.*$:INTERFACE_LINK_LIBRARIES "\$\{_IMPORT_PREFIX\}\${base_libdir}":'
 }
 
 # all the libraries are unversioned, so don't pack it on PN-dev