1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
Tune CMakeLists for out-of-tree build.
Adjust for API discrepancies between Apple clang-8.0.0 and upstream LLVM 5.0.1.
Allow all clients to link against the library, not just ld. Main reason: Our ld
is called ld64 when we link it.
--- tapi-2.0.0/tools/tapi/CMakeLists.txt.orig 2017-12-25 22:36:06.620886714 +0100
+++ tapi-2.0.0/tools/tapi/CMakeLists.txt 2017-12-25 22:41:43.867893060 +0100
@@ -6,6 +6,12 @@
target_link_libraries(tapi
tapiDriver
+ clangAST
+ clangFrontend
+ LLVMOption
+ LLVMDemangle
+ LLVMSupport
+ LLVMCore
)
if (TAPI_BUILD_LIBIOSSDK)
--- tapi-2.0.0/tools/libtapi/CMakeLists.txt.orig 2017-12-25 22:26:06.816905789 +0100
+++ tapi-2.0.0/tools/libtapi/CMakeLists.txt 2017-12-25 22:31:22.914862289 +0100
@@ -1,4 +1,7 @@
set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/libtapi.exports)
+set(LLVM_LINK_COMPONENTS
+ Support
+ )
add_tapi_library(libtapi
SHARED
@@ -19,5 +22,5 @@
set_property(TARGET libtapi APPEND_STRING
PROPERTY
- LINK_FLAGS " -current_version ${TAPI_FULL_VERSION} -compatibility_version 1 -allowable_client ld"
+ LINK_FLAGS " -current_version ${TAPI_FULL_VERSION} -compatibility_version 1"
)
--- tapi-2.0.0/tools/tapi-run/CMakeLists.txt.orig 2017-12-26 15:12:39.605057352 +0100
+++ tapi-2.0.0/tools/tapi-run/CMakeLists.txt 2017-12-26 15:15:53.304983942 +0100
@@ -5,6 +5,8 @@
target_link_libraries(tapi-run
tapiCore
libtapi
+ LLVMSupport
+ LLVMCore
)
set_property(TARGET tapi-run APPEND_STRING
--- tapi-2.0.0/CMakeLists.txt.orig 2017-12-24 15:27:56.000000000 +0100
+++ tapi-2.0.0/CMakeLists.txt 2017-12-26 15:50:01.199506782 +0100
@@ -4,6 +4,24 @@
message(FATAL_ERROR "Unsupported configuration.")
endif()
+project(tapi)
+set(PACKAGE_VENDOR Apple CACHE STRING "")
+add_definitions(-DTAPI_BUG_REPORT_URL="https://bugs.gentoo.org/")
+
+find_package(LLVM REQUIRED CONFIG)
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LLVM_CMAKE_DIR})
+include(AddLLVM)
+
+add_definitions(${LLVM_DEFINITIONS})
+include_directories(${LLVM_INCLUDE_DIRS} ${OBJCMETADATA_INCLUDE_DIRS})
+link_directories(${LLVM_LIBRARY_DIRS} ${OBJCMETADATA_LIBRARY_DIRS})
+
+# make tblgen happy
+include(TableGen)
+foreach(IPATH ${LLVM_INCLUDE_DIRS})
+ list(APPEND LLVM_TABLEGEN_FLAGS -I ${IPATH})
+endforeach(IPATH)
+
set(TAPI_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(TAPI_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
--- tapi-2.0.0/lib/Core/MachODylibReader.cpp.orig 2017-12-24 15:27:56.000000000 +0100
+++ tapi-2.0.0/lib/Core/MachODylibReader.cpp 2017-12-25 22:15:53.075478606 +0100
@@ -254,8 +254,7 @@
auto arch = getArchType(H.cputype, H.cpusubtype);
assert(arch != Architecture::unknown && "unknown architecture slice");
- Error error = Error::success();
- for (const auto &symbol : object->exports(error)) {
+ for (const auto &symbol : object->exports()) {
StringRef name;
XPIKind kind;
std::tie(name, kind) = parseSymbol(symbol.name());
@@ -272,7 +271,7 @@
file->addSymbol(kind, name, arch, flags);
}
- return error;
+ return Error::success();
}
static Error readUndefinedSymbols(MachOObjectFile *object,
@@ -309,10 +308,7 @@
auto H = object->getHeader();
auto arch = getArchType(H.cputype, H.cpusubtype);
- auto error = Error::success();
- MachOMetadata metadata(object, error);
- if (error)
- return std::move(error);
+ MachOMetadata metadata(object);
///
/// Classes
--- tapi-2.0.0/lib/Driver/Snapshot.cpp.orig 2017-12-24 15:27:56.000000000 +0100
+++ tapi-2.0.0/lib/Driver/Snapshot.cpp 2017-12-26 15:49:09.864184826 +0100
@@ -14,7 +14,7 @@
#include "tapi/Defines.h"
#include "clang/Frontend/FrontendOptions.h"
#include "llvm/ADT/ArrayRef.h"
-#include "llvm/Config/config.h"
+#include "llvm/Config/llvm-config.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/xxhash.h"
@@ -356,7 +356,7 @@
}
if (isCrash) {
- outs() << "PLEASE submit a bug report to " BUG_REPORT_URL
+ outs() << "PLEASE submit a bug report to " TAPI_BUG_REPORT_URL
" and include the "
"crash backtrace and snapshot.\n\n"
"********************************************************\n\n"
--- tapi-2.0.0/lib/Driver/Options.cpp.orig 2017-12-25 22:17:40.506874748 +0100
+++ tapi-2.0.0/lib/Driver/Options.cpp 2017-12-25 22:18:04.181989766 +0100
@@ -1023,7 +1023,7 @@
table->PrintHelp(
outs(),
(programName + " " + getNameFromTAPICommand(command)).str().c_str(),
- toolName, /*FlagsToInclude=*/getIncludeOptionFlagMasks(command),
+ toolName, /*FlagsToInclude=*///getIncludeOptionFlagMasks(command),
/*FlagsToExclude=*/0, /*ShowAllAliases=*/false);
}
|