chiark / gitweb /
llvm&clang: Update from 3.9.1 to 4.0.0
authorFredrik Fornwall <fredrik@fornwall.net>
Wed, 15 Mar 2017 15:28:36 +0000 (16:28 +0100)
committerFredrik Fornwall <fredrik@fornwall.net>
Wed, 15 Mar 2017 15:28:36 +0000 (16:28 +0100)
packages/libllvm/build.sh
packages/libllvm/tools-clang-lib-StaticAnalyzer-Checkers-ExprInspectionChecker.cpp.patch [new file with mode: 0644]
packages/libllvm/tools-llvm-shlib-CMakeLists.txt.patch
packages/libllvm/tools-llvm-xray-xray-converter.cc.patch [new file with mode: 0644]
packages/libllvm/tools-sancov-sancov.cc.patch [deleted file]

index dc3b9c1a70d484493e908b1dd98c0e0ee58617b2..b10f755d2a3191eb4f7ca1a94270b7250b942aeb 100644 (file)
@@ -1,14 +1,15 @@
 TERMUX_PKG_HOMEPAGE=http://clang.llvm.org/
 TERMUX_PKG_DESCRIPTION="Modular compiler and toolchain technologies library"
-_PKG_MAJOR_VERSION=3.9
-TERMUX_PKG_VERSION=${_PKG_MAJOR_VERSION}.1
-TERMUX_PKG_REVISION=3
+_PKG_MAJOR_VERSION=4.0
+TERMUX_PKG_VERSION=${_PKG_MAJOR_VERSION}.0
 TERMUX_PKG_SRCURL=http://llvm.org/releases/${TERMUX_PKG_VERSION}/llvm-${TERMUX_PKG_VERSION}.src.tar.xz
-TERMUX_PKG_SHA256=1fd90354b9cf19232e8f168faf2220e79be555df3aa743242700879e8fd329ee
+TERMUX_PKG_SHA256=8d10511df96e73b8ff9e7abbfb4d4d432edbdbe965f1f4f07afaf370b8a533be
 TERMUX_PKG_HOSTBUILD=true
 TERMUX_PKG_RM_AFTER_INSTALL="
 bin/bugpoint
 bin/clang-check
+bin/clang-import-test
+bin/clang-offload-bundler
 bin/git-clang-format
 bin/llvm-tblgen
 bin/macho-dump
@@ -44,9 +45,10 @@ TERMUX_PKG_FORCE_CMAKE=yes
 
 termux_step_post_extract_package () {
        CLANG_SRC_TAR=cfe-${TERMUX_PKG_VERSION}.src.tar.xz
-       test ! -f $TERMUX_PKG_CACHEDIR/$CLANG_SRC_TAR && termux_download http://llvm.org/releases/${TERMUX_PKG_VERSION}/$CLANG_SRC_TAR \
+       termux_download \
+               http://llvm.org/releases/${TERMUX_PKG_VERSION}/$CLANG_SRC_TAR \
                $TERMUX_PKG_CACHEDIR/$CLANG_SRC_TAR \
-               e6c4cebb96dee827fa0470af313dff265af391cb6da8d429842ef208c8f25e63
+               cea5f88ebddb30e296ca89130c83b9d46c2d833685e2912303c828054c4dc98a
 
        tar -xf $TERMUX_PKG_CACHEDIR/$CLANG_SRC_TAR -C tools
        mv tools/cfe-${TERMUX_PKG_VERSION}.src tools/clang
diff --git a/packages/libllvm/tools-clang-lib-StaticAnalyzer-Checkers-ExprInspectionChecker.cpp.patch b/packages/libllvm/tools-clang-lib-StaticAnalyzer-Checkers-ExprInspectionChecker.cpp.patch
new file mode 100644 (file)
index 0000000..fb6c1f1
--- /dev/null
@@ -0,0 +1,20 @@
+diff -u -r ../llvm-4.0.0.src/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp ./tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
+--- ../llvm-4.0.0.src/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp        2016-11-30 18:57:18.000000000 +0100
++++ ./tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp        2017-03-14 18:11:26.984865292 +0100
+@@ -12,6 +12,7 @@
+ #include "clang/StaticAnalyzer/Core/Checker.h"
+ #include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
+ #include "clang/StaticAnalyzer/Checkers/SValExplainer.h"
++#include "llvm/ADT/StringExtras.h"
+ #include "llvm/ADT/StringSwitch.h"
+ using namespace clang;
+@@ -269,7 +270,7 @@
+     unsigned NumTimesReached = Item.second.NumTimesReached;
+     ExplodedNode *N = Item.second.ExampleNode;
+-    reportBug(std::to_string(NumTimesReached), BR, N);
++    reportBug(llvm::utostr(NumTimesReached), BR, N);
+   }
+ }
index 586791adb87193958d3492db1b64dd541f8c0fdb..790230c537294a1971efbe97ff864c69d1615cc2 100644 (file)
@@ -1,12 +1,12 @@
-diff -u -r ../llvm-3.9.1.src/tools/llvm-shlib/CMakeLists.txt ./tools/llvm-shlib/CMakeLists.txt
---- ../llvm-3.9.1.src/tools/llvm-shlib/CMakeLists.txt  2016-05-26 06:35:35.000000000 +0200
-+++ ./tools/llvm-shlib/CMakeLists.txt  2017-01-18 10:52:30.810184797 +0100
-@@ -39,7 +39,7 @@
+diff -u -r ../llvm-4.0.0.src/tools/llvm-shlib/CMakeLists.txt ./tools/llvm-shlib/CMakeLists.txt
+--- ../llvm-4.0.0.src/tools/llvm-shlib/CMakeLists.txt  2016-11-01 21:19:33.000000000 +0100
++++ ./tools/llvm-shlib/CMakeLists.txt  2017-03-14 17:08:19.394563777 +0100
+@@ -37,7 +37,7 @@
  add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
  
  list(REMOVE_DUPLICATES LIB_NAMES)
