Fixed compilation on Debian 11 with gcc 12.2 (#16096)

This commit is contained in:
Ilya Lavrenov authored and GitHub committed 2023-03-04 20:45:04 +04:00
1 parent 32b177e9eb
commit 9c4c559909
5 files changed
+45 -26

No files matched your search

+24 -21
View File
@@ -44,26 +44,6 @@ function(ie_add_onednn)
set(OpenMP_cmake_included ON) ## to skip "omp simd" inside a code. Lead to some crashes inside NDK LLVM..
endif()
if(SUGGEST_OVERRIDE_SUPPORTED)
# xbyak compilation fails
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-suggest-override")
endif()
if(CMAKE_OSX_ARCHITECTURES STREQUAL "x86_64")
set(DNNL_TARGET_ARCH "X64")
elseif(CMAKE_OSX_ARCHITECTURES STREQUAL "arm64")
set(DNNL_TARGET_ARCH "AARCH64")
endif()
if(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG)
ie_add_compiler_flags(-Wno-undef)
ie_add_compiler_flags(-Wno-missing-declarations)
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 11 AND CMAKE_COMPILER_IS_GNUCXX)
ie_add_compiler_flags(-Wno-array-bounds)
ie_add_compiler_flags(-Wno-stringop-overflow)
endif()
elseif(UNIX AND CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -diag-disable=10121")
endif()
# WA for old TBBConfig.cmake like tbb2019_20180718oss
# they don't check that imported target is already created
if(TBB_FOUND)
@@ -75,7 +55,25 @@ function(ie_add_onednn)
link_libraries(TBB::tbb)
endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
if(CMAKE_OSX_ARCHITECTURES STREQUAL "x86_64")
set(DNNL_TARGET_ARCH "X64")
elseif(CMAKE_OSX_ARCHITECTURES STREQUAL "arm64")
set(DNNL_TARGET_ARCH "AARCH64")
endif()
if(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG)
ie_add_compiler_flags(-Wno-undef)
ie_add_compiler_flags(-Wno-missing-declarations)
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 11 AND CMAKE_COMPILER_IS_GNUCXX)
ie_add_compiler_flags(-Wno-array-bounds)
ie_add_compiler_flags(-Wno-stringop-overflow)
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 12)
ie_add_compiler_flags(-Wno-restrict)
endif()
endif()
elseif(UNIX AND CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -diag-disable=10121")
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
# C4849 OpenMP 'reduction' clause ignored in 'simd' directive
ie_add_compiler_flags(/wd4849)
# C4661 no suitable definition provided for explicit template instantiation request
@@ -86,6 +84,11 @@ function(ie_add_onednn)
# C4334 '<<': result of 32-bit shift implicitly converted to 64 bits
ie_add_compiler_flags(/wd4334)
endif()
if(SUGGEST_OVERRIDE_SUPPORTED)
# xbyak compilation fails
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-suggest-override")
endif()
add_subdirectory(onednn EXCLUDE_FROM_ALL)
ov_install_static_lib(dnnl cpu)
endfunction()
@@ -213,7 +213,9 @@ clEnqueueMemFillINTEL_fn)(
#endif // cl_khr_device_uuid
#ifndef OV_GPU_USE_OPENCL_HPP
// some versions of CL/opencl.hpp don't define C++ wrapper for CL_DEVICE_UUID_KHR
// we are checking it in cmake and defined macro OV_GPU_OPENCL_HPP_HAS_UUID if it is defined
#ifndef OV_GPU_OPENCL_HPP_HAS_UUID
// for C++ wrappers
using uuid_array = std::array<cl_uchar, CL_UUID_SIZE_KHR>;
@@ -224,7 +226,7 @@ CL_HPP_DECLARE_PARAM_TRAITS_(cl_device_info, CL_DEVICE_UUID_KHR, uuid_array)
} // namespace detail
} // namespace cl
#endif // OV_GPU_USE_OPENCL_HPP
#endif // OV_GPU_OPENCL_HPP_HAS_UUID
/***************************************************************
* cl_intel_device_attribute_query
+8 -2
View File
@@ -22,10 +22,16 @@ if(ENABLE_ONEDNN_FOR_GPU)
set(ONEDNN_PREFIX_DIR "${CMAKE_CURRENT_BINARY_DIR}/onednn_gpu_root")
set(ONEDNN_ENABLED_PRIMITIVES "CONCAT;CONVOLUTION;DECONVOLUTION;INNER_PRODUCT;MATMUL;REORDER;POOLING;REDUCTION")
set(ONEDNN_ENABLED_ISA "XEHP;XEHPG;XEHPC")
if(CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG)
ie_add_compiler_flags(-Wno-undef -Wno-missing-declarations)
ie_add_compiler_flags(-Wno-undef)
ie_add_compiler_flags(-Wno-missing-declarations)
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 11 AND CMAKE_COMPILER_IS_GNUCXX)
ie_add_compiler_flags(-Wno-error=array-bounds -Wno-error=stringop-overflow= -Wno-error=unused-result)
ie_add_compiler_flags(-Wno-array-bounds)
ie_add_compiler_flags(-Wno-stringop-overflow)
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 12)
ie_add_compiler_flags(-Wno-restrict)
endif()
endif()
endif()
if(SUGGEST_OVERRIDE_SUPPORTED)
+7
View File
@@ -69,6 +69,13 @@ if(ENABLE_INTEL_GPU)
if(OpenCL_HPP)
set_target_properties(OpenCL::OpenCL PROPERTIES
INTERFACE_COMPILE_DEFINITIONS OV_GPU_USE_OPENCL_HPP)
# check whether CL/opencl.hpp contains C++ wrapper for property CL_DEVICE_UUID_KHR
file(STRINGS "${OpenCL_HPP}" CL_DEVICE_UUID_KHR_CPP REGEX ".*CL_DEVICE_UUID_KHR.*")
if(CL_DEVICE_UUID_KHR_CPP)
set_target_properties(OpenCL::OpenCL PROPERTIES
INTERFACE_COMPILE_DEFINITIONS OV_GPU_OPENCL_HPP_HAS_UUID)
endif()
endif()
# set variables for onednn_gpu
+2 -1
View File
@@ -47,7 +47,8 @@ endif()
add_subdirectory(icd_loader EXCLUDE_FROM_ALL)
# use CL/opencl.hpp
target_compile_definitions(OpenCL INTERFACE OV_GPU_USE_OPENCL_HPP)
target_compile_definitions(OpenCL INTERFACE OV_GPU_USE_OPENCL_HPP
OV_GPU_OPENCL_HPP_HAS_UUID)
target_include_directories(OpenCL INTERFACE
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/cl_headers>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/clhpp_headers/include>)