clang: Fixes for new z3 package. Link with -mbig-obj everything
This commit is contained in:
13
mingw-w64-clang/0010-mbig-obj-for-all.patch
Normal file
13
mingw-w64-clang/0010-mbig-obj-for-all.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
--- llvm-6.0.0.src/cmake/modules/HandleLLVMOptions.cmake.orig 2018-06-06 14:33:51.928460200 +0300
|
||||
+++ llvm-6.0.0.src/cmake/modules/HandleLLVMOptions.cmake 2018-06-06 14:33:59.840471400 +0300
|
||||
@@ -312,9 +312,7 @@
|
||||
# Pass -mbig-obj to mingw gas on Win64. COFF has a 2**16 section limit, and
|
||||
# on Win64, every COMDAT function creates at least 3 sections: .text, .pdata,
|
||||
# and .xdata.
|
||||
- if (CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
- append("-Wa,-mbig-obj" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
|
||||
- endif()
|
||||
+ append("-Wa,-mbig-obj" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
|
||||
endif()
|
||||
|
||||
if( MSVC )
|
||||
18
mingw-w64-clang/0107-z3-fixes.patch
Normal file
18
mingw-w64-clang/0107-z3-fixes.patch
Normal file
@@ -0,0 +1,18 @@
|
||||
--- clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp.orig 2018-06-06 13:29:57.070228300 +0300
|
||||
+++ clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp 2018-06-06 13:31:19.912344400 +0300
|
||||
@@ -679,13 +679,13 @@
|
||||
// type, which isn't compatible with a unsigned long type, even if they
|
||||
// are the same size.
|
||||
Z3_get_numeral_uint64(Z3Context::ZC, AST,
|
||||
- reinterpret_cast<__uint64 *>(&Value[0]));
|
||||
+ &Value[0]);
|
||||
if (Sort.getBitvectorSortSize() <= 64) {
|
||||
Int = llvm::APSInt(llvm::APInt(Int.getBitWidth(), Value[0]), true);
|
||||
} else if (Sort.getBitvectorSortSize() == 128) {
|
||||
Z3Expr ASTHigh = Z3Expr(Z3_mk_extract(Z3Context::ZC, 127, 64, AST));
|
||||
Z3_get_numeral_uint64(Z3Context::ZC, AST,
|
||||
- reinterpret_cast<__uint64 *>(&Value[1]));
|
||||
+ &Value[1]);
|
||||
Int = llvm::APSInt(llvm::APInt(Int.getBitWidth(), Value), true);
|
||||
} else {
|
||||
assert(false && "Bitwidth not supported!");
|
||||
@@ -38,7 +38,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-cmake>=3.4.3"
|
||||
"tar"
|
||||
"groff")
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-gcc")
|
||||
#options=('debug' '!strip')
|
||||
options=('!debug' 'strip')
|
||||
source=(https://releases.llvm.org/${pkgver}/llvm-${pkgver}.src.tar.xz{,.sig}
|
||||
https://releases.llvm.org/${pkgver}/cfe-${pkgver}.src.tar.xz{,.sig}
|
||||
https://releases.llvm.org/${pkgver}/compiler-rt-${pkgver}.src.tar.xz{,.sig}
|
||||
@@ -60,12 +60,14 @@ source=(https://releases.llvm.org/${pkgver}/llvm-${pkgver}.src.tar.xz{,.sig}
|
||||
"0007-getLoadAddressWithOffset-assertion.patch"
|
||||
"0008-unmangled-getSymbolAddressInProcess.patch"
|
||||
"0009-empty-target-prefix-only-msvc.patch"
|
||||
"0010-mbig-obj-for-all.patch"
|
||||
"0101-Allow-build-static-clang-library-for-mingw.patch"
|
||||
"0102-fix-libclang-name-for-mingw.patch"
|
||||
"0103-Set-the-x86-arch-name-to-i686-for-mingw-w64.patch"
|
||||
"0104-link-pthread-with-mingw.patch"
|
||||
"0105-use-emulated-tls-with-mingw.patch"
|
||||
"0106-MinGW-use-flto-visibility-public-std-CC1-arg-to-get-.patch"
|
||||
"0107-z3-fixes.patch"
|
||||
"0201-mingw-w64-__udivdi3-mangle-hack.patch"
|
||||
"0401-mingw-w64-hack-and-slash-fixes-for-libc.patch"
|
||||
"0402-D40181.patch"
|
||||
@@ -118,12 +120,14 @@ sha256sums=('1ff53c915b4e761ef400b803f07261ade637b0c269d99569f18040f3dcee4408'
|
||||
'1887ea21fcd591a50dd10559774e872ce1183177e672b028133d9b669e3cac32'
|
||||
'8fd8556f7b4f3adaabd5540f500bae1c3dc0daa7a23880c62860ed347c76b188'
|
||||
'33400d16d5f6671a8fd60345c3ae44b9777a7d600061957889d14305eb2ad709'
|
||||
'1c9efccd40a0e7834c3aa9d819aa25cfdd2cec389d1bd3e8a89bc9ff670a0129'
|
||||
'f2b0403e6b6cafddf364a90a6bb1e57793fd98d6f80f8976a87574cd93eb1d1a'
|
||||
'b1ed2ccdb87bb4f024a5cd750e71de3706fd24ccfeb87835403dab84ef7a9019'
|
||||
'ab49b90d69a609f441fa58e835873f2b1a8a060c9ca6358fee7d99c1973da692'
|
||||
'53646dd01af2862473e9719c5223366486268891ccbff86413943a432a8342e9'
|
||||
'7b85221a5d8506abc622dc8f252866c93183ccd7e44d5e1bc082d6fcb244e7d3'
|
||||
'3d6045cf35d5523c68baf87bd490007d4ac8fe3eabcbc23d8c66e80ff1c234e7'
|
||||
'adbdc2edb31b4e3ff8be6f721f8052006420b819035f381f21475aab665a5c56'
|
||||
'bafaf7d06bec3ed7fba58e8a926e7b472b5e16442b6ee9dd8c7ee6c0cce9792a'
|
||||
'da44cca549bc7fb9e04f0f038a1ed68ba99cdfec834fc241ab13880bd0aa3b0f'
|
||||
'5e215239b99de4687b2ac133f5044bd9478e87b316df517dcc572ba67f9731d2'
|
||||
@@ -161,6 +165,7 @@ prepare() {
|
||||
patch -p1 -i "${srcdir}/0004-llvm-config-look-for-unversioned-shared-lib-on-win32.patch"
|
||||
patch -p1 -i "${srcdir}/0005-add-pthread-as-system-lib-for-mingw.patch"
|
||||
patch -p1 -i "${srcdir}/0009-empty-target-prefix-only-msvc.patch"
|
||||
patch -p1 -i "${srcdir}/0010-mbig-obj-for-all.patch"
|
||||
|
||||
# https://bugs.llvm.org/show_bug.cgi?id=25493
|
||||
patch -p1 -i "${srcdir}/0006-add-coff-exported-flag.patch"
|
||||
@@ -178,6 +183,7 @@ prepare() {
|
||||
patch -p1 -i "${srcdir}/0104-link-pthread-with-mingw.patch"
|
||||
patch -p1 -i "${srcdir}/0105-use-emulated-tls-with-mingw.patch"
|
||||
patch -p1 -i "${srcdir}/0106-MinGW-use-flto-visibility-public-std-CC1-arg-to-get-.patch"
|
||||
patch -p1 -i "${srcdir}/0107-z3-fixes.patch"
|
||||
|
||||
cd "${srcdir}/compiler-rt-${pkgver}.src"
|
||||
patch -p1 -i "${srcdir}/0201-mingw-w64-__udivdi3-mangle-hack.patch"
|
||||
@@ -266,29 +272,28 @@ build() {
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -D_GNU_SOURCE" \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
-DLLVM_TARGETS_TO_BUILD="ARM;NVPTX;X86" \
|
||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||
-DLLVM_ENABLE_THREADS=ON \
|
||||
-DPYTHON_EXECUTABLE=${MINGW_PREFIX}/bin/python2.exe \
|
||||
-DLLVM_ENABLE_FFI=ON \
|
||||
-DLLVM_ENABLE_SPHINX=ON \
|
||||
-DLLVM_BUILD_LLVM_DYLIB=ON \
|
||||
-DLLVM_LINK_LLVM_DYLIB=OFF \
|
||||
-DCLANG_ANALYZER_BUILD_Z3=ON \
|
||||
-DLIBCLANG_BUILD_STATIC=ON \
|
||||
-DLIBCXX_ENABLE_SHARED=OFF \
|
||||
-DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF \
|
||||
-DLIBCXXABI_ENABLE_SHARED=OFF \
|
||||
-DLIBUNWIND_ENABLE_SHARED=OFF \
|
||||
-DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF \
|
||||
-DLLVM_TARGETS_TO_BUILD="ARM;NVPTX;X86" \
|
||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||
-DLLVM_ENABLE_FFI=ON \
|
||||
-DLLVM_ENABLE_THREADS=ON \
|
||||
-DLLVM_ENABLE_SPHINX=ON \
|
||||
-DLLVM_BUILD_LLVM_DYLIB=ON \
|
||||
-DLLVM_BUILD_STATIC=OFF \
|
||||
-DLLVM_LINK_LLVM_DYLIB=OFF \
|
||||
-DLLVM_POLLY_LINK_INTO_TOOLS=OFF \
|
||||
-DCLANG_ANALYZER_BUILD_Z3=ON \
|
||||
-DLLDB_RELOCATABLE_PYTHON=ON \
|
||||
-DLLDB_USE_SYSTEM_SIX=ON \
|
||||
-DLLDB_DISABLE_PYTHON=ON \
|
||||
-DPYTHON_EXECUTABLE=${MINGW_PREFIX}/bin/python2.exe \
|
||||
"${extra_config[@]}" \
|
||||
../llvm-${pkgver}.src
|
||||
|
||||
#-DLLVM_BUILD_STATIC=ON
|
||||
|
||||
make ${VERBOSE}
|
||||
|
||||
# Disable automatic installation of components that go into subpackages
|
||||
|
||||
Reference in New Issue
Block a user