d91e1d9daa
Signed-off-by: Icarus Sparry <icarus.sparry@amd.com> Change-Id: Id1b34c7c6fa551f3aacc35827cb6906cec4484e3
70 lines
2.7 KiB
Plaintext
70 lines
2.7 KiB
Plaintext
cmake_minimum_required(VERSION 3.5.1)
|
|
project(rocm-opencl-dev)
|
|
|
|
install(DIRECTORY @opencl_SOURCE_DIR@/khronos/headers/opencl2.2/CL
|
|
DESTINATION include
|
|
USE_SOURCE_PERMISSIONS
|
|
PATTERN cl_d3d10.h EXCLUDE
|
|
PATTERN cl_d3d11.h EXCLUDE
|
|
PATTERN cl_dx9_media_sharing.h EXCLUDE
|
|
PATTERN cl_egl.h EXCLUDE)
|
|
|
|
#############################
|
|
# Packaging steps
|
|
#############################
|
|
# Generic CPACK variables
|
|
set(CPACK_GENERATOR "DEB;RPM")
|
|
set(CPACK_PACKAGE_NAME "rocm-opencl-dev")
|
|
set(CPACK_PACKAGE_CONTACT "ROCm OpenCL Support <rocm-opencl.support@amd.com>")
|
|
set(CPACK_PACKAGE_VENDOR "Advanced Micro Devices, Inc.")
|
|
set(CPACK_PACKAGING_INSTALL_PREFIX @CPACK_PACKAGING_INSTALL_PREFIX@)
|
|
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenCL: Open Computing Language on ROCclr")
|
|
set(CPACK_PACKAGE_VERSION @PROJECT_VERSION@)
|
|
|
|
if(DEFINED ENV{ROCM_LIBPATCH_VERSION})
|
|
set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}.$ENV{ROCM_LIBPATCH_VERSION}")
|
|
message("Using CPACK_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION}")
|
|
endif()
|
|
|
|
# Debian CPACK variables
|
|
set(CPACK_BINARY_DEB "ON")
|
|
if(DEFINED ENV{CPACK_DEBIAN_PACKAGE_RELEASE})
|
|
set(CPACK_DEBIAN_PACKAGE_RELEASE $ENV{CPACK_DEBIAN_PACKAGE_RELEASE})
|
|
else()
|
|
set(CPACK_DEBIAN_PACKAGE_RELEASE "local")
|
|
endif()
|
|
message("Using CPACK_DEBIAN_PACKAGE_RELEASE ${CPACK_DEBIAN_PACKAGE_RELEASE}")
|
|
set(CPACK_DEBIAN_FILE_NAME "DEB-DEFAULT")
|
|
set(CPACK_DEBIAN_PACKAGE_DEPENDS "mesa-common-dev, rocm-opencl, rocm-core")
|
|
|
|
# RPM CPACK variables
|
|
set(CPACK_BINARY_RPM "ON")
|
|
set(CPACK_RPM_PACKAGE_NAME "rocm-opencl-devel")
|
|
if(DEFINED ENV{CPACK_RPM_PACKAGE_RELEASE})
|
|
set(CPACK_RPM_PACKAGE_RELEASE $ENV{CPACK_RPM_PACKAGE_RELEASE})
|
|
else()
|
|
set(CPACK_RPM_PACKAGE_RELEASE "local")
|
|
endif()
|
|
message("Using CPACK_RPM_PACKAGE_RELEASE ${CPACK_RPM_PACKAGE_RELEASE}")
|
|
|
|
## 'dist' breaks manual builds on debian systems due to empty Provides
|
|
execute_process(COMMAND rpm --eval %{?dist}
|
|
RESULT_VARIABLE PROC_RESULT
|
|
OUTPUT_VARIABLE EVAL_RESULT
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
message("RESULT_VARIABLE ${PROC_RESULT} OUTPUT_VARIABLE: ${EVAL_RESULT}")
|
|
|
|
if(PROC_RESULT EQUAL "0" AND NOT EVAL_RESULT STREQUAL "")
|
|
string(APPEND CPACK_RPM_PACKAGE_RELEASE "%{?dist}")
|
|
endif()
|
|
set(CPACK_RPM_FILE_NAME "RPM-DEFAULT")
|
|
set(CPACK_RPM_PACKAGE_AUTOREQPROV " no")
|
|
set(CPACK_RPM_PACKAGE_REQUIRES "rocm-opencl, rocm-core")
|
|
# Remove dependency on rocm-core if -DROCM_DEP_ROCMCORE=ON not given to cmake
|
|
if(NOT ROCM_DEP_ROCMCORE)
|
|
string(REGEX REPLACE ",? ?rocm-core" "" CPACK_RPM_PACKAGE_REQUIRES ${CPACK_RPM_PACKAGE_REQUIRES})
|
|
string(REGEX REPLACE ",? ?rocm-core" "" CPACK_DEBIAN_PACKAGE_DEPENDS ${CPACK_DEBIAN_PACKAGE_DEPENDS})
|
|
endif()
|
|
|
|
include(CPack)
|