Link against libclang-cpp.so
https://fedoraproject.org/wiki/Changes/Stop-Shipping-Individual-Component-Libraries-In-clang-lib-Package
This commit is contained in:
parent
6f55b3e6f1
commit
9ba4991d2d
|
@ -0,0 +1,321 @@
|
||||||
|
From 8f442727f2e8d6d426ae9cef42434ef538d1ed13 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michal Gorny <mgorny@gentoo.org>
|
||||||
|
Date: Fri, 4 Oct 2019 12:03:03 +0000
|
||||||
|
Subject: [PATCH] [lldb] [cmake] Support linking against clang-cpp dylib
|
||||||
|
|
||||||
|
Link against clang-cpp dylib rather than split libs when
|
||||||
|
CLANG_LINK_CLANG_DYLIB is enabled.
|
||||||
|
|
||||||
|
Differential Revision: https://reviews.llvm.org/D68456
|
||||||
|
|
||||||
|
llvm-svn: 373734
|
||||||
|
---
|
||||||
|
lldb/cmake/modules/AddLLDB.cmake | 15 +++++++++++++--
|
||||||
|
lldb/source/Core/CMakeLists.txt | 4 +++-
|
||||||
|
.../Plugins/ExpressionParser/Clang/CMakeLists.txt | 19 ++++++++++---------
|
||||||
|
lldb/source/Plugins/Language/ObjC/CMakeLists.txt | 3 ++-
|
||||||
|
.../ObjC/AppleObjCRuntime/CMakeLists.txt | 3 ++-
|
||||||
|
.../RenderScript/RenderScriptRuntime/CMakeLists.txt | 3 ++-
|
||||||
|
lldb/source/Plugins/Platform/MacOSX/CMakeLists.txt | 3 ++-
|
||||||
|
lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt | 5 +++--
|
||||||
|
.../Plugins/SymbolFile/NativePDB/CMakeLists.txt | 5 +++--
|
||||||
|
lldb/source/Plugins/SymbolFile/PDB/CMakeLists.txt | 7 ++++---
|
||||||
|
lldb/source/Symbol/CMakeLists.txt | 8 +++++---
|
||||||
|
lldb/tools/lldb-instr/CMakeLists.txt | 2 +-
|
||||||
|
12 files changed, 50 insertions(+), 27 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lldb/cmake/modules/AddLLDB.cmake b/lldb/cmake/modules/AddLLDB.cmake
|
||||||
|
index 4c99278..35a8097 100644
|
||||||
|
--- a/lldb/cmake/modules/AddLLDB.cmake
|
||||||
|
+++ b/lldb/cmake/modules/AddLLDB.cmake
|
||||||
|
@@ -37,7 +37,7 @@ function(add_lldb_library name)
|
||||||
|
cmake_parse_arguments(PARAM
|
||||||
|
"MODULE;SHARED;STATIC;OBJECT;PLUGIN"
|
||||||
|
"INSTALL_PREFIX;ENTITLEMENTS"
|
||||||
|
- "EXTRA_CXXFLAGS;DEPENDS;LINK_LIBS;LINK_COMPONENTS"
|
||||||
|
+ "EXTRA_CXXFLAGS;DEPENDS;LINK_LIBS;LINK_COMPONENTS;CLANG_LIBS"
|
||||||
|
${ARGN})
|
||||||
|
llvm_process_sources(srcs ${PARAM_UNPARSED_ARGUMENTS})
|
||||||
|
list(APPEND LLVM_LINK_COMPONENTS ${PARAM_LINK_COMPONENTS})
|
||||||
|
@@ -91,6 +91,12 @@ function(add_lldb_library name)
|
||||||
|
${pass_ENTITLEMENTS}
|
||||||
|
${pass_NO_INSTALL_RPATH}
|
||||||
|
)
|
||||||
|
+
|
||||||
|
+ if(CLANG_LINK_CLANG_DYLIB)
|
||||||
|
+ target_link_libraries(${name} PRIVATE clang-cpp)
|
||||||
|
+ else()
|
||||||
|
+ target_link_libraries(${name} PRIVATE ${PARAM_CLANG_LIBS})
|
||||||
|
+ endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(PARAM_SHARED)
|
||||||
|
@@ -132,7 +138,7 @@ function(add_lldb_executable name)
|
||||||
|
cmake_parse_arguments(ARG
|
||||||
|
"GENERATE_INSTALL"
|
||||||
|
"INSTALL_PREFIX;ENTITLEMENTS"
|
||||||
|
- "LINK_LIBS;LINK_COMPONENTS"
|
||||||
|
+ "LINK_LIBS;CLANG_LIBS;LINK_COMPONENTS"
|
||||||
|
${ARGN}
|
||||||
|
)
|
||||||
|
|
||||||
|
@@ -152,6 +158,11 @@ function(add_lldb_executable name)
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(${name} PRIVATE ${ARG_LINK_LIBS})
|
||||||
|
+ if(CLANG_LINK_CLANG_DYLIB)
|
||||||
|
+ target_link_libraries(${name} PRIVATE clang-cpp)
|
||||||
|
+ else()
|
||||||
|
+ target_link_libraries(${name} PRIVATE ${ARG_CLANG_LIBS})
|
||||||
|
+ endif()
|
||||||
|
set_target_properties(${name} PROPERTIES FOLDER "lldb executables")
|
||||||
|
|
||||||
|
if(ARG_GENERATE_INSTALL)
|
||||||
|
diff --git a/lldb/source/Core/CMakeLists.txt b/lldb/source/Core/CMakeLists.txt
|
||||||
|
index 7ca37f9..2e05fa3 100644
|
||||||
|
--- a/lldb/source/Core/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Core/CMakeLists.txt
|
||||||
|
@@ -58,7 +58,6 @@ add_lldb_library(lldbCore
|
||||||
|
ValueObjectVariable.cpp
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
lldbBreakpoint
|
||||||
|
lldbDataFormatters
|
||||||
|
lldbExpression
|
||||||
|
@@ -71,6 +70,9 @@ add_lldb_library(lldbCore
|
||||||
|
lldbPluginObjCLanguage
|
||||||
|
${LLDB_CURSES_LIBS}
|
||||||
|
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangDriver
|
||||||
|
+
|
||||||
|
LINK_COMPONENTS
|
||||||
|
Support
|
||||||
|
Demangle
|
||||||
|
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt b/lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
|
||||||
|
index 950dae6..3fc1e0d 100644
|
||||||
|
--- a/lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
|
||||||
|
@@ -25,6 +25,16 @@ add_lldb_library(lldbPluginExpressionParserClang PLUGIN
|
||||||
|
${tablegen_deps}
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
+ lldbCore
|
||||||
|
+ lldbExpression
|
||||||
|
+ lldbHost
|
||||||
|
+ lldbInterpreter
|
||||||
|
+ lldbSymbol
|
||||||
|
+ lldbTarget
|
||||||
|
+ lldbUtility
|
||||||
|
+ lldbPluginCPlusPlusLanguage
|
||||||
|
+ lldbPluginCPPRuntime
|
||||||
|
+ CLANG_LIBS
|
||||||
|
clangAST
|
||||||
|
clangCodeGen
|
||||||
|
clangDriver
|
||||||
|
@@ -36,15 +46,6 @@ add_lldb_library(lldbPluginExpressionParserClang PLUGIN
|
||||||
|
clangRewriteFrontend
|
||||||
|
clangSema
|
||||||
|
clangSerialization
|
||||||
|
- lldbCore
|
||||||
|
- lldbExpression
|
||||||
|
- lldbHost
|
||||||
|
- lldbInterpreter
|
||||||
|
- lldbSymbol
|
||||||
|
- lldbTarget
|
||||||
|
- lldbUtility
|
||||||
|
- lldbPluginCPlusPlusLanguage
|
||||||
|
- lldbPluginCPPRuntime
|
||||||
|
LINK_COMPONENTS
|
||||||
|
Core
|
||||||
|
ExecutionEngine
|
||||||
|
diff --git a/lldb/source/Plugins/Language/ObjC/CMakeLists.txt b/lldb/source/Plugins/Language/ObjC/CMakeLists.txt
|
||||||
|
index afb68d4..ebb96c2 100644
|
||||||
|
--- a/lldb/source/Plugins/Language/ObjC/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/Language/ObjC/CMakeLists.txt
|
||||||
|
@@ -22,7 +22,6 @@ add_lldb_library(lldbPluginObjCLanguage PLUGIN
|
||||||
|
NSString.cpp
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
lldbCore
|
||||||
|
lldbDataFormatters
|
||||||
|
lldbExpression
|
||||||
|
@@ -32,6 +31,8 @@ add_lldb_library(lldbPluginObjCLanguage PLUGIN
|
||||||
|
lldbUtility
|
||||||
|
lldbPluginAppleObjCRuntime
|
||||||
|
lldbPluginClangCommon
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangAST
|
||||||
|
|
||||||
|
EXTRA_CXXFLAGS ${EXTRA_CXXFLAGS}
|
||||||
|
)
|
||||||
|
diff --git a/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/CMakeLists.txt b/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/CMakeLists.txt
|
||||||
|
index 29d9ba1..bcf3240 100644
|
||||||
|
--- a/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/CMakeLists.txt
|
||||||
|
@@ -9,7 +9,6 @@ add_lldb_library(lldbPluginAppleObjCRuntime PLUGIN
|
||||||
|
AppleObjCTypeEncodingParser.cpp
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
lldbBreakpoint
|
||||||
|
lldbCore
|
||||||
|
lldbExpression
|
||||||
|
@@ -20,6 +19,8 @@ add_lldb_library(lldbPluginAppleObjCRuntime PLUGIN
|
||||||
|
lldbUtility
|
||||||
|
lldbPluginExpressionParserClang
|
||||||
|
lldbPluginCPPRuntime
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangAST
|
||||||
|
LINK_COMPONENTS
|
||||||
|
Support
|
||||||
|
)
|
||||||
|
diff --git a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/CMakeLists.txt b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/CMakeLists.txt
|
||||||
|
index 1a6c499..c122e09 100644
|
||||||
|
--- a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/CMakeLists.txt
|
||||||
|
@@ -13,7 +13,6 @@ add_lldb_library(lldbPluginRenderScriptRuntime PLUGIN
|
||||||
|
${tablegen_deps}
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangBasic
|
||||||
|
lldbBreakpoint
|
||||||
|
lldbCore
|
||||||
|
lldbDataFormatters
|
||||||
|
@@ -22,6 +21,8 @@ add_lldb_library(lldbPluginRenderScriptRuntime PLUGIN
|
||||||
|
lldbInterpreter
|
||||||
|
lldbSymbol
|
||||||
|
lldbTarget
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangBasic
|
||||||
|
LINK_COMPONENTS
|
||||||
|
Core
|
||||||
|
IRReader
|
||||||
|
diff --git a/lldb/source/Plugins/Platform/MacOSX/CMakeLists.txt b/lldb/source/Plugins/Platform/MacOSX/CMakeLists.txt
|
||||||
|
index 6f0d952..dc04693 100644
|
||||||
|
--- a/lldb/source/Plugins/Platform/MacOSX/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/Platform/MacOSX/CMakeLists.txt
|
||||||
|
@@ -31,7 +31,6 @@ add_lldb_library(lldbPluginPlatformMacOSX PLUGIN
|
||||||
|
${PLUGIN_PLATFORM_MACOSX_SOURCES}
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangBasic
|
||||||
|
lldbBreakpoint
|
||||||
|
lldbCore
|
||||||
|
lldbHost
|
||||||
|
@@ -41,6 +40,8 @@ add_lldb_library(lldbPluginPlatformMacOSX PLUGIN
|
||||||
|
lldbUtility
|
||||||
|
lldbPluginPlatformPOSIX
|
||||||
|
${OBJC_LIBS}
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangBasic
|
||||||
|
LINK_COMPONENTS
|
||||||
|
Support
|
||||||
|
)
|
||||||
|
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt b/lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
|
||||||
|
index cd588cb..69d2d21 100644
|
||||||
|
--- a/lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
|
||||||
|
@@ -36,8 +36,6 @@ add_lldb_library(lldbPluginSymbolFileDWARF PLUGIN
|
||||||
|
UniqueDWARFASTType.cpp
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
- clangBasic
|
||||||
|
lldbCore
|
||||||
|
lldbExpression
|
||||||
|
lldbHost
|
||||||
|
@@ -48,6 +46,9 @@ add_lldb_library(lldbPluginSymbolFileDWARF PLUGIN
|
||||||
|
lldbPluginObjCLanguage
|
||||||
|
lldbPluginCPlusPlusLanguage
|
||||||
|
lldbPluginExpressionParserClang
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangAST
|
||||||
|
+ clangBasic
|
||||||
|
LINK_COMPONENTS
|
||||||
|
DebugInfoDWARF
|
||||||
|
Support
|
||||||
|
diff --git a/lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt b/lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
|
||||||
|
index 52b431d..aaecec4 100644
|
||||||
|
--- a/lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
|
||||||
|
@@ -11,11 +11,12 @@ add_lldb_library(lldbPluginSymbolFileNativePDB PLUGIN
|
||||||
|
UdtRecordCompleter.cpp
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
- clangLex
|
||||||
|
lldbCore
|
||||||
|
lldbSymbol
|
||||||
|
lldbUtility
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangAST
|
||||||
|
+ clangLex
|
||||||
|
LINK_COMPONENTS
|
||||||
|
DebugInfoCodeView
|
||||||
|
DebugInfoPDB
|
||||||
|
diff --git a/lldb/source/Plugins/SymbolFile/PDB/CMakeLists.txt b/lldb/source/Plugins/SymbolFile/PDB/CMakeLists.txt
|
||||||
|
index 64168d0..79bdce42 100644
|
||||||
|
--- a/lldb/source/Plugins/SymbolFile/PDB/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Plugins/SymbolFile/PDB/CMakeLists.txt
|
||||||
|
@@ -4,12 +4,13 @@ add_lldb_library(lldbPluginSymbolFilePDB PLUGIN
|
||||||
|
SymbolFilePDB.cpp
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
- clangLex
|
||||||
|
lldbCore
|
||||||
|
+ lldbPluginSymbolFileNativePDB
|
||||||
|
lldbSymbol
|
||||||
|
lldbUtility
|
||||||
|
- lldbPluginSymbolFileNativePDB
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangAST
|
||||||
|
+ clangLex
|
||||||
|
LINK_COMPONENTS
|
||||||
|
DebugInfoPDB
|
||||||
|
Support
|
||||||
|
diff --git a/lldb/source/Symbol/CMakeLists.txt b/lldb/source/Symbol/CMakeLists.txt
|
||||||
|
index 4b922c2..8614172 100644
|
||||||
|
--- a/lldb/source/Symbol/CMakeLists.txt
|
||||||
|
+++ b/lldb/source/Symbol/CMakeLists.txt
|
||||||
|
@@ -47,9 +47,6 @@ add_lldb_library(lldbSymbol
|
||||||
|
${PLATFORM_SOURCES}
|
||||||
|
|
||||||
|
LINK_LIBS
|
||||||
|
- clangAST
|
||||||
|
- clangBasic
|
||||||
|
- clangFrontend
|
||||||
|
lldbCore
|
||||||
|
lldbExpression
|
||||||
|
lldbHost
|
||||||
|
@@ -61,6 +58,11 @@ add_lldb_library(lldbSymbol
|
||||||
|
lldbPluginObjCLanguage
|
||||||
|
lldbPluginObjCRuntime
|
||||||
|
|
||||||
|
+ CLANG_LIBS
|
||||||
|
+ clangAST
|
||||||
|
+ clangBasic
|
||||||
|
+ clangFrontend
|
||||||
|
+
|
||||||
|
LINK_COMPONENTS
|
||||||
|
Support
|
||||||
|
)
|
||||||
|
diff --git a/lldb/tools/lldb-instr/CMakeLists.txt b/lldb/tools/lldb-instr/CMakeLists.txt
|
||||||
|
index e3dbeba..8da453b 100644
|
||||||
|
--- a/lldb/tools/lldb-instr/CMakeLists.txt
|
||||||
|
+++ b/lldb/tools/lldb-instr/CMakeLists.txt
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
add_lldb_tool(lldb-instr
|
||||||
|
Instrument.cpp
|
||||||
|
|
||||||
|
- LINK_LIBS
|
||||||
|
+ CLANG_LIBS
|
||||||
|
clangAST
|
||||||
|
clangBasic
|
||||||
|
clangCodeGen
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
11
lldb.spec
11
lldb.spec
|
@ -1,5 +1,5 @@
|
||||||
#%%global rc_ver 3
|
#%%global rc_ver 3
|
||||||
%global baserelease 3
|
%global baserelease 4
|
||||||
|
|
||||||
Name: lldb
|
Name: lldb
|
||||||
Version: 9.0.1
|
Version: 9.0.1
|
||||||
|
@ -10,6 +10,8 @@ License: NCSA
|
||||||
URL: http://lldb.llvm.org/
|
URL: http://lldb.llvm.org/
|
||||||
Source0: http://%{?rc_ver:pre}releases.llvm.org/%{version}/%{?rc_ver:rc%{rc_ver}}/%{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src.tar.xz
|
Source0: http://%{?rc_ver:pre}releases.llvm.org/%{version}/%{?rc_ver:rc%{rc_ver}}/%{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src.tar.xz
|
||||||
|
|
||||||
|
Patch0: 0001-lldb-cmake-Support-linking-against-clang-cpp-dylib.patch
|
||||||
|
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
BuildRequires: llvm-devel = %{version}
|
BuildRequires: llvm-devel = %{version}
|
||||||
BuildRequires: llvm-test = %{version}
|
BuildRequires: llvm-test = %{version}
|
||||||
|
@ -48,7 +50,7 @@ Requires: python3-six
|
||||||
The package contains the LLDB Python module.
|
The package contains the LLDB Python module.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n %{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src
|
%autosetup -n %{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src -p2
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
|
||||||
|
@ -79,6 +81,7 @@ CXXFLAGS="%{optflags} -Wno-error=format-security"
|
||||||
-DPYTHON_VERSION_MAJOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.major)") \
|
-DPYTHON_VERSION_MAJOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.major)") \
|
||||||
-DPYTHON_VERSION_MINOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.minor)") \
|
-DPYTHON_VERSION_MINOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.minor)") \
|
||||||
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
|
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
|
||||||
|
-DCLANG_LINK_CLANG_DYLIB=ON \
|
||||||
-DLLVM_LIT_ARGS="-sv \
|
-DLLVM_LIT_ARGS="-sv \
|
||||||
--path %{_libdir}/llvm" \
|
--path %{_libdir}/llvm" \
|
||||||
|
|
||||||
|
@ -114,6 +117,10 @@ rm -f %{buildroot}%{python3_sitearch}/six.*
|
||||||
%{python3_sitearch}/lldb
|
%{python3_sitearch}/lldb
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jan 29 2020 Tom Stellard <tstellar@redhat.com> - 9.0.1-4
|
||||||
|
- Link against libclang-cpp.so
|
||||||
|
- https://fedoraproject.org/wiki/Changes/Stop-Shipping-Individual-Component-Libraries-In-clang-lib-Package
|
||||||
|
|
||||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.0.1-3
|
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.0.1-3
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue