P4 to Git Change 1453266 by fdaniil@rocm_spec on 2017/08/30 12:27:36
SWDEV-102733 - [OCL-LC-ROCm] Cmake build Write CMakeLists.txt to enable building with and without the DK environment
Update from git http://git.amd.com:8080/#/c/103512/
1. fixed ninja warning on multiple targets generating .inc files
2. added libamdocl64.so and libOpenCL.so.1.2 libraries installation into install/lib
3. added Khronos OpenCL headers installation into install/include
4. added clinfo application installation int install/bin
5. removed installation of dozens of LLVM libs and tools
6. fixed minor misspellings in llvm options setup
Affected files ...
... //depot/stg/opencl/drivers/opencl/CMakeLists.txt#15 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/CMakeLists.txt#11 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/CMakeLists.txt#9 edit
... //depot/stg/opencl/drivers/opencl/tools/clinfo/CMakeLists.txt#3 edit
[ROCm/clr commit: 81a57cc378]
Этот коммит содержится в:
@@ -14,14 +14,12 @@ set(CMAKE_MODULE_PATH
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
|
||||
)
|
||||
|
||||
set(LLVM_INCLUDE_TESTS CACHE BOOL OFF)
|
||||
set(LLVM_BUILD_TOOLS CACHE BOOL OFF)
|
||||
set(LLVM_INCLUDE_TESTS OFF CACHE BOOL "")
|
||||
set(LLVM_BUILD_TOOLS OFF CACHE BOOL "")
|
||||
set(LLVM_INSTALL_TOOLCHAIN_ONLY ON CACHE BOOL "")
|
||||
set(LLVM_TARGETS_TO_BUILD "AMDGPU" CACHE STRING "")
|
||||
set(LLVM_ENABLE_PROJECTS CACHE STRING "clang")
|
||||
set(LLVM_BUILD_GLOBAL_ISEL CACHE BOOL OFF)
|
||||
set(LLVM_ENABLE_ZLIB OFF CACHE BOOL "")
|
||||
set(CLANG_ENABLE_ARCMT CACHE BOOL OFF)
|
||||
set(CLANG_ENABLE_STATIC_ANALYZER CACHE BOOL OFF)
|
||||
set(CLANG_ENABLE_ARCMT OFF CACHE BOOL "")
|
||||
set(CLANG_ENABLE_STATIC_ANALYZER OFF CACHE BOOL "")
|
||||
|
||||
add_subdirectory(compiler/llvm)
|
||||
|
||||
@@ -41,8 +39,8 @@ include_directories(${CMAKE_BINARY_DIR}/compiler/llvm/lib/Target/AMDGPU)
|
||||
|
||||
add_subdirectory(compiler/driver)
|
||||
|
||||
set(BUILD_HC_LIB CACHE BOOL OFF)
|
||||
set(ROCM_DEVICELIB_INCLUDE_TESTS CACHE BOOL OFF)
|
||||
set(BUILD_HC_LIB OFF CACHE BOOL "")
|
||||
set(ROCM_DEVICELIB_INCLUDE_TESTS OFF CACHE BOOL "")
|
||||
set(AMDGCN_TARGETS_LIB_LIST "AMDGCN_LIB_TARGETS")
|
||||
set(AMDGPU_TARGET_TRIPLE "amdgcn-amd-amdhsa-opencl")
|
||||
add_subdirectory(library/amdgcn)
|
||||
@@ -60,3 +58,13 @@ add_subdirectory(api/opencl/amdocl)
|
||||
add_subdirectory(api/opencl/khronos/icd)
|
||||
|
||||
add_subdirectory(tools/clinfo)
|
||||
|
||||
|
||||
install(PROGRAMS $<TARGET_FILE:OpenCL>
|
||||
DESTINATION lib)
|
||||
|
||||
install(DIRECTORY
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/api/opencl/khronos/headers/opencl2.0"
|
||||
DESTINATION include
|
||||
USE_SOURCE_PERMISSIONS
|
||||
PATTERN cl_egl.h EXCLUDE)
|
||||
@@ -38,8 +38,8 @@ foreach(AMDGCN_LIB_TARGET ${AMDGCN_LIB_TARGETS})
|
||||
)
|
||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/${target}.inc)
|
||||
|
||||
add_custom_target(${header} ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${header})
|
||||
add_dependencies(oclrocm ${header})
|
||||
add_custom_target(${header}_target ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${header})
|
||||
add_dependencies(oclrocm ${header}_target)
|
||||
|
||||
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/libraries.amdgcn.inc "#include \"${header}\"\n")
|
||||
endforeach()
|
||||
@@ -78,8 +78,8 @@ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/opencl1.2-c.amdgcn.inc
|
||||
COMMENT "Generating opencl1.2-c.amdgcn.inc"
|
||||
)
|
||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/opencl1.2-c.amdgcn.inc ${CMAKE_CURRENT_BINARY_DIR}/opencl1.2-c.amdgcn.pch)
|
||||
add_custom_target(opencl1.2-c.amdgcn.inc ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/opencl1.2-c.amdgcn.inc)
|
||||
add_dependencies(oclrocm opencl1.2-c.amdgcn.inc)
|
||||
add_custom_target(opencl1.2-c.amdgcn.inc_target ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/opencl1.2-c.amdgcn.inc)
|
||||
add_dependencies(oclrocm opencl1.2-c.amdgcn.inc_target)
|
||||
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.pch
|
||||
COMMAND clang -cc1 -x cl-header -triple amdgcn-amd-amdhsa-opencl -Werror -O3 -Dcl_khr_fp64 -Dcl_khr_fp16 -DNDEBUG -cl-std=CL2.0 -emit-pch -o ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.pch < ${CMAKE_SOURCE_DIR}/compiler/llvm/tools/clang/lib/Headers/opencl-c.h
|
||||
@@ -92,5 +92,5 @@ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.inc
|
||||
COMMENT "Generating opencl2.0-c.amdgcn.inc"
|
||||
)
|
||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.inc ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.pch)
|
||||
add_custom_target(opencl2.0-c.amdgcn.inc ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.inc)
|
||||
add_dependencies(oclrocm opencl2.0-c.amdgcn.inc)
|
||||
add_custom_target(opencl2.0-c.amdgcn.inc_target ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/opencl2.0-c.amdgcn.inc)
|
||||
add_dependencies(oclrocm opencl2.0-c.amdgcn.inc_target)
|
||||
|
||||
Ссылка в новой задаче
Block a user