--if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
-+if("${CMAKE_SYSTEM_NAME}" MATCHES "^(Linux|Android)$") # FIXME: It should be "GNU ld for elf"
+-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR MINGW) # FIXME: It should be "GNU ld for elf"
++if("${CMAKE_SYSTEM_NAME}" MATCHES "^(Linux|Android)$" OR MINGW) # FIXME: It should be "GNU ld for elf"
    # GNU ld doesn't resolve symbols in the version script.
    set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
  elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
diff --git a/packages/libllvm/tools-llvm-xray-xray-converter.cc.patch b/packages/libllvm/tools-llvm-xray-xray-converter.cc.patch
new file mode 100644 (file)
index 0000000..9d0d330
--- /dev/null
@@ -0,0 +1,20 @@
+diff -u -r ../llvm-4.0.0.src/tools/llvm-xray/xray-converter.cc ./tools/llvm-xray/xray-converter.cc
+--- ../llvm-4.0.0.src/tools/llvm-xray/xray-converter.cc        2017-02-27 18:01:04.000000000 +0100
++++ ./tools/llvm-xray/xray-converter.cc        2017-03-14 18:30:35.979011376 +0100
+@@ -14,6 +14,7 @@
+ #include "xray-extract.h"
+ #include "xray-registry.h"
++#include "llvm/ADT/StringExtras.h"
+ #include "llvm/DebugInfo/Symbolize/Symbolize.h"
+ #include "llvm/Support/EndianStream.h"
+ #include "llvm/Support/FileSystem.h"
+@@ -95,7 +96,7 @@
+   for (const auto &R : Records) {
+     Trace.Records.push_back({R.RecordType, R.CPU, R.Type, R.FuncId,
+                              Symbolize ? FuncIdHelper.SymbolOrNumber(R.FuncId)
+-                                       : std::to_string(R.FuncId),
++                                       : llvm::utostr(R.FuncId),
+                              R.TSC, R.TId});
+   }
+   Output Out(OS, nullptr, 0);
diff --git a/packages/libllvm/tools-sancov-sancov.cc.patch b/packages/libllvm/tools-sancov-sancov.cc.patch
deleted file mode 100644 (file)
index 837b3ef..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Workaround bug https://github.com/android-ndk/ndk/issues/82 where std::to_string
-is not available yet.
-
-diff -u -r ../llvm-3.9.0.src/tools/sancov/sancov.cc ./tools/sancov/sancov.cc
---- ../llvm-3.9.0.src/tools/sancov/sancov.cc   2016-07-13 22:24:01.000000000 -0400
-+++ ./tools/sancov/sancov.cc   2016-09-04 11:48:19.647813216 -0400
-@@ -512,7 +512,7 @@
- static std::string formatHtmlPct(size_t Pct) {
-   Pct = std::max(std::size_t{0}, std::min(std::size_t{100}, Pct));
--  std::string Num = std::to_string(Pct);
-+  std::string Num = llvm::utostr(Pct);
-   std::string Zeroes(3 - Num.size(), '0');
-   if (!Zeroes.empty())
-     Zeroes = "<span class='lz'>" + Zeroes + "</span>";