extra/llvm to 3.4.2-1

This commit is contained in:
Kevin Mihelich 2014-06-17 00:42:18 +00:00
parent 989146eff5
commit 9ca908d26f
2 changed files with 11 additions and 50 deletions

View file

@ -14,9 +14,9 @@
pkgname=('llvm' 'llvm-libs' 'llvm-ocaml' 'clang' 'clang-analyzer' pkgname=('llvm' 'llvm-libs' 'llvm-ocaml' 'clang' 'clang-analyzer'
'clang-tools-extra') 'clang-tools-extra')
pkgver=3.4.1 pkgver=3.4.2
_base_ver=3.4 _base_ver=3.4
pkgrel=2 pkgrel=1
arch=('i686' 'x86_64') arch=('i686' 'x86_64')
url="http://llvm.org/" url="http://llvm.org/"
license=('custom:University of Illinois/NCSA Open Source License') license=('custom:University of Illinois/NCSA Open Source License')
@ -27,21 +27,19 @@ source=(http://llvm.org/releases/$pkgver/llvm-$pkgver.src.tar.gz{,.sig}
http://llvm.org/releases/$_base_ver/clang-tools-extra-$_base_ver.src.tar.gz{,.sig} http://llvm.org/releases/$_base_ver/clang-tools-extra-$_base_ver.src.tar.gz{,.sig}
http://llvm.org/releases/$_base_ver/compiler-rt-$_base_ver.src.tar.gz{,.sig} http://llvm.org/releases/$_base_ver/compiler-rt-$_base_ver.src.tar.gz{,.sig}
clang-3.3-use-gold-linker.patch clang-3.3-use-gold-linker.patch
clang-3.4-max_align_t.patch
clang-3.4-fstack-protector-strong.patch clang-3.4-fstack-protector-strong.patch
llvm-3.4-provide-cmake-modules.patch llvm-3.4-provide-cmake-modules.patch
llvm-Config-config.h llvm-Config-config.h
llvm-Config-llvm-config.h) llvm-Config-llvm-config.h)
sha256sums=('7d28bb6eca243a2bb6d65a05743ab915b57958a7770277364e93534b63eef93a' sha256sums=('17038d47069ad0700c063caed76f0c7259628b0e79651ce2b540d506f2f1efd7'
'SKIP' 'SKIP'
'ab83f30951b34d75729026e0e73c180a728a140f2a02cbb8915805051a9d6bb7' '5ba6f5772f8d00f445209356a7daf83c5bca2da5acd10de517ad2359ae95bc10'
'SKIP' 'SKIP'
'ba85187551ae97fe1c8ab569903beae5ff0900e21233e5eb5389f6ceab1028b4' 'ba85187551ae97fe1c8ab569903beae5ff0900e21233e5eb5389f6ceab1028b4'
'SKIP' 'SKIP'
'f37c89b1383ce462d47537a0245ac798600887a9be9f63073e16b79ed536ab5c' 'f37c89b1383ce462d47537a0245ac798600887a9be9f63073e16b79ed536ab5c'
'SKIP' 'SKIP'
'8240adda155d7961eeb5d07ed50ead10cb7125f70283dff7f1c9fee9df3cea09' '8240adda155d7961eeb5d07ed50ead10cb7125f70283dff7f1c9fee9df3cea09'
'0f0cbff69af54e83383385abbdeb1fee23e6e69427f8530060c492c0b07c2bbe'
'7a2a1ddc94f67e643c1ab74601ec07deb6d5d344d4b19ed17c900afb2f6f2863' '7a2a1ddc94f67e643c1ab74601ec07deb6d5d344d4b19ed17c900afb2f6f2863'
'b6bb154d5ec998328e818bb09acfc6229e41367ba45cea7cc5b2dd2a7c835cf5' 'b6bb154d5ec998328e818bb09acfc6229e41367ba45cea7cc5b2dd2a7c835cf5'
'312574e655f9a87784ca416949c505c452b819fad3061f2cde8aced6540a19a3' '312574e655f9a87784ca416949c505c452b819fad3061f2cde8aced6540a19a3'
@ -70,10 +68,6 @@ prepare() {
# Make -flto work; use ld.gold instead of the default linker # Make -flto work; use ld.gold instead of the default linker
patch -d tools/clang -Np1 -i "$srcdir/clang-3.3-use-gold-linker.patch" patch -d tools/clang -Np1 -i "$srcdir/clang-3.3-use-gold-linker.patch"
# Teach Clang to provide ::max_align_t in C11 and C++11 modes (FS#40229)
# http://reviews.llvm.org/rL201729
patch -d tools/clang -Np0 -i "$srcdir/clang-3.4-max_align_t.patch"
# Add command line option -fstack-protector-strong # Add command line option -fstack-protector-strong
# http://reviews.llvm.org/rL201120 # http://reviews.llvm.org/rL201120
#patch -d tools/clang -Np0 -i "$srcdir/clang-3.4-fstack-protector-strong.patch" #patch -d tools/clang -Np0 -i "$srcdir/clang-3.4-fstack-protector-strong.patch"
@ -134,8 +128,8 @@ package_llvm() {
mv "$srcdir/clang" tools mv "$srcdir/clang" tools
# The runtime library goes into llvm-libs # The runtime library goes into llvm-libs
mv "$pkgdir/usr/lib/libLLVM-$pkgver.so" "$srcdir" mv "$pkgdir/usr/lib/libLLVM-$pkgver.so" "$srcdir/"
rm "$pkgdir/usr/lib/libLLVM-$_base_ver.so" mv "$pkgdir/usr/lib/libLLVM-$_base_ver.so" "$srcdir/"
# OCaml bindings go to a separate package # OCaml bindings go to a separate package
rm -rf "$srcdir"/{ocaml,ocamldoc} rm -rf "$srcdir"/{ocaml,ocamldoc}
@ -180,8 +174,11 @@ package_llvm-libs() {
pkgdesc="Low Level Virtual Machine (runtime library)" pkgdesc="Low Level Virtual Machine (runtime library)"
depends=('gcc-libs' 'zlib' 'libffi' 'ncurses') depends=('gcc-libs' 'zlib' 'libffi' 'ncurses')
install -D "$srcdir/libLLVM-$pkgver.so" "$pkgdir/usr/lib/libLLVM-$pkgver.so" install -d "$pkgdir/usr/lib"
ln -s libLLVM-$pkgver.so "$pkgdir/usr/lib/libLLVM-$_base_ver.so" cp -P \
"$srcdir/libLLVM-$pkgver.so" \
"$srcdir/libLLVM-$_base_ver.so" \
"$pkgdir/usr/lib/"
install -Dm644 "$srcdir/llvm-$pkgver/LICENSE.TXT" \ install -Dm644 "$srcdir/llvm-$pkgver/LICENSE.TXT" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"

View file

@ -1,36 +0,0 @@
Index: lib/Headers/stddef.h
===================================================================
--- lib/Headers/stddef.h (revision 201728)
+++ lib/Headers/stddef.h (revision 201729)
@@ -84,6 +84,16 @@
#endif
#endif
+#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L
+typedef struct {
+ long long __clang_max_align_nonce1
+ __attribute__((__aligned__(__alignof__(long long))));
+ long double __clang_max_align_nonce2
+ __attribute__((__aligned__(__alignof__(long double))));
+} max_align_t;
+#define __CLANG_MAX_ALIGN_T_DEFINED
+#endif
+
#define offsetof(t, d) __builtin_offsetof(t, d)
#endif /* __STDDEF_H */
Index: test/Headers/c11.c
===================================================================
--- test/Headers/c11.c (revision 201728)
+++ test/Headers/c11.c (revision 201729)
@@ -22,6 +22,10 @@
#define __STDC_WANT_LIB_EXT1__ 1
#include <stddef.h>
rsize_t x = 0;
+_Static_assert(sizeof(max_align_t) >= sizeof(long long), "");
+_Static_assert(alignof(max_align_t) >= alignof(long long), "");
+_Static_assert(sizeof(max_align_t) >= sizeof(long double), "");
+_Static_assert(alignof(max_align_t) >= alignof(long double), "");
// If we are freestanding, then also check RSIZE_MAX (in a hosted implementation
// we will use the host stdint.h, which may not yet have C11 support).