From 653fde89ca16f3b08a925c8a06d1f1a391e90f21 Mon Sep 17 00:00:00 2001 From: Romain Biessy Date: Tue, 12 Mar 2024 14:53:42 +0100 Subject: [PATCH] Update FindDPCPP to find new include path (#144) --- cmake/Modules/FindDPCPP.cmake | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/cmake/Modules/FindDPCPP.cmake b/cmake/Modules/FindDPCPP.cmake index 8aa99533..cdbc89fa 100644 --- a/cmake/Modules/FindDPCPP.cmake +++ b/cmake/Modules/FindDPCPP.cmake @@ -30,16 +30,18 @@ include(FindPackageHandleStandardArgs) get_filename_component(DPCPP_BIN_DIR ${CMAKE_CXX_COMPILER} DIRECTORY) find_library(DPCPP_LIB NAMES sycl sycl6 PATHS "${DPCPP_BIN_DIR}/../lib") +# Look for the include directory containing SYCL headers in multiple possible locations +find_path(DPCPP_INCLUDE_DIR sycl + HINTS ${DPCPP_BIN_DIR}/../include ${DPCPP_BIN_DIR}/../../include + NO_DEFAULT_PATH +) + find_package_handle_standard_args(DPCPP FOUND_VAR DPCPP_FOUND - REQUIRED_VARS DPCPP_LIB + REQUIRED_VARS DPCPP_LIB DPCPP_INCLUDE_DIR ) -if(NOT DPCPP_FOUND) - return() -endif() - -mark_as_advanced(DPCPP_FOUND DPCPP_LIB) +mark_as_advanced(DPCPP_FOUND DPCPP_LIB DPCPP_INCLUDE_DIR) if(DPCPP_FOUND AND NOT TARGET DPCPP::DPCPP) set(CMAKE_CXX_STANDARD 17) @@ -49,7 +51,8 @@ if(DPCPP_FOUND AND NOT TARGET DPCPP::DPCPP) INTERFACE_COMPILE_OPTIONS ${COMPILE_FLAGS} INTERFACE_LINK_OPTIONS ${COMPILE_FLAGS} INTERFACE_LINK_LIBRARIES ${DPCPP_LIB} - INTERFACE_INCLUDE_DIRECTORIES "${DPCPP_BIN_DIR}/../include/sycl;${DPCPP_BIN_DIR}/../include") + INTERFACE_INCLUDE_DIRECTORIES "${DPCPP_INCLUDE_DIR}" + ) endif() function(add_sycl_to_target)