From 2827bc7340286798fab284caac7917c7150f5a80 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henry=20Linjam=C3=A4ki?= <henry.mikael.linjamaki@intel.com>
Date: Wed, 9 Oct 2024 13:45:43 +0300
Subject: [PATCH] Fix couldn't find libjpeg-turbo package built from sources

... due to different package name (libturbojpeg).

Also, run the `test_dbk_jpeg` test.
---
 CMakeLists.txt                        |  7 ++++---
 lib/CL/devices/CMakeLists.txt         |  2 +-
 lib/CL/devices/cpu_dbk/CMakeLists.txt |  4 ++--
 tests/runtime/CMakeLists.txt          | 12 ++++++++++++
 4 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index ab7290456..f7f2d2c40 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1044,11 +1044,12 @@ else()
 endif()
 
 if(ENABLE_HOST_CPU_DEVICES AND NOT ENABLE_CONFORMANCE)
-  pkg_check_modules(LIBJPEG_TURBO libjpeg-turbo>=3.0.0)
-  set(HAVE_LIBJPEG_TURBO ${LIBJPEG_TURBO_FOUND})
-  if(NOT ${HAVE_LIBJPEG_TURBO})
+  pkg_search_module(LIBJPEG_TURBO IMPORTED_TARGET
+    libjpeg-turbo>=3.0.0 libturbojpeg>=3.0.0)
+  if(NOT LIBJPEG_TURBO_FOUND)
     message(STATUS "libjpeg-turbo v3.0.0+ not found, disabled")
   endif()
+  set(HAVE_LIBJPEG_TURBO ${LIBJPEG_TURBO_FOUND})
 endif()
 ######################################################################################
 
diff --git a/lib/CL/devices/CMakeLists.txt b/lib/CL/devices/CMakeLists.txt
index f51d453eb..a6d40ad43 100644
--- a/lib/CL/devices/CMakeLists.txt
+++ b/lib/CL/devices/CMakeLists.txt
@@ -193,7 +193,7 @@ if(HAVE_LIBXSMM) # for includedir flags
   target_link_libraries("pocl-devices" PRIVATE PkgConfig::LIBXSMM)
 endif()
 if(HAVE_LIBJPEG_TURBO)
-  target_link_libraries("pocl-devices" PRIVATE libjpeg-turbo::turbojpeg)
+  target_link_libraries("pocl-devices" PRIVATE PkgConfig::LIBJPEG_TURBO)
 endif ()
 
 set(POCL_DEVICES_OBJS "${POCL_DEVICES_OBJS}"
diff --git a/lib/CL/devices/cpu_dbk/CMakeLists.txt b/lib/CL/devices/cpu_dbk/CMakeLists.txt
index c50237e3a..75f7e89a3 100644
--- a/lib/CL/devices/cpu_dbk/CMakeLists.txt
+++ b/lib/CL/devices/cpu_dbk/CMakeLists.txt
@@ -1,7 +1,7 @@
 
 if(HAVE_LIBJPEG_TURBO)
-    list(APPEND POCL_DEVICES_LINK_LIST libjpeg-turbo::turbojpeg )
-endif ()
+    list(APPEND POCL_DEVICES_LINK_LIST PkgConfig::LIBJPEG_TURBO)
+endif()
 
 list(APPEND POCL_DEVICES_SOURCES
         ${CMAKE_CURRENT_SOURCE_DIR}/pocl_dbk_khr_jpeg_cpu.c ${CMAKE_CURRENT_SOURCE_DIR}/pocl_dbk_khr_jpeg_cpu.h
diff --git a/tests/runtime/CMakeLists.txt b/tests/runtime/CMakeLists.txt
index b287416d3..063014136 100644
--- a/tests/runtime/CMakeLists.txt
+++ b/tests/runtime/CMakeLists.txt
@@ -158,6 +158,18 @@ add_test(NAME "runtime/test_large_buf" COMMAND "test_large_buf")
 
 add_test(NAME "runtime/test_compile_n_link" COMMAND "test_compile_n_link")
 
+if(HAVE_LIBJPEG_TURBO)
+  add_test(NAME "runtime/test_dbk_jpeg"
+    COMMAND test_dbk_jpeg 640 480
+    "${CMAKE_CURRENT_SOURCE_DIR}/test_data/tram.rgb")
+  set_tests_properties("runtime/test_dbk_jpeg"
+    PROPERTIES
+    COST 2.0
+    PROCESSORS 1
+    DEPENDS "pocl_version_check"
+    LABELS "internal;runtime")
+endif()
+
 if(OPENCL_HEADER_VERSION GREATER 299)
   add_test(NAME "runtime/test_queue_creation_with_hints" COMMAND "test_queue_creation_with_hints")
   set(OCL_30_TESTS "runtime/test_queue_creation_with_hints")
-- 
GitLab