From e12c98c3ddac09c72176316365679f5acdc4a83f Mon Sep 17 00:00:00 2001 From: Matt Arsenault Date: Wed, 22 Apr 2020 11:46:58 -0400 Subject: [PATCH] Cleanup libelf build Use target specific forms for define/include. Don't set CMAKE_CXX_FLAGS for the standard, which is already implied from the parent build. Change-Id: I4000893376d6685e9889b66ad8451fc493020272 [ROCm/clr commit: 815198bec9bb9d74245eba405d84d6dd9a483291] --- projects/clr/rocclr/CMakeLists.txt | 3 ++- .../rocclr/elf/utils/libelf/CMakeLists.txt | 21 ++++++++++++------- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/projects/clr/rocclr/CMakeLists.txt b/projects/clr/rocclr/CMakeLists.txt index 44ed029468..857bf9bd0c 100644 --- a/projects/clr/rocclr/CMakeLists.txt +++ b/projects/clr/rocclr/CMakeLists.txt @@ -7,7 +7,6 @@ cmake_minimum_required(VERSION 3.5) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") set(USE_COMGR_LIBRARY "yes") add_definitions(-DUSE_COMGR_LIBRARY -DCOMGR_DYN_DLL) -add_definitions(-DBSD_LIBELF) if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") add_compile_options("-Wno-ignored-attributes") @@ -141,6 +140,8 @@ add_library(oclruntime OBJECT target_include_directories(oclruntime PUBLIC $) +target_compile_definitions(oclruntime PRIVATE BSD_LIBELF) + set_target_properties(oclruntime PROPERTIES POSITION_INDEPENDENT_CODE ON) add_library(amdvdi_static STATIC diff --git a/projects/clr/rocclr/elf/utils/libelf/CMakeLists.txt b/projects/clr/rocclr/elf/utils/libelf/CMakeLists.txt index 040b2520cc..69d9bd8d88 100644 --- a/projects/clr/rocclr/elf/utils/libelf/CMakeLists.txt +++ b/projects/clr/rocclr/elf/utils/libelf/CMakeLists.txt @@ -1,18 +1,25 @@ -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - -include_directories(${CMAKE_CURRENT_SOURCE_DIR}) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../common) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../common/win32/sys) - -add_definitions(-DBSD_LIBELF -DUSE_MEMFILE) file(GLOB sources ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp ${CMAKE_CURRENT_SOURCE_DIR}/*.c ${CMAKE_CURRENT_SOURCE_DIR}/*.h ) + add_library(oclelf_obj OBJECT ${sources}) add_library(oclelf STATIC $) set_target_properties(oclelf_obj PROPERTIES POSITION_INDEPENDENT_CODE ON) set_target_properties(oclelf PROPERTIES POSITION_INDEPENDENT_CODE ON) +target_include_directories(oclelf_obj + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../common + ${CMAKE_CURRENT_SOURCE_DIR}/../common/win32/sys) + +target_compile_definitions(oclelf_obj + PUBLIC + BSD_LIBELF USE_MEMFILE) + +target_compile_definitions(oclelf + PUBLIC + BSD_LIBELF USE_MEMFILE) \ No newline at end of file