Skip to content

Commit fee87bb

Browse files
committed
Add Ubuntu specific .deb packages to CPack
Signed-off-by: Russell McGuire <russell.w.mcguire@intel.com>
1 parent 9961fbb commit fee87bb

5 files changed

Lines changed: 85 additions & 1 deletion

File tree

CMakeLists.txt

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,12 @@ include_directories("${CMAKE_CURRENT_SOURCE_DIR}")
222222

223223
set(TARGET_LOADER_NAME ze_loader)
224224

225+
# Canonical Ubuntu/Debian package names (libze1 / libze-dev)
226+
# produced alongside the existing level-zero / level-zero-devel packages.
227+
if(NOT BUILD_INSTALLER)
228+
set(CANONICAL_LIB_COMPONENT "libze1")
229+
set(CANONICAL_SDK_COMPONENT "libze-dev")
230+
endif()
225231

226232
add_subdirectory(source)
227233
add_subdirectory(samples)
@@ -265,6 +271,21 @@ install(FILES ${LEVEL_ZERO_LOADER_API_HEADERS}
265271
COMPONENT ${SDK_COMPONENT_STRING}
266272
)
267273

274+
if(CANONICAL_SDK_COMPONENT)
275+
install(FILES ${LEVEL_ZERO_API_HEADERS}
276+
DESTINATION ./include/level_zero
277+
COMPONENT ${CANONICAL_SDK_COMPONENT}
278+
)
279+
install(FILES ${LEVEL_ZERO_LAYERS_API_HEADERS}
280+
DESTINATION ./include/level_zero/layers
281+
COMPONENT ${CANONICAL_SDK_COMPONENT}
282+
)
283+
install(FILES ${LEVEL_ZERO_LOADER_API_HEADERS}
284+
DESTINATION ./include/level_zero/loader
285+
COMPONENT ${CANONICAL_SDK_COMPONENT}
286+
)
287+
endif()
288+
268289
if (MSVC)
269290
set (PYTHON_EXECUTABLE "python")
270291
else()
@@ -357,7 +378,7 @@ set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "oneAPI Level Zero")
357378
set(CPACK_PACKAGE_VENDOR "Intel Corporation")
358379

359380
set(CPACK_PACKAGE_INSTALL_DIRECTORY ${CMAKE_INSTALL_PREFIX})
360-
set(CPACK_PACKAGE_CONTACT "Intel Corporation")
381+
set(CPACK_PACKAGE_CONTACT "Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>")
361382

362383
set(CPACK_PACKAGE_VERSION_MAJOR "${PROJECT_VERSION_MAJOR}")
363384
set(CPACK_PACKAGE_VERSION_MINOR "${PROJECT_VERSION_MINOR}")
@@ -409,6 +430,28 @@ if(CPACK_GENERATOR MATCHES "DEB")
409430
set(CPACK_DEBIAN_LEVEL-ZERO_FILE_NAME "${PROJECT_NAME}_${PROJECT_VERSION}+${os_name}${os_version}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}.deb")
410431
set(CPACK_DEBIAN_LEVEL-ZERO-DEVEL_FILE_NAME "${PROJECT_NAME}-devel_${PROJECT_VERSION}+${os_name}${os_version}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}.deb")
411432
set(CPACK_DEBIAN_LEVEL-ZERO-DEVEL_PACKAGE_DEPENDS "level-zero(=${PROJECT_VERSION})")
433+
# Mutual exclusion with the canonical libze1 / libze-dev packages
434+
set(CPACK_DEBIAN_LEVEL-ZERO_PACKAGE_CONFLICTS "libze1")
435+
set(CPACK_DEBIAN_LEVEL-ZERO_PACKAGE_PROVIDES "libze1")
436+
set(CPACK_DEBIAN_LEVEL-ZERO_PACKAGE_REPLACES "libze1")
437+
set(CPACK_DEBIAN_LEVEL-ZERO-DEVEL_PACKAGE_CONFLICTS "libze-dev")
438+
set(CPACK_DEBIAN_LEVEL-ZERO-DEVEL_PACKAGE_PROVIDES "libze-dev")
439+
set(CPACK_DEBIAN_LEVEL-ZERO-DEVEL_PACKAGE_REPLACES "libze-dev")
440+
441+
# Canonical Ubuntu naming: libze1 (runtime) and libze-dev (development)
442+
set(CPACK_DEBIAN_LIBZE1_PACKAGE_NAME "libze1")
443+
set(CPACK_DEBIAN_LIBZE-DEV_PACKAGE_NAME "libze-dev")
444+
set(CPACK_DEBIAN_LIBZE1_FILE_NAME "libze1_${PROJECT_VERSION}+${os_name}${os_version}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}.deb")
445+
set(CPACK_DEBIAN_LIBZE-DEV_FILE_NAME "libze-dev_${PROJECT_VERSION}+${os_name}${os_version}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}.deb")
446+
set(CPACK_DEBIAN_LIBZE-DEV_PACKAGE_DEPENDS "libze1 (= ${PROJECT_VERSION})")
447+
# Mutual exclusion with the level-zero / level-zero-devel packages
448+
set(CPACK_DEBIAN_LIBZE1_PACKAGE_CONFLICTS "level-zero")
449+
set(CPACK_DEBIAN_LIBZE1_PACKAGE_PROVIDES "level-zero")
450+
set(CPACK_DEBIAN_LIBZE1_PACKAGE_REPLACES "level-zero")
451+
set(CPACK_DEBIAN_LIBZE-DEV_PACKAGE_CONFLICTS "level-zero-devel")
452+
set(CPACK_DEBIAN_LIBZE-DEV_PACKAGE_PROVIDES "level-zero-devel")
453+
set(CPACK_DEBIAN_LIBZE-DEV_PACKAGE_REPLACES "level-zero-devel")
454+
412455
set(CPACK_DEB_COMPONENT_INSTALL ON)
413456
set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
414457
endif()

source/CMakeLists.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,15 @@ install(TARGETS ze_loader
7474
NAMELINK_COMPONENT ${SDK_COMPONENT_STRING}
7575
)
7676

77+
if(CANONICAL_LIB_COMPONENT)
78+
install(TARGETS ze_loader
79+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_SDK_COMPONENT}
80+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
81+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
82+
NAMELINK_COMPONENT ${CANONICAL_SDK_COMPONENT}
83+
)
84+
endif()
85+
7786
if(NOT BUILD_INSTALLER)
7887
file(RELATIVE_PATH pkgconfig_prefix "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig" "${CMAKE_INSTALL_PREFIX}")
7988
file(RELATIVE_PATH pkgconfig_include_dir "${CMAKE_INSTALL_PREFIX}" "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
@@ -85,4 +94,10 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/level-zero.pc.in ${CMAKE_CURRENT_BINA
8594
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libze_loader.pc"
8695
"${CMAKE_CURRENT_BINARY_DIR}/level-zero.pc"
8796
DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig" COMPONENT ${SDK_COMPONENT_STRING})
97+
98+
if(CANONICAL_SDK_COMPONENT)
99+
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libze_loader.pc"
100+
"${CMAKE_CURRENT_BINARY_DIR}/level-zero.pc"
101+
DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig" COMPONENT ${CANONICAL_SDK_COMPONENT})
102+
endif()
88103
endif()

source/drivers/null/CMakeLists.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,14 @@ if(INSTALL_NULL_DRIVER)
2727
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT level-zero
2828
NAMELINK_COMPONENT level-zero-devel
2929
)
30+
if(CANONICAL_LIB_COMPONENT)
31+
install(TARGETS ze_null
32+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_SDK_COMPONENT}
33+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
34+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
35+
NAMELINK_COMPONENT ${CANONICAL_SDK_COMPONENT}
36+
)
37+
endif()
3038
endif()
3139

3240
if (BUILD_L0_LOADER_TESTS)

source/layers/tracing/CMakeLists.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,12 @@ install(TARGETS ze_tracing_layer
6969
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${LIB_COMPONENT_STRING}
7070
NAMELINK_COMPONENT ${SDK_COMPONENT_STRING}
7171
)
72+
73+
if(CANONICAL_LIB_COMPONENT)
74+
install(TARGETS ze_tracing_layer
75+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_SDK_COMPONENT}
76+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
77+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
78+
NAMELINK_COMPONENT ${CANONICAL_SDK_COMPONENT}
79+
)
80+
endif()

source/layers/validation/CMakeLists.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,5 +59,14 @@ install(TARGETS ze_validation_layer
5959
NAMELINK_COMPONENT ${SDK_COMPONENT_STRING}
6060
)
6161

62+
if(CANONICAL_LIB_COMPONENT)
63+
install(TARGETS ze_validation_layer
64+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_SDK_COMPONENT}
65+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
66+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT ${CANONICAL_LIB_COMPONENT}
67+
NAMELINK_COMPONENT ${CANONICAL_SDK_COMPONENT}
68+
)
69+
endif()
70+
6271
add_subdirectory(handle_lifetime_tracking)
6372
add_subdirectory(checkers)

0 commit comments

Comments
 (0)