@@ -32,6 +32,7 @@ if(ENABLE_ONEDNN_FOR_GPU)
32
32
message (WARNING "Intel GPU plugin unsupported architecture: ${CMAKE_SYSTEM_PROCESSOR} " )
33
33
endif ()
34
34
35
+ # oneDNN specific compile flags
35
36
if (CMAKE_COMPILER_IS_GNUCXX OR OV_COMPILER_IS_CLANG OR (OV_COMPILER_IS_INTEL_LLVM AND UNIX ))
36
37
ov_add_compiler_flags(-Wno-undef)
37
38
ov_add_compiler_flags(-Wno-missing-declarations)
@@ -43,18 +44,38 @@ if(ENABLE_ONEDNN_FOR_GPU)
43
44
endif ()
44
45
endif ()
45
46
endif ()
47
+
46
48
if (SUGGEST_OVERRIDE_SUPPORTED)
47
49
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-suggest-override" )
48
50
endif ()
49
51
52
+ # remove CMAKE_COMPILE_WARNING_AS_ERROR for onednn_gpu
53
+ if (WIN32 AND CMAKE_COMPILE_WARNING_AS_ERROR AND CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" AND CMAKE_VERSION VERSION_LESS 3.24)
54
+ ov_add_compiler_flags(/WX-)
55
+ endif ()
56
+
57
+ # pass common variables
50
58
foreach (cmake_var IN ITEMS CMAKE_SYSTEM_NAME CMAKE_SYSTEM_VERSION
51
59
CMAKE_SYSTEM_PROCESSOR CMAKE_TOOLCHAIN_FILE
52
- CMAKE_VERBOSE_MAKEFILE CMAKE_GENERATOR )
60
+ CMAKE_VERBOSE_MAKEFILE CMAKE_GENERATOR
61
+ CMAKE_CXX_COMPILER CMAKE_C_COMPILER
62
+ CMAKE_CXX_COMPILER_LAUNCHER CMAKE_C_COMPILER_LAUNCHER)
53
63
if (${cmake_var} )
54
64
list (APPEND cmake_extra_args "-D${cmake_var} =${${cmake_var} }" )
55
65
endif ()
56
66
endforeach ()
57
67
68
+ # pass compilation flags
69
+ foreach (lang IN ITEMS C CXX)
70
+ foreach (build_type IN ITEMS "" "_DEBUG" "_MINSIZEREL" "_RELEASE" "_RELWITHDEBINFO" )
71
+ set (flag_var "CMAKE_${lang} _FLAGS${build_type} " )
72
+ if (${flag_var} )
73
+ list (APPEND cmake_extra_args "-D${flag_var} =${${flag_var} }" )
74
+ endif ()
75
+ endforeach ()
76
+ endforeach ()
77
+
78
+ # pass build type
58
79
if (OV_GENERATOR_MULTI_CONFIG)
59
80
if (CMAKE_GENERATOR STREQUAL "Ninja Multi-Config" )
60
81
list (APPEND cmake_extra_args "-DCMAKE_CONFIGURATION_TYPES=${CMAKE_DEFAULT_BUILD_TYPE} " )
@@ -64,15 +85,6 @@ if(ENABLE_ONEDNN_FOR_GPU)
64
85
list (APPEND cmake_extra_args "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} " )
65
86
endif ()
66
87
67
- if (CMAKE_VERSION VERSION_GREATER_EQUAL 3.21)
68
- if (DEFINED CMAKE_CXX_LINKER_LAUNCHER)
69
- list (APPEND cmake_extra_args "-DCMAKE_CXX_LINKER_LAUNCHER=${CMAKE_CXX_LINKER_LAUNCHER} " )
70
- endif ()
71
- if (DEFINED CMAKE_C_LINKER_LAUNCHER)
72
- list (APPEND cmake_extra_args "-DCMAKE_C_LINKER_LAUNCHER=${CMAKE_C_LINKER_LAUNCHER} " )
73
- endif ()
74
- endif ()
75
-
76
88
if (CMAKE_VERSION VERSION_GREATER_EQUAL 3.15 AND DEFINED CMAKE_MSVC_RUNTIME_LIBRARY)
77
89
list (APPEND cmake_extra_args "-DCMAKE_MSVC_RUNTIME_LIBRARY=${CMAKE_MSVC_RUNTIME_LIBRARY} " )
78
90
endif ()
@@ -88,11 +100,6 @@ if(ENABLE_ONEDNN_FOR_GPU)
88
100
set (onednn_gpu_lib "${CMAKE_STATIC_LIBRARY_PREFIX}${DNNL_GPU_LIBRARY_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX} " )
89
101
set (ONEDNN_GPU_LIB_PATH ${ONEDNN_INSTALL_DIR} /lib/${onednn_gpu_lib} CACHE FILEPATH "Path to oneDNN GPU library" )
90
102
91
- # remove CMAKE_COMPILE_WARNING_AS_ERROR for onednn_gpu
92
- if (WIN32 AND CMAKE_COMPILE_WARNING_AS_ERROR AND CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" AND CMAKE_VERSION VERSION_LESS 3.24)
93
- ov_add_compiler_flags(/WX-)
94
- endif ()
95
-
96
103
ExternalProject_Add(onednn_gpu_build
97
104
# Directory Options:
98
105
PREFIX "${ONEDNN_PREFIX_DIR} "
@@ -102,12 +109,6 @@ if(ENABLE_ONEDNN_FOR_GPU)
102
109
# Configure Step Options:
103
110
CMAKE_ARGS
104
111
${cmake_extra_args}
105
- "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} "
106
- "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} "
107
- "-DCMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER} "
108
- "-DCMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER} "
109
- "-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} "
110
- "-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} "
111
112
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE=${ENABLE_LTO} "
112
113
"-DCMAKE_POLICY_DEFAULT_CMP0069=NEW"
113
114
"-DDNNL_TARGET_ARCH=${ONEDNN_TARGET_ARCH} "
0 commit comments