2018-02-05 22:07:21 +08:00
|
|
|
#
|
2019-12-18 18:40:25 +08:00
|
|
|
# Copyright (C) 2018-2020 Intel Corporation
|
2018-02-05 22:07:21 +08:00
|
|
|
#
|
2018-09-18 15:11:08 +08:00
|
|
|
# SPDX-License-Identifier: MIT
|
2018-02-05 22:07:21 +08:00
|
|
|
#
|
|
|
|
|
2018-05-11 16:54:35 +08:00
|
|
|
set(RUNTIME_SRCS_GENX_CPP_WINDOWS
|
2020-08-19 18:18:18 +08:00
|
|
|
windows/command_stream_receiver
|
|
|
|
windows/gmm_callbacks
|
2018-02-05 22:07:21 +08:00
|
|
|
)
|
2018-05-11 16:54:35 +08:00
|
|
|
|
|
|
|
set(RUNTIME_SRCS_GENX_CPP_LINUX
|
2020-08-19 18:18:18 +08:00
|
|
|
linux/command_stream_receiver
|
2018-02-05 22:07:21 +08:00
|
|
|
)
|
|
|
|
|
2018-05-11 16:54:35 +08:00
|
|
|
set(RUNTIME_SRCS_GENX_CPP_BASE
|
2020-08-19 18:18:18 +08:00
|
|
|
aub_command_stream_receiver
|
|
|
|
aub_mem_dump
|
|
|
|
buffer
|
|
|
|
command_queue
|
|
|
|
command_stream_receiver_simulated_common_hw
|
|
|
|
experimental_command_buffer
|
|
|
|
gpgpu_walker
|
|
|
|
hardware_commands_helper
|
|
|
|
hw_info
|
|
|
|
image
|
|
|
|
sampler
|
|
|
|
state_base_address
|
|
|
|
tbx_command_stream_receiver
|
2018-02-05 22:07:21 +08:00
|
|
|
)
|
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
macro(macro_for_each_platform)
|
|
|
|
string(TOLOWER ${PLATFORM_IT} PLATFORM_IT_LOWER)
|
2019-09-17 18:41:36 +08:00
|
|
|
|
2019-11-29 22:41:47 +08:00
|
|
|
foreach(PLATFORM_FILE "hw_cmds_${PLATFORM_IT_LOWER}.h" "hw_info_${PLATFORM_IT_LOWER}.h")
|
|
|
|
if(EXISTS ${CORE_GENX_PREFIX}/${PLATFORM_FILE})
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_H_BASE ${CORE_GENX_PREFIX}/${PLATFORM_FILE})
|
|
|
|
endif()
|
|
|
|
endforeach()
|
|
|
|
|
|
|
|
foreach(PLATFORM_FILE "reg_configs.h")
|
2018-03-22 18:35:24 +08:00
|
|
|
if(EXISTS ${GENX_PREFIX}/${PLATFORM_FILE})
|
2018-05-11 16:54:35 +08:00
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_H_BASE ${GENX_PREFIX}/${PLATFORM_FILE})
|
2018-03-22 18:35:24 +08:00
|
|
|
endif()
|
|
|
|
endforeach()
|
2018-02-05 22:07:21 +08:00
|
|
|
|
2018-05-29 18:15:24 +08:00
|
|
|
foreach(PLATFORM_FILE "hw_info_${PLATFORM_IT_LOWER}.inl")
|
2020-06-17 17:14:00 +08:00
|
|
|
foreach(BRANCH_DIR ${BRANCH_DIR_LIST})
|
|
|
|
if(EXISTS ${GENX_PREFIX}${BRANCH_DIR}${PLATFORM_FILE})
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_BASE ${GENX_PREFIX}${BRANCH_DIR}${PLATFORM_FILE})
|
|
|
|
endif()
|
|
|
|
endforeach()
|
2018-05-11 16:54:35 +08:00
|
|
|
endforeach()
|
2019-09-17 18:41:36 +08:00
|
|
|
|
2020-07-15 23:59:37 +08:00
|
|
|
foreach(BRANCH_DIR ${BRANCH_DIR_LIST})
|
|
|
|
string(REGEX REPLACE "/$" "" _BRANCH_FILENAME_SUFFIX "${BRANCH_DIR}")
|
|
|
|
string(REGEX REPLACE "^/" "_" _BRANCH_FILENAME_SUFFIX "${_BRANCH_FILENAME_SUFFIX}")
|
|
|
|
if(EXISTS ${GENX_PREFIX}${BRANCH_DIR}linux/hw_info_config_${PLATFORM_IT_LOWER}${_BRANCH_FILENAME_SUFFIX}.inl)
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_LINUX ${GENX_PREFIX}${BRANCH_DIR}linux/hw_info_config_${PLATFORM_IT_LOWER}${_BRANCH_FILENAME_SUFFIX}.inl)
|
|
|
|
endif()
|
|
|
|
endforeach()
|
2018-03-22 18:35:24 +08:00
|
|
|
endmacro()
|
2018-02-05 22:07:21 +08:00
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
macro(macro_for_each_gen)
|
|
|
|
set(GENX_PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/${GEN_TYPE_LOWER})
|
|
|
|
# Add default GEN files
|
2018-05-11 16:54:35 +08:00
|
|
|
foreach(SRC_IT ${RUNTIME_SRCS_GENX_H_BASE})
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_H_BASE ${GENX_PREFIX}/${SRC_IT})
|
|
|
|
endforeach()
|
2020-01-30 00:43:20 +08:00
|
|
|
|
2019-10-25 23:55:22 +08:00
|
|
|
foreach(SRC_IT "state_compute_mode_helper_${GEN_TYPE_LOWER}.cpp")
|
|
|
|
if(EXISTS ${GENX_PREFIX}/${SRC_IT})
|
2020-01-22 00:02:55 +08:00
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_BASE ${GENX_PREFIX}/${SRC_IT})
|
2019-10-25 23:55:22 +08:00
|
|
|
endif()
|
|
|
|
endforeach()
|
2020-01-22 00:02:55 +08:00
|
|
|
|
2019-09-19 16:36:13 +08:00
|
|
|
if(EXISTS "${GENX_PREFIX}/additional_files_${GEN_TYPE_LOWER}.cmake")
|
|
|
|
include("${GENX_PREFIX}/additional_files_${GEN_TYPE_LOWER}.cmake")
|
|
|
|
endif()
|
2018-05-11 16:54:35 +08:00
|
|
|
|
2019-07-15 21:08:42 +08:00
|
|
|
if(${SUPPORT_DEVICE_ENQUEUE_${GEN_TYPE}})
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_H_BASE ${GENX_PREFIX}/device_enqueue.h)
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_H_BASE ${GENX_PREFIX}/scheduler_definitions.h)
|
2020-02-21 15:32:20 +08:00
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_H_BASE ${GENX_PREFIX}/scheduler_builtin_kernel.inl)
|
2019-09-24 16:57:57 +08:00
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_BASE ${GENX_PREFIX}/device_queue_${GEN_TYPE_LOWER}.cpp)
|
2019-07-15 21:08:42 +08:00
|
|
|
endif()
|
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
foreach(OS_IT "BASE" "WINDOWS" "LINUX")
|
2018-05-11 16:54:35 +08:00
|
|
|
foreach(SRC_IT ${RUNTIME_SRCS_GENX_CPP_${OS_IT}})
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_${OS_IT} ${GENX_PREFIX}/${SRC_IT}_${GEN_TYPE_LOWER}.cpp)
|
2018-02-05 22:07:21 +08:00
|
|
|
endforeach()
|
2018-03-22 18:35:24 +08:00
|
|
|
endforeach()
|
2018-02-05 22:07:21 +08:00
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
apply_macro_for_each_platform()
|
2020-02-13 21:43:34 +08:00
|
|
|
|
2020-06-27 01:47:03 +08:00
|
|
|
foreach(BRANCH_DIR ${BRANCH_DIR_LIST})
|
|
|
|
string(REGEX REPLACE "/$" "" _BRANCH_FILENAME_SUFFIX "${BRANCH_DIR}")
|
|
|
|
string(REGEX REPLACE "^/" "_" _BRANCH_FILENAME_SUFFIX "${_BRANCH_FILENAME_SUFFIX}")
|
|
|
|
if(EXISTS ${GENX_PREFIX}${BRANCH_DIR}windows/hw_info_config_${GEN_TYPE_LOWER}${_BRANCH_FILENAME_SUFFIX}.cpp)
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_WINDOWS ${GENX_PREFIX}${BRANCH_DIR}windows/hw_info_config_${GEN_TYPE_LOWER}${_BRANCH_FILENAME_SUFFIX}.cpp)
|
|
|
|
endif()
|
|
|
|
if(EXISTS ${GENX_PREFIX}${BRANCH_DIR}linux/hw_info_config_${GEN_TYPE_LOWER}${_BRANCH_FILENAME_SUFFIX}.cpp)
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_LINUX ${GENX_PREFIX}${BRANCH_DIR}linux/hw_info_config_${GEN_TYPE_LOWER}${_BRANCH_FILENAME_SUFFIX}.cpp)
|
|
|
|
endif()
|
2020-08-07 01:38:21 +08:00
|
|
|
set(SRC_FILE ${NEO_SHARED_DIRECTORY}${BRANCH_DIR}${GEN_TYPE_LOWER}/image_core_${GEN_TYPE_LOWER}.cpp)
|
|
|
|
if(EXISTS ${SRC_FILE})
|
|
|
|
list(APPEND RUNTIME_SRCS_${GEN_TYPE}_CPP_BASE ${SRC_FILE})
|
|
|
|
endif()
|
2020-06-27 01:47:03 +08:00
|
|
|
endforeach()
|
|
|
|
|
2020-01-15 17:03:21 +08:00
|
|
|
list(APPEND ${GEN_TYPE}_SRC_LINK_BASE ${GENX_PREFIX}/enable_family_full_ocl_${GEN_TYPE_LOWER}.cpp)
|
2018-02-05 22:07:21 +08:00
|
|
|
|
2018-05-11 16:54:35 +08:00
|
|
|
list(APPEND RUNTIME_SRCS_GENX_ALL_BASE ${RUNTIME_SRCS_${GEN_TYPE}_H_BASE})
|
|
|
|
list(APPEND RUNTIME_SRCS_GENX_ALL_BASE ${RUNTIME_SRCS_${GEN_TYPE}_CPP_BASE})
|
2020-02-13 21:43:34 +08:00
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
list(APPEND HW_SRC_LINK ${${GEN_TYPE}_SRC_LINK_BASE})
|
2018-05-11 16:54:35 +08:00
|
|
|
list(APPEND RUNTIME_SRCS_GENX_ALL_WINDOWS ${RUNTIME_SRCS_${GEN_TYPE}_CPP_WINDOWS})
|
|
|
|
list(APPEND RUNTIME_SRCS_GENX_ALL_LINUX ${RUNTIME_SRCS_${GEN_TYPE}_CPP_LINUX})
|
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
if(UNIX)
|
|
|
|
list(APPEND HW_SRC_LINK ${${GEN_TYPE}_SRC_LINK_LINUX})
|
|
|
|
endif()
|
2018-08-30 20:20:31 +08:00
|
|
|
if(NOT DISABLED_GTPIN_SUPPORT)
|
2018-03-22 18:35:24 +08:00
|
|
|
list(APPEND ${GEN_TYPE}_SRC_LINK_BASE ${GENX_PREFIX}/gtpin_setup_${GEN_TYPE_LOWER}.cpp)
|
2018-02-05 22:07:21 +08:00
|
|
|
endif()
|
2018-05-11 16:54:35 +08:00
|
|
|
|
2018-03-22 18:35:24 +08:00
|
|
|
endmacro()
|
|
|
|
|
|
|
|
apply_macro_for_each_gen("SUPPORTED")
|
2018-02-27 21:47:36 +08:00
|
|
|
|
2018-03-08 02:49:20 +08:00
|
|
|
target_sources(${NEO_STATIC_LIB_NAME} PRIVATE ${RUNTIME_SRCS_GENX_ALL_BASE})
|
|
|
|
if(WIN32)
|
|
|
|
target_sources(${NEO_STATIC_LIB_NAME} PRIVATE ${RUNTIME_SRCS_GENX_ALL_WINDOWS})
|
|
|
|
else()
|
|
|
|
target_sources(${NEO_STATIC_LIB_NAME} PRIVATE ${RUNTIME_SRCS_GENX_ALL_LINUX})
|
|
|
|
endif()
|
|
|
|
set_property(GLOBAL PROPERTY RUNTIME_SRCS_GENX_ALL_BASE ${RUNTIME_SRCS_GENX_ALL_BASE})
|
|
|
|
set_property(GLOBAL PROPERTY RUNTIME_SRCS_GENX_ALL_LINUX ${RUNTIME_SRCS_GENX_ALL_LINUX})
|
2020-03-16 21:57:15 +08:00
|
|
|
set_property(GLOBAL PROPERTY RUNTIME_SRCS_GENX_ALL_WINDOWS ${RUNTIME_SRCS_GENX_ALL_WINDOWS})
|