summaryrefslogtreecommitdiff
blob: 77bc56331dfbb42edcc61b41017d8d7424f16e94 (plain)
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);
 }