From 6be88c5152a74c41db03e9fa7c19d113944fce32 Mon Sep 17 00:00:00 2001
From: foreman
Date: Wed, 30 Aug 2017 12:44:23 -0400
Subject: [PATCH] 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: 81a57cc37843edfb72c3dd933b23135f3c02714e]
---
projects/clr/rocclr/CMakeLists.txt | 26 ++++++++++++-------
.../rocclr/runtime/device/rocm/CMakeLists.txt | 12 ++++-----
2 files changed, 23 insertions(+), 15 deletions(-)
diff --git a/projects/clr/rocclr/CMakeLists.txt b/projects/clr/rocclr/CMakeLists.txt
index 905d9da93a..678ff1ec39 100644
--- a/projects/clr/rocclr/CMakeLists.txt
+++ b/projects/clr/rocclr/CMakeLists.txt
@@ -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 $
+ DESTINATION lib)
+
+install(DIRECTORY
+ "${CMAKE_CURRENT_SOURCE_DIR}/api/opencl/khronos/headers/opencl2.0"
+ DESTINATION include
+ USE_SOURCE_PERMISSIONS
+ PATTERN cl_egl.h EXCLUDE)
\ No newline at end of file
diff --git a/projects/clr/rocclr/runtime/device/rocm/CMakeLists.txt b/projects/clr/rocclr/runtime/device/rocm/CMakeLists.txt
index 8dfbaa39c2..709f9b9c26 100644
--- a/projects/clr/rocclr/runtime/device/rocm/CMakeLists.txt
+++ b/projects/clr/rocclr/runtime/device/rocm/CMakeLists.txt
@@ -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)