mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-18 22:08:53 +08:00
Rename cmake GEN variables
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
ca256a3f54
commit
29f74a1a98
171
platforms.cmake
171
platforms.cmake
@@ -4,50 +4,50 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
set(MAX_GEN 64)
|
||||
set(MAX_CORE 64)
|
||||
|
||||
set(ALL_GEN_TYPES "")
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake${BRANCH_DIR_SUFFIX}fill_gens.cmake)
|
||||
set(ALL_CORE_TYPES "")
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake${BRANCH_DIR_SUFFIX}fill_core_types.cmake)
|
||||
|
||||
set(ALL_GEN_TYPES_REVERSED ${ALL_GEN_TYPES})
|
||||
list(REVERSE ALL_GEN_TYPES_REVERSED)
|
||||
set(ALL_CORE_TYPES_REVERSED ${ALL_CORE_TYPES})
|
||||
list(REVERSE ALL_CORE_TYPES_REVERSED)
|
||||
|
||||
macro(FIND_IDX_FOR_GEN_TYPE GEN_TYPE GEN_IDX)
|
||||
list(FIND ALL_GEN_TYPES "${GEN_TYPE}" GEN_IDX)
|
||||
if(${GEN_IDX} EQUAL -1)
|
||||
message(FATAL_ERROR "No ${GEN_TYPE} allowed, exiting")
|
||||
macro(FIND_IDX_FOR_CORE_TYPE CORE_TYPE CORE_IDX)
|
||||
list(FIND ALL_CORE_TYPES "${CORE_TYPE}" CORE_IDX)
|
||||
if(${CORE_IDX} EQUAL -1)
|
||||
message(FATAL_ERROR "No ${CORE_TYPE} allowed, exiting")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
macro(INIT_LIST LIST_TYPE ELEMENT_TYPE)
|
||||
foreach(IT RANGE 0 ${MAX_GEN} 1)
|
||||
foreach(IT RANGE 0 ${MAX_CORE} 1)
|
||||
list(APPEND ALL_${ELEMENT_TYPE}_${LIST_TYPE} " ")
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
macro(GET_LIST_FOR_GEN LIST_TYPE ELEMENT_TYPE GEN_IDX OUT_LIST)
|
||||
list(GET ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${GEN_IDX} GEN_X_${LIST_TYPE})
|
||||
string(REPLACE "," ";" ${OUT_LIST} ${GEN_X_${LIST_TYPE}})
|
||||
macro(GET_LIST_FOR_CORE_TYPE LIST_TYPE ELEMENT_TYPE CORE_IDX OUT_LIST)
|
||||
list(GET ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${CORE_IDX} CORE_X_${LIST_TYPE})
|
||||
string(REPLACE "," ";" ${OUT_LIST} ${CORE_X_${LIST_TYPE}})
|
||||
endmacro()
|
||||
|
||||
macro(ADD_ITEM_FOR_GEN LIST_TYPE ELEMENT_TYPE GEN_TYPE ITEM)
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
list(GET ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${GEN_IDX} GEN_X_LIST)
|
||||
string(REPLACE " " "" GEN_X_LIST ${GEN_X_LIST})
|
||||
if("${GEN_X_LIST}" STREQUAL "")
|
||||
set(GEN_X_LIST "${ITEM}")
|
||||
macro(ADD_ITEM_FOR_CORE_TYPE LIST_TYPE ELEMENT_TYPE CORE_TYPE ITEM)
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
list(GET ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${CORE_IDX} CORE_X_LIST)
|
||||
string(REPLACE " " "" CORE_X_LIST ${CORE_X_LIST})
|
||||
if("${CORE_X_LIST}" STREQUAL "")
|
||||
set(CORE_X_LIST "${ITEM}")
|
||||
else()
|
||||
set(GEN_X_LIST "${GEN_X_LIST},${ITEM}")
|
||||
set(CORE_X_LIST "${CORE_X_LIST},${ITEM}")
|
||||
endif()
|
||||
list(REMOVE_AT ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${GEN_IDX})
|
||||
list(INSERT ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${GEN_IDX} ${GEN_X_LIST})
|
||||
list(REMOVE_AT ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${CORE_IDX})
|
||||
list(INSERT ALL_${ELEMENT_TYPE}_${LIST_TYPE} ${CORE_IDX} ${CORE_X_LIST})
|
||||
endmacro()
|
||||
|
||||
macro(GEN_CONTAINS_PLATFORMS TYPE GEN_TYPE OUT_FLAG)
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
GET_LIST_FOR_GEN("PLATFORMS" ${TYPE} ${GEN_IDX} GEN_X_PLATFORMS)
|
||||
string(REPLACE " " "" GEN_X_PLATFORMS ${GEN_X_PLATFORMS})
|
||||
if("${GEN_X_PLATFORMS}" STREQUAL "")
|
||||
macro(CORE_CONTAINS_PLATFORMS TYPE CORE_TYPE OUT_FLAG)
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
GET_LIST_FOR_CORE_TYPE("PLATFORMS" ${TYPE} ${CORE_IDX} CORE_X_PLATFORMS)
|
||||
string(REPLACE " " "" CORE_X_PLATFORMS ${CORE_X_PLATFORMS})
|
||||
if("${CORE_X_PLATFORMS}" STREQUAL "")
|
||||
set(${OUT_FLAG} FALSE)
|
||||
else()
|
||||
set(${OUT_FLAG} TRUE)
|
||||
@@ -84,40 +84,40 @@ endmacro()
|
||||
|
||||
macro(GET_AVAILABLE_PLATFORMS TYPE FLAG_NAME OUT_STR)
|
||||
set(${TYPE}_PLATFORM_LIST)
|
||||
set(${TYPE}_GEN_FLAGS_DEFINITONS)
|
||||
set(${TYPE}_CORE_FLAGS_DEFINITONS)
|
||||
if(NOT DEFAULT_${TYPE}_PLATFORM AND DEFINED PREFERRED_PLATFORM AND ${FLAG_NAME}_${PREFERRED_PLATFORM})
|
||||
set(DEFAULT_${TYPE}_PLATFORM ${PREFERRED_PLATFORM})
|
||||
endif()
|
||||
foreach(GEN_TYPE ${ALL_GEN_TYPES_REVERSED})
|
||||
GEN_CONTAINS_PLATFORMS(${TYPE} ${GEN_TYPE} GENX_HAS_PLATFORMS)
|
||||
if(${GENX_HAS_PLATFORMS})
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
list(APPEND ${TYPE}_GEN_FLAGS_DEFINITONS ${FLAG_NAME}_${GEN_TYPE})
|
||||
GET_LIST_FOR_GEN("PLATFORMS" ${TYPE} ${GEN_IDX} ${TYPE}_GENX_PLATFORMS)
|
||||
list(APPEND ${TYPE}_PLATFORM_LIST ${${TYPE}_GENX_PLATFORMS})
|
||||
foreach(CORE_TYPE ${ALL_CORE_TYPES_REVERSED})
|
||||
CORE_CONTAINS_PLATFORMS(${TYPE} ${CORE_TYPE} COREX_HAS_PLATFORMS)
|
||||
if(${COREX_HAS_PLATFORMS})
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
list(APPEND ${TYPE}_CORE_FLAGS_DEFINITONS ${FLAG_NAME}_${CORE_TYPE})
|
||||
GET_LIST_FOR_CORE_TYPE("PLATFORMS" ${TYPE} ${CORE_IDX} ${TYPE}_COREX_PLATFORMS)
|
||||
list(APPEND ${TYPE}_PLATFORM_LIST ${${TYPE}_COREX_PLATFORMS})
|
||||
if(NOT DEFAULT_${TYPE}_PLATFORM)
|
||||
list(GET ${TYPE}_PLATFORM_LIST 0 DEFAULT_${TYPE}_PLATFORM ${PLATFORM_IT})
|
||||
endif()
|
||||
if(NOT DEFAULT_${TYPE}_${GEN_TYPE}_PLATFORM)
|
||||
list(GET ${TYPE}_GENX_PLATFORMS 0 DEFAULT_${TYPE}_${GEN_TYPE}_PLATFORM)
|
||||
if(NOT DEFAULT_${TYPE}_${CORE_TYPE}_PLATFORM)
|
||||
list(GET ${TYPE}_COREX_PLATFORMS 0 DEFAULT_${TYPE}_${CORE_TYPE}_PLATFORM)
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
foreach(PLATFORM_IT ${${TYPE}_PLATFORM_LIST})
|
||||
set(${OUT_STR} "${${OUT_STR}} ${PLATFORM_IT}")
|
||||
list(APPEND ${TYPE}_GEN_FLAGS_DEFINITONS ${FLAG_NAME}_${PLATFORM_IT})
|
||||
list(APPEND ${TYPE}_CORE_FLAGS_DEFINITONS ${FLAG_NAME}_${PLATFORM_IT})
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
macro(GET_PLATFORMS_FOR_GEN TYPE GEN_TYPE OUT_LIST)
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
GET_LIST_FOR_GEN("PLATFORMS" ${TYPE} ${GEN_IDX} ${OUT_LIST})
|
||||
macro(GET_PLATFORMS_FOR_CORE_TYPE TYPE CORE_TYPE OUT_LIST)
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
GET_LIST_FOR_CORE_TYPE("PLATFORMS" ${TYPE} ${CORE_IDX} ${OUT_LIST})
|
||||
endmacro()
|
||||
|
||||
macro(PLATFORM_HAS_2_0 GEN_TYPE PLATFORM_NAME OUT_FLAG)
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
GET_LIST_FOR_GEN("PLATFORMS" "SUPPORTED_2_0" ${GEN_IDX} GEN_X_PLATFORMS)
|
||||
list(FIND GEN_X_PLATFORMS ${PLATFORM_NAME} PLATFORM_EXISTS)
|
||||
macro(PLATFORM_HAS_2_0 CORE_TYPE PLATFORM_NAME OUT_FLAG)
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
GET_LIST_FOR_CORE_TYPE("PLATFORMS" "SUPPORTED_2_0" ${CORE_IDX} CORE_X_PLATFORMS)
|
||||
list(FIND CORE_X_PLATFORMS ${PLATFORM_NAME} PLATFORM_EXISTS)
|
||||
if("${PLATFORM_EXISTS}" LESS 0)
|
||||
set(${OUT_FLAG} FALSE)
|
||||
else()
|
||||
@@ -125,10 +125,10 @@ macro(PLATFORM_HAS_2_0 GEN_TYPE PLATFORM_NAME OUT_FLAG)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
macro(PLATFORM_HAS_VME GEN_TYPE PLATFORM_NAME OUT_FLAG)
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
GET_LIST_FOR_GEN("PLATFORMS" "SUPPORTED_VME" ${GEN_IDX} GEN_X_PLATFORMS)
|
||||
list(FIND GEN_X_PLATFORMS ${PLATFORM_NAME} PLATFORM_EXISTS)
|
||||
macro(PLATFORM_HAS_VME CORE_TYPE PLATFORM_NAME OUT_FLAG)
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
GET_LIST_FOR_CORE_TYPE("PLATFORMS" "SUPPORTED_VME" ${CORE_IDX} CORE_X_PLATFORMS)
|
||||
list(FIND CORE_X_PLATFORMS ${PLATFORM_NAME} PLATFORM_EXISTS)
|
||||
if("${PLATFORM_EXISTS}" LESS 0)
|
||||
set(${OUT_FLAG} FALSE)
|
||||
else()
|
||||
@@ -136,62 +136,63 @@ macro(PLATFORM_HAS_VME GEN_TYPE PLATFORM_NAME OUT_FLAG)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
# default flag for GenX devices support
|
||||
set(SUPPORT_GEN_DEFAULT TRUE CACHE BOOL "default value for SUPPORT_GENx")
|
||||
# default flag for CoreX devices support
|
||||
set(SUPPORT_GEN_DEFAULT TRUE CACHE BOOL "default value for SUPPORT_COREx")
|
||||
# default flag for platform support
|
||||
set(SUPPORT_PLATFORM_DEFAULT TRUE CACHE BOOL "default value for support platform")
|
||||
|
||||
# Define the hardware configurations we support and test
|
||||
macro(SET_FLAGS_FOR GEN_TYPE)
|
||||
macro(SET_FLAGS_FOR CORE_TYPE)
|
||||
foreach(SKU_NAME ${ARGN})
|
||||
if(SUPPORT_${SKU_NAME})
|
||||
if(NOT SUPPORT_${GEN_TYPE})
|
||||
message(STATUS "Auto-Enabling ${GEN_TYPE} support for ${SKU_NAME}")
|
||||
set(SUPPORT_${GEN_TYPE} TRUE CACHE BOOL "Support ${GEN_TYPE} devices")
|
||||
if(NOT SUPPORT_${CORE_TYPE})
|
||||
message(STATUS "Auto-Enabling ${CORE_TYPE} support for ${SKU_NAME}")
|
||||
set(SUPPORT_${CORE_TYPE} TRUE CACHE BOOL "Support ${CORE_TYPE} devices")
|
||||
endif()
|
||||
if(NOT DEFINED TESTS_${GEN_TYPE})
|
||||
message(STATUS "Auto-Enabling ${GEN_TYPE} tests for ${SKU_NAME}")
|
||||
set(TESTS_${GEN_TYPE} TRUE CACHE BOOL "Build ULTs for ${GEN_TYPE} devices")
|
||||
if(NOT DEFINED TESTS_${CORE_TYPE})
|
||||
message(STATUS "Auto-Enabling ${CORE_TYPE} tests for ${SKU_NAME}")
|
||||
set(TESTS_${CORE_TYPE} TRUE CACHE BOOL "Build ULTs for ${CORE_TYPE} devices")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(SUPPORT_${GEN_TYPE} ${SUPPORT_GEN_DEFAULT} CACHE BOOL "Support ${GEN_TYPE} devices")
|
||||
set(TESTS_${GEN_TYPE} ${SUPPORT_${GEN_TYPE}} CACHE BOOL "Build ULTs for ${GEN_TYPE} devices")
|
||||
set(SUPPORT_DEVICE_ENQUEUE_${GEN_TYPE} TRUE CACHE BOOL "Support ${GEN_TYPE} for device side enqueue")
|
||||
set(SUPPORT_${CORE_TYPE} ${SUPPORT_GEN_DEFAULT} CACHE BOOL "Support ${CORE_TYPE} devices")
|
||||
set(TESTS_${CORE_TYPE} ${SUPPORT_${CORE_TYPE}} CACHE BOOL "Build ULTs for ${CORE_TYPE} devices")
|
||||
set(SUPPORT_DEVICE_ENQUEUE_${CORE_TYPE} TRUE CACHE BOOL "Support ${CORE_TYPE} for device side enqueue")
|
||||
|
||||
if(NOT SUPPORT_${GEN_TYPE} OR NEO_SKIP_UNIT_TESTS)
|
||||
set(TESTS_${GEN_TYPE} FALSE)
|
||||
if(NOT SUPPORT_${CORE_TYPE} OR NEO_SKIP_UNIT_TESTS)
|
||||
set(TESTS_${CORE_TYPE} FALSE)
|
||||
endif()
|
||||
|
||||
if(SUPPORT_${GEN_TYPE})
|
||||
list(APPEND ALL_SUPPORTED_CORE_FAMILIES ${GEN_TYPE})
|
||||
if(SUPPORT_${CORE_TYPE})
|
||||
list(APPEND ALL_SUPPORTED_CORE_FAMILIES ${CORE_TYPE})
|
||||
list(REMOVE_DUPLICATES ALL_SUPPORTED_CORE_FAMILIES)
|
||||
|
||||
foreach(${GEN_TYPE}_PLATFORM ${ARGN})
|
||||
set(SUPPORT_${${GEN_TYPE}_PLATFORM} ${SUPPORT_PLATFORM_DEFAULT} CACHE BOOL "Support ${${GEN_TYPE}_PLATFORM}")
|
||||
if(TESTS_${GEN_TYPE})
|
||||
set(TESTS_${${GEN_TYPE}_PLATFORM} ${SUPPORT_${${GEN_TYPE}_PLATFORM}} CACHE BOOL "Build ULTs for ${${GEN_TYPE}_PLATFORM}")
|
||||
foreach(${CORE_TYPE}_PLATFORM ${ARGN})
|
||||
set(SUPPORT_${${CORE_TYPE}_PLATFORM} ${SUPPORT_PLATFORM_DEFAULT} CACHE BOOL "Support ${${CORE_TYPE}_PLATFORM}")
|
||||
if(TESTS_${CORE_TYPE})
|
||||
set(TESTS_${${CORE_TYPE}_PLATFORM} ${SUPPORT_${${CORE_TYPE}_PLATFORM}} CACHE BOOL "Build ULTs for ${${CORE_TYPE}_PLATFORM}")
|
||||
endif()
|
||||
if(NOT SUPPORT_${${GEN_TYPE}_PLATFORM} OR NOT TESTS_${GEN_TYPE} OR NEO_SKIP_UNIT_TESTS)
|
||||
set(TESTS_${${GEN_TYPE}_PLATFORM} FALSE)
|
||||
if(NOT SUPPORT_${${CORE_TYPE}_PLATFORM} OR NOT TESTS_${CORE_TYPE} OR NEO_SKIP_UNIT_TESTS)
|
||||
set(TESTS_${${CORE_TYPE}_PLATFORM} FALSE)
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if(TESTS_${GEN_TYPE})
|
||||
list(APPEND ALL_TESTED_CORE_FAMILIES ${GEN_TYPE})
|
||||
if(TESTS_${CORE_TYPE})
|
||||
list(APPEND ALL_TESTED_CORE_FAMILIES ${CORE_TYPE})
|
||||
list(REMOVE_DUPLICATES ALL_TESTED_CORE_FAMILIES)
|
||||
endif()
|
||||
endmacro()
|
||||
macro(ADD_PLATFORM_FOR_GEN LIST_TYPE GEN_TYPE PLATFORM_NAME PLATFORM_TYPE)
|
||||
|
||||
macro(ADD_PLATFORM_FOR_CORE_TYPE LIST_TYPE CORE_TYPE PLATFORM_NAME PLATFORM_TYPE)
|
||||
list(APPEND PLATFORM_TYPES ${PLATFORM_TYPE})
|
||||
list(REMOVE_DUPLICATES PLATFORM_TYPES)
|
||||
ADD_ITEM_FOR_GEN("PLATFORMS" ${LIST_TYPE} ${GEN_TYPE} ${PLATFORM_NAME})
|
||||
set(${GEN_TYPE}_HAS_${PLATFORM_TYPE} TRUE)
|
||||
ADD_ITEM_FOR_CORE_TYPE("PLATFORMS" ${LIST_TYPE} ${CORE_TYPE} ${PLATFORM_NAME})
|
||||
set(${CORE_TYPE}_HAS_${PLATFORM_TYPE} TRUE)
|
||||
set(${PLATFORM_NAME}_IS_${PLATFORM_TYPE} TRUE)
|
||||
if(NOT DEFAULT_${LIST_TYPE}_${GEN_TYPE}_${PLATFORM_TYPE}_PLATFORM)
|
||||
string(TOLOWER ${PLATFORM_NAME} DEFAULT_${LIST_TYPE}_${GEN_TYPE}_${PLATFORM_TYPE}_PLATFORM)
|
||||
if(NOT DEFAULT_${LIST_TYPE}_${CORE_TYPE}_${PLATFORM_TYPE}_PLATFORM)
|
||||
string(TOLOWER ${PLATFORM_NAME} DEFAULT_${LIST_TYPE}_${CORE_TYPE}_${PLATFORM_TYPE}_PLATFORM)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
@@ -240,17 +241,17 @@ endif()
|
||||
|
||||
if(NOT DEFAULT_TESTED_FAMILY_NAME)
|
||||
if(DEFINED PREFERRED_FAMILY_NAME)
|
||||
list(FIND ALL_TESTED_FAMILY_NAME ${PREFERRED_FAMILY_NAME} GEN_IDX)
|
||||
if(${GEN_IDX} GREATER -1)
|
||||
list(FIND ALL_TESTED_FAMILY_NAME ${PREFERRED_FAMILY_NAME} CORE_IDX)
|
||||
if(${CORE_IDX} GREATER -1)
|
||||
set(DEFAULT_TESTED_FAMILY_NAME ${PREFERRED_FAMILY_NAME})
|
||||
endif()
|
||||
endif()
|
||||
if(NOT DEFINED DEFAULT_TESTED_FAMILY_NAME)
|
||||
foreach(GEN_TYPE ${ALL_GEN_TYPES_REVERSED})
|
||||
FIND_IDX_FOR_GEN_TYPE(${GEN_TYPE} GEN_IDX)
|
||||
list(GET ALL_TESTED_FAMILY_NAME ${GEN_IDX} GEN_FAMILY_NAME)
|
||||
if(NOT GEN_FAMILY_NAME STREQUAL " ")
|
||||
set(DEFAULT_TESTED_FAMILY_NAME ${GEN_FAMILY_NAME})
|
||||
foreach(CORE_TYPE ${ALL_CORE_TYPES_REVERSED})
|
||||
FIND_IDX_FOR_CORE_TYPE(${CORE_TYPE} CORE_IDX)
|
||||
list(GET ALL_TESTED_FAMILY_NAME ${CORE_IDX} CORE_FAMILY_NAME)
|
||||
if(NOT CORE_FAMILY_NAME STREQUAL " ")
|
||||
set(DEFAULT_TESTED_FAMILY_NAME ${CORE_FAMILY_NAME})
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
Reference in New Issue
Block a user