update method to find Intel Graphics Compiler

search order is:
1. check variable IGC__IGC_TARGETS. if set it provides a list of targets
required to get compiler stack
2. check for variable IGC_DIR. if set include such folder
3. check if gmmlib folder exists in workspace. if yes, then include this
folder

When including folder (2 & 3), it is expected that IGC__IGC_TARGETS
variable will be exposed

Change-Id: I853606971a6b8d094ae13f7681857fe7717b9cd3
This commit is contained in:
Artur Harasimiuk
2018-02-23 22:41:16 +01:00
committed by sys_ocldev
parent e8f5f5286d
commit 4636367d55

View File

@@ -249,30 +249,34 @@ else(ARTIFACTS_DIR)
endif()
set(UMKM_SHAREDDATA_INCLUDE_PATHS $<TARGET_PROPERTY:${GMMUMD_LIB_NAME},INTERFACE_INCLUDE_DIRECTORIES>)
if(IGC_DIR)
get_filename_component(IGC_DIR "${IGC_DIR}" ABSOLUTE)
else(IGC_DIR)
get_filename_component(IGC_DIR_tmp "${CMAKE_SOURCE_DIR}/../igc" ABSOLUTE)
if(IS_DIRECTORY "${IGC_DIR_tmp}")
set(IGC_DIR "${IGC_DIR_tmp}")
# Intel Graphics Compiler detection
if(NOT IGC__IGC_TARGETS)
if(IGC_DIR)
get_filename_component(IGC_DIR "${IGC_DIR}" ABSOLUTE)
else(IGC_DIR)
get_filename_component(IGC_DIR_tmp "${CMAKE_SOURCE_DIR}/../igc" ABSOLUTE)
if(IS_DIRECTORY "${IGC_DIR_tmp}")
set(IGC_DIR "${IGC_DIR_tmp}")
endif()
endif()
endif()
message(STATUS "IGC source dir is: ${IGC_DIR}")
get_filename_component(IGC_PATH "${IGDRCL_BUILD_DIR}/igc" ABSOLUTE)
if(IS_DIRECTORY ${IGC_DIR})
if(NOT IS_DIRECTORY "${IGC_DIR}")
message(FATAL_ERROR "Intel Graphics Compiler not found!")
endif()
message(STATUS "IGC source dir is: ${IGC_DIR}")
set(IGC_OPTION__LIBRARY_NAME "igdccl")
set(IGC_OPTION__OUTPUT_DIR "${IGC_PATH}")
set(IGC_OPTION__OUTPUT_DIR "${IGDRCL_BUILD_DIR}/igc")
set(IGC_OPTION__INCLUDE_IGC_COMPILER_TOOLS OFF)
add_subdirectory("${IGC_DIR}" "${IGDRCL_BUILD_DIR}/igc" EXCLUDE_FROM_ALL)
set(IGDRCL__IGC_TARGETS "${IGC__IGC_TARGETS}")
foreach(TARGET_tmp ${IGDRCL__IGC_TARGETS})
list(APPEND IGDRCL__IGC_INCLUDE_DIR $<TARGET_PROPERTY:${TARGET_tmp},INTERFACE_INCLUDE_DIRECTORIES>)
endforeach(TARGET_tmp)
message(STATUS "IGC Includes: ${IGDRCL__IGC_INCLUDE_DIR}")
endif()
set(IGDRCL__IGC_TARGETS "${IGC__IGC_TARGETS}")
foreach(TARGET_tmp ${IGDRCL__IGC_TARGETS})
list(APPEND IGDRCL__IGC_INCLUDE_DIR $<TARGET_PROPERTY:${TARGET_tmp},INTERFACE_INCLUDE_DIRECTORIES>)
endforeach(TARGET_tmp)
message(STATUS "IGC targets: ${IGDRCL__IGC_TARGETS}")
if(INSTRUMENTATION_SOURCE_DIR)
get_filename_component(INSTRUMENTATION_SOURCE_DIR "${INSTRUMENTATION_SOURCE_DIR}" ABSOLUTE)
else(INSTRUMENTATION_SOURCE_DIR)
@@ -290,11 +294,6 @@ endif(ARTIFACTS_DIR)
add_definitions(-DGMM_OCL)
if(IGC_PATH)
get_filename_component(IGC_PATH "${IGC_PATH}" ABSOLUTE)
message(STATUS "IGC binaries path: ${IGC_PATH}")
endif(IGC_PATH)
# We want to organize our IDE targets into folders
set_property(GLOBAL PROPERTY USE_FOLDERS ON)