summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSolomon Choina2018-10-06 09:33:21 -0400
committerSolomon Choina2018-10-06 09:33:21 -0400
commitc7ffd10a6da81244abbc5d05b69fd56e6a52b963 (patch)
treed0c241133881ede1d7bfbf71b783785dbf51e05d
parentf228da8655d8c581e579cd94483c72fe25a97130 (diff)
downloadaur-c7ffd10a6da81244abbc5d05b69fd56e6a52b963.tar.gz
fixing package
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD20
-rw-r--r--glibc.diff32
3 files changed, 48 insertions, 8 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b6a76d8856e9..fafadb3d28e4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = llvm50
pkgver = 5.0.2
- pkgrel = 4
+ pkgrel = 5
url = http://llvm.org/
arch = i686
arch = x86_64
@@ -20,6 +20,7 @@ pkgbase = llvm50
source = 0002-Enable-SSP-and-PIE-by-default.patch
source = disable-llvm-symbolizer-test.patch
source = gcc-build-fix.patch
+ source = glibc.diff
sha256sums = d522eda97835a9c75f0b88ddc81437e5edbb87dc2740686cb8647763855c2b3c
sha256sums = fa9ce9724abdb68f166deea0af1f71ca0dfa9af8f7e1261f2cae63c280282800
sha256sums = 3efe9ddf3f69e0c0a45cde57ee93911f36f3ab5f2a7f6ab8c8efb3db9b24ed46
@@ -27,6 +28,7 @@ pkgbase = llvm50
sha256sums = 186f2d10b013395f2dd6e1fd3baf4961a2e40c403f115517c9b253682934f50f
sha256sums = 6fff47ab5ede79d45fe64bb4903b7dfc27212a38e6cd5d01e60ebd24b7557359
sha256sums = 2e707016fef45434f48c06326c968c11e08445eeb37c53cf55ac592c08262577
+ sha256sums = 4f9e747b4c79f1357ae885f81ef1115e7144ba553dabd0484e87bc5ea69cb0b4
makedepends_x86_64 = gcc-multilib
pkgname = llvm50
diff --git a/PKGBUILD b/PKGBUILD
index 207990d59717..efd0681e3e8e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,7 +12,7 @@
pkgname=('llvm50' 'llvm50-libs' 'clang50')
pkgver=5.0.2
-pkgrel=4
+pkgrel=5
_prefix="/usr/lib/llvm-5.0"
arch=('i686' 'x86_64')
url="http://llvm.org/"
@@ -26,14 +26,16 @@ source=(https://releases.llvm.org/$pkgver/llvm-$pkgver.src.tar.xz
0001-GCC-compatibility-Ignore-the-fno-plt-flag.patch
0002-Enable-SSP-and-PIE-by-default.patch
disable-llvm-symbolizer-test.patch
- gcc-build-fix.patch)
+ gcc-build-fix.patch
+ glibc.diff)
sha256sums=('d522eda97835a9c75f0b88ddc81437e5edbb87dc2740686cb8647763855c2b3c'
'fa9ce9724abdb68f166deea0af1f71ca0dfa9af8f7e1261f2cae63c280282800'
'3efe9ddf3f69e0c0a45cde57ee93911f36f3ab5f2a7f6ab8c8efb3db9b24ed46'
'a1ba7fb859ac157c4b4342435cd656e29b1e1d9bddcb8ae0158a91c0a8ba6203'
'186f2d10b013395f2dd6e1fd3baf4961a2e40c403f115517c9b253682934f50f'
'6fff47ab5ede79d45fe64bb4903b7dfc27212a38e6cd5d01e60ebd24b7557359'
- '2e707016fef45434f48c06326c968c11e08445eeb37c53cf55ac592c08262577')
+ '2e707016fef45434f48c06326c968c11e08445eeb37c53cf55ac592c08262577'
+ '4f9e747b4c79f1357ae885f81ef1115e7144ba553dabd0484e87bc5ea69cb0b4')
prepare() {
cd "$srcdir/llvm-$pkgver.src"
@@ -50,6 +52,8 @@ prepare() {
patch -Np1 -d tools/clang <../0001-GCC-compatibility-Ignore-the-fno-plt-flag.patch
patch -Np1 -d tools/clang <../0002-Enable-SSP-and-PIE-by-default.patch
patch -Np1 -i ../gcc-build-fix.patch
+ patch -Np1 -i ../glibc.diff
+
}
build() {
@@ -71,7 +75,9 @@ build() {
-DLLVM_BINUTILS_INCDIR=/usr/include
make all
- make ocaml_all
+ cd docs
+ make ocaml_doc
+ cd ..
# Disable automatic installation of components that go into subpackages
sed -i '/clang\/cmake_install.cmake/d' tools/cmake_install.cmake
@@ -117,10 +123,10 @@ package_llvm50-libs() {
"$srcdir"/lib{LLVM,LTO}*.so* \
"$srcdir"/LLVMgold.so \
"${pkgdir}${_prefix}/lib/"
-
+
install -d $pkgdir/usr/lib
- cd ${pkgdir}${_prefix}/lib/
- ln -s lib{LLVM,LTO}*.so* $pkgdir/usr/lib
+ cd ${pkgdir}/usr/lib/
+ ln -s llvm-5.0/lib/lib{LLVM,LTO}*.so* ./
rm $pkgdir/usr/lib/lib{LLVM,LTO}.so
install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \
diff --git a/glibc.diff b/glibc.diff
new file mode 100644
index 000000000000..133d4c2e1ede
--- /dev/null
+++ b/glibc.diff
@@ -0,0 +1,32 @@
+diff -aur llvm-5.0.2.src.old/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc llvm-5.0.2.src.new/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
+--- llvm-5.0.2.src.old/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc 2018-09-20 16:22:48.828377892 +0200
++++ llvm-5.0.2.src.new/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc 2018-09-20 16:23:32.361128588 +0200
+@@ -159,7 +159,6 @@
+ # include <sys/procfs.h>
+ #endif
+ #include <sys/user.h>
+-#include <sys/ustat.h>
+ #include <linux/cyclades.h>
+ #include <linux/if_eql.h>
+ #include <linux/if_plip.h>
+@@ -251,7 +251,19 @@
+ #endif // SANITIZER_LINUX || SANITIZER_FREEBSD
+
+ #if SANITIZER_LINUX && !SANITIZER_ANDROID
+- unsigned struct_ustat_sz = sizeof(struct ustat);
++// Use pre-computed size of struct ustat to avoid <sys/ustat.h> which
++// has been removed from glibc 2.28.
++#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \
++ || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \
++ || defined(__x86_64__)
++#define SIZEOF_STRUCT_USTAT 32
++#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \
++ || defined(__powerpc__) || defined(__s390__)
++#define SIZEOF_STRUCT_USTAT 20
++#else
++#error Unknown size of struct ustat
++#endif
++ unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT;
+ unsigned struct_rlimit64_sz = sizeof(struct rlimit64);
+ unsigned struct_statvfs64_sz = sizeof(struct statvfs64);
+ #endif // SANITIZER_LINUX && !SANITIZER_ANDROID