|
|
5dee6b6 |
From dc520816332d81d7729fb36933e9767d83c02b57 Mon Sep 17 00:00:00 2001
|
|
|
5dee6b6 |
From: Tom Stellard <tstellar@redhat.com>
|
|
|
5dee6b6 |
Date: Wed, 31 Jul 2019 20:43:42 -0700
|
|
|
5dee6b6 |
Subject: [PATCH] Filter out cxxflags not supported by clang
|
|
|
1afade5 |
|
|
|
1afade5 |
---
|
|
|
5dee6b6 |
llvm/cmake/modules/AddLLVM.cmake | 6 +++++-
|
|
|
5dee6b6 |
llvm/cmake/modules/CMakeLists.txt | 3 +++
|
|
|
5dee6b6 |
llvm/cmake/modules/LLVMConfig.cmake.in | 2 ++
|
|
|
5dee6b6 |
llvm/tools/llvm-config/CMakeLists.txt | 4 ++++
|
|
|
4ca785f |
4 files changed, 14 insertions(+), 1 deletion(-)
|
|
|
7a93d34 |
|
|
|
5dee6b6 |
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
|
|
|
5dee6b6 |
index 619e986..5d38db9 100644
|
|
|
5dee6b6 |
--- a/llvm/cmake/modules/AddLLVM.cmake
|
|
|
5dee6b6 |
+++ b/llvm/cmake/modules/AddLLVM.cmake
|
|
|
5dee6b6 |
@@ -901,7 +901,11 @@ macro(add_llvm_tool name)
|
|
|
5dee6b6 |
set(export_to_llvmexports)
|
|
|
7a93d34 |
if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
|
|
|
7a93d34 |
NOT LLVM_DISTRIBUTION_COMPONENTS)
|
|
|
7a93d34 |
- set(export_to_llvmexports EXPORT LLVMExports)
|
|
|
7a93d34 |
+ if (ARG_SHARED)
|
|
|
7a93d34 |
+ set(export_to_llvmexports EXPORT LLVMExports)
|
|
|
7a93d34 |
+ else()
|
|
|
7a93d34 |
+ set(export_to_llvmexports EXPORT LLVMStaticExports)
|
|
|
7a93d34 |
+ endif()
|
|
|
7a93d34 |
set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
|
|
|
7a93d34 |
endif()
|
|
|
7a93d34 |
|
|
|
5dee6b6 |
diff --git a/llvm/cmake/modules/CMakeLists.txt b/llvm/cmake/modules/CMakeLists.txt
|
|
|
5dee6b6 |
index 9cf22b4..dc982d2 100644
|
|
|
5dee6b6 |
--- a/llvm/cmake/modules/CMakeLists.txt
|
|
|
5dee6b6 |
+++ b/llvm/cmake/modules/CMakeLists.txt
|
|
|
5dee6b6 |
@@ -105,6 +105,7 @@ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
|
|
|
5dee6b6 |
set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
|
|
|
7a93d34 |
set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
|
|
|
7a93d34 |
set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
|
|
|
7a93d34 |
+set(LLVM_CONFIG_STATIC_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMStaticExports.cmake")
|
|
|
7a93d34 |
configure_file(
|
|
|
7a93d34 |
LLVMConfig.cmake.in
|
|
|
7a93d34 |
${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/LLVMConfig.cmake
|
|
|
5dee6b6 |
@@ -121,6 +122,8 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
|
|
7a93d34 |
if(llvm_has_exports)
|
|
|
7a93d34 |
install(EXPORT LLVMExports DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
|
|
7a93d34 |
COMPONENT cmake-exports)
|
|
|
7a93d34 |
+ install(EXPORT LLVMStaticExports DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
|
|
7a93d34 |
+ COMPONENT cmake-exports)
|
|
|
7a93d34 |
endif()
|
|
|
7a93d34 |
|
|
|
7a93d34 |
install(FILES
|
|
|
5dee6b6 |
diff --git a/llvm/cmake/modules/LLVMConfig.cmake.in b/llvm/cmake/modules/LLVMConfig.cmake.in
|
|
|
5dee6b6 |
index 536031f..6ef54a0 100644
|
|
|
5dee6b6 |
--- a/llvm/cmake/modules/LLVMConfig.cmake.in
|
|
|
5dee6b6 |
+++ b/llvm/cmake/modules/LLVMConfig.cmake.in
|
|
|
5dee6b6 |
@@ -89,6 +89,8 @@ if(NOT TARGET LLVMSupport)
|
|
|
7a93d34 |
set(LLVM_EXPORTED_TARGETS "@LLVM_CONFIG_EXPORTS@")
|
|
|
7a93d34 |
include("@LLVM_CONFIG_EXPORTS_FILE@")
|
|
|
7a93d34 |
@llvm_config_include_buildtree_only_exports@
|
|
|
7a93d34 |
+
|
|
|
7a93d34 |
+ include("@LLVM_CONFIG_STATIC_EXPORTS_FILE@" OPTIONAL)
|
|
|
7a93d34 |
endif()
|
|
|
7a93d34 |
|
|
|
7a93d34 |
# By creating intrinsics_gen here, subprojects that depend on LLVM's
|
|
|
5dee6b6 |
diff --git a/llvm/tools/llvm-config/CMakeLists.txt b/llvm/tools/llvm-config/CMakeLists.txt
|
|
|
5dee6b6 |
index 8e97a10..9b9b7d1 100644
|
|
|
5dee6b6 |
--- a/llvm/tools/llvm-config/CMakeLists.txt
|
|
|
5dee6b6 |
+++ b/llvm/tools/llvm-config/CMakeLists.txt
|
|
|
5dee6b6 |
@@ -43,7 +43,11 @@ set(LLVM_SRC_ROOT ${LLVM_MAIN_SRC_DIR})
|
|
|
4ca785f |
set(LLVM_OBJ_ROOT ${LLVM_BINARY_DIR})
|
|
|
4ca785f |
set(LLVM_CPPFLAGS "${LLVM_DEFINITIONS}")
|
|
|
4ca785f |
set(LLVM_CFLAGS "${LLVM_C_STD_FLAG} ${LLVM_DEFINITIONS}")
|
|
|
4ca785f |
+STRING(REGEX REPLACE "-mcet" "" LLVM_CFLAGS ${LLVM_CFLAGS})
|
|
|
4ca785f |
+STRING(REGEX REPLACE "-fcf-protection" "" LLVM_CFLAGS ${LLVM_CFLAGS})
|
|
|
5dee6b6 |
set(LLVM_CXXFLAGS "${LLVM_CXX_STD_FLAG} ${LLVM_CXX_STDLIB_FLAG} ${COMPILE_FLAGS} ${LLVM_DEFINITIONS}")
|
|
|
4ca785f |
+STRING(REGEX REPLACE "-mcet" "" LLVM_CXXFLAGS ${LLVM_CXXFLAGS})
|
|
|
4ca785f |
+STRING(REGEX REPLACE "-fcf-protection" "" LLVM_CXXFLAGS ${LLVM_CXXFLAGS})
|
|
|
4ca785f |
set(LLVM_BUILD_SYSTEM cmake)
|
|
|
4ca785f |
set(LLVM_HAS_RTTI ${LLVM_CONFIG_HAS_RTTI})
|
|
|
4ca785f |
set(LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}")
|
|
|
1afade5 |
--
|
|
|
5dee6b6 |
1.8.3.1
|
|
|
1afade5 |
|