-
Notifications
You must be signed in to change notification settings - Fork 132
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
167 lines (149 loc) · 6.46 KB
/
CMakeLists.txt
File metadata and controls
167 lines (149 loc) · 6.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
set(TARGET_NAME ze_null)
add_library(${TARGET_NAME}
SHARED
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.h
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.cpp
${CMAKE_CURRENT_SOURCE_DIR}/ze_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zet_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zes_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zer_nullddi.cpp
)
set_target_properties(${TARGET_NAME} PROPERTIES
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
SOVERSION "${PROJECT_VERSION_MAJOR}"
)
target_include_directories(${TARGET_NAME}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
if(INSTALL_NULL_DRIVER)
install(TARGETS ze_null
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero-devel
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT level-zero
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero
NAMELINK_COMPONENT level-zero-devel
)
# EXCLUDE_FROM_ALL: canonical libze1/libze-dev components are for CPack .deb packaging only.
# 'make install' uses the level-zero/level-zero-devel components above to avoid duplicate
# entries in install_manifest.txt which would cause 'xargs rm' uninstall to fail.
if(CANONICAL_LIB_COMPONENT)
install(TARGETS ze_null
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_SDK_COMPONENT}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
NAMELINK_COMPONENT ${CANONICAL_SDK_COMPONENT}
EXCLUDE_FROM_ALL
)
endif()
endif()
if (BUILD_L0_LOADER_TESTS)
add_library(ze_null_test1 SHARED
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.h
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.cpp
${CMAKE_CURRENT_SOURCE_DIR}/ze_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zet_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zes_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zer_nullddi.cpp
)
add_library(ze_null_test2 SHARED
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.h
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.cpp
${CMAKE_CURRENT_SOURCE_DIR}/ze_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zet_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zes_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zer_nullddi.cpp
)
if(BUILD_L0_LOADER_TESTS)
# Add fake Intel GPU and NPU drivers for testing driver type initialization
add_library(ze_intel_gpu SHARED
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.h
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.cpp
${CMAKE_CURRENT_SOURCE_DIR}/ze_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zet_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zes_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zer_nullddi.cpp
)
add_library(ze_intel_npu SHARED
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.h
${CMAKE_CURRENT_SOURCE_DIR}/ze_null.cpp
${CMAKE_CURRENT_SOURCE_DIR}/ze_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zet_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zes_nullddi.cpp
${CMAKE_CURRENT_SOURCE_DIR}/zer_nullddi.cpp
)
set_target_properties(ze_intel_gpu PROPERTIES
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
SOVERSION "${PROJECT_VERSION_MAJOR}"
LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib_fake"
RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin_fake"
)
set_target_properties(ze_intel_npu PROPERTIES
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
SOVERSION "${PROJECT_VERSION_MAJOR}"
LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib_fake"
RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin_fake"
)
target_include_directories(ze_intel_gpu
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(ze_intel_npu
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_compile_definitions(ze_intel_gpu PUBLIC ZEL_NULL_DRIVER_ID=3 ZEL_NULL_DRIVER_TYPE_GPU=1)
target_compile_definitions(ze_intel_npu PUBLIC ZEL_NULL_DRIVER_ID=4 ZEL_NULL_DRIVER_TYPE_NPU=1)
# Install fake drivers to separate directory
if(INSTALL_NULL_DRIVER)
install(TARGETS ze_intel_gpu
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}_fake COMPONENT level-zero-devel
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}_fake COMPONENT level-zero
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}_fake COMPONENT level-zero
NAMELINK_COMPONENT level-zero-devel
)
install(TARGETS ze_intel_npu
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}_fake COMPONENT level-zero-devel
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}_fake COMPONENT level-zero
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}_fake COMPONENT level-zero
NAMELINK_COMPONENT level-zero-devel
)
endif()
endif()
set_target_properties(ze_null_test1 PROPERTIES
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
SOVERSION "${PROJECT_VERSION_MAJOR}"
)
set_target_properties(ze_null_test2 PROPERTIES
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
SOVERSION "${PROJECT_VERSION_MAJOR}"
)
target_include_directories(ze_null_test1
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(ze_null_test2
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
target_compile_definitions(ze_null_test1 PUBLIC ZEL_NULL_DRIVER_ID=1)
target_compile_definitions(ze_null_test2 PUBLIC ZEL_NULL_DRIVER_ID=2)
target_compile_definitions(ze_null PUBLIC ZEL_NULL_DRIVER_ID=1)
if(INSTALL_NULL_DRIVER)
install(TARGETS ze_null_test1
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero-devel
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT level-zero
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero
NAMELINK_COMPONENT level-zero-devel
)
install(TARGETS ze_null_test2
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero-devel
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT level-zero
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero
NAMELINK_COMPONENT level-zero-devel
)
endif()
endif()
if(UNIX)
set(GCC_COVERAGE_COMPILE_FLAGS "-fvisibility=hidden -fvisibility-inlines-hidden -fno-strict-aliasing")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_COVERAGE_COMPILE_FLAGS}")
endif()