[arch-commits] Commit in rust/trunk (2 files)

Johannes Löthberg demize at archlinux.org
Mon Mar 20 20:34:43 UTC 2017


    Date: Monday, March 20, 2017 @ 20:34:42
  Author: demize
Revision: 217771

upgpkg: rust 1:1.16.0-1

Added:
  rust/trunk/0001-liballoc_jemalloc-fix-linking-with-system-library.patch
Modified:
  rust/trunk/PKGBUILD

--------------------------------------------------------------+
 0001-liballoc_jemalloc-fix-linking-with-system-library.patch |   41 ++++++++++
 PKGBUILD                                                     |   40 ++++++---
 2 files changed, 66 insertions(+), 15 deletions(-)

Added: 0001-liballoc_jemalloc-fix-linking-with-system-library.patch
===================================================================
--- 0001-liballoc_jemalloc-fix-linking-with-system-library.patch	                        (rev 0)
+++ 0001-liballoc_jemalloc-fix-linking-with-system-library.patch	2017-03-20 20:34:42 UTC (rev 217771)
@@ -0,0 +1,41 @@
+From 781561a6f26008a49572e156f80b577d6af60262 Mon Sep 17 00:00:00 2001
+From: Tatsuyuki Ishi <ishitatsuyuki at gmail.com>
+Date: Fri, 3 Feb 2017 16:15:34 +0900
+Subject: [PATCH] liballoc_jemalloc: fix linking with system library
+
+---
+ src/liballoc_jemalloc/build.rs | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/src/liballoc_jemalloc/build.rs b/src/liballoc_jemalloc/build.rs
+index 1143df0c63..297f5ce99f 100644
+--- a/src/liballoc_jemalloc/build.rs
++++ b/src/liballoc_jemalloc/build.rs
+@@ -42,6 +42,12 @@ fn main() {
+         return;
+     }
+ 
++    if target.contains("android") {
++        println!("cargo:rustc-link-lib=gcc");
++    } else if !target.contains("windows") && !target.contains("musl") {
++        println!("cargo:rustc-link-lib=pthread");
++    }
++
+     if let Some(jemalloc) = env::var_os("JEMALLOC_OVERRIDE") {
+         let jemalloc = PathBuf::from(jemalloc);
+         println!("cargo:rustc-link-search=native={}",
+@@ -176,11 +182,6 @@ fn main() {
+         println!("cargo:rustc-link-lib=static=jemalloc_pic");
+     }
+     println!("cargo:rustc-link-search=native={}/lib", build_dir.display());
+-    if target.contains("android") {
+-        println!("cargo:rustc-link-lib=gcc");
+-    } else if !target.contains("windows") && !target.contains("musl") {
+-        println!("cargo:rustc-link-lib=pthread");
+-    }
+ 
+     // The pthread_atfork symbols is used by jemalloc on android but the really
+     // old android we're building on doesn't have them defined, so just make
+-- 
+2.12.0
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-03-20 20:34:34 UTC (rev 217770)
+++ PKGBUILD	2017-03-20 20:34:42 UTC (rev 217771)
@@ -1,25 +1,38 @@
 # $Id$
-# Maintainer: Alexander F Rødseth <xyproto at archlinux.org>
+# Maintainer: Johannes Löthberg <johannes at kyriasis.com>
+# Contributor: Alexander F Rødseth <xyproto at archlinux.org>
 # Contributor: Daniel Micay <danielmicay at gmail.com>
 # Contributor: userwithuid <userwithuid at gmail.com>
 
 pkgname=('rust' 'rust-docs')
 epoch=1
-pkgver=1.15.1
+pkgver=1.16.0
 pkgrel=1
-arch=('x86_64' 'i686')
+
 pkgdesc='Systems programming language focused on safety, speed and concurrency'
 url='https://www.rust-lang.org/'
-groups=('rust')
+arch=('x86_64' 'i686')
 license=('MIT' 'Apache')
-makedepends=('libffi' 'perl' 'python2' 'curl' 'llvm' 'cmake' 'ninja' 'jemalloc')
-source=("https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz"{,.asc})
-sha256sums=('2e7daad418a830b45b977cd7ecf181b65f30f73df63ff36e124ea5fe5d1af327'
-            'SKIP')
-options=('staticlibs' '!strip' '!emptydirs')
+
+makedepends=('libffi' 'perl' 'python2' 'curl' 'llvm' 'jemalloc')
+
+options=('!emptydirs')
+
+source=("https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz"{,.asc}
+        0001-liballoc_jemalloc-fix-linking-with-system-library.patch)
+
+sha256sums=('f966b31eb1cd9bd2df817c391a338eeb5b9253ae0a19bf8a11960c560f96e8b4'
+            'SKIP'
+            'b61d9aae58925b222cd44d7b41f0aa648fde89a48e7772aa659acd0d74dde612')
 validpgpkeys=('108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE') # Rust Language (Tag and Release Signing Key) <rust-key at rust-lang.org>
-#gpg --keyserver hkp://keys.gnupg.net --recv-keys 108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE
 
+prepare() {
+  cd "rustc-$pkgver-src"
+
+  # Backport of https://github.com/rust-lang/rust/pull/39481
+  patch -p1 <"$srcdir"/0001-liballoc_jemalloc-fix-linking-with-system-library.patch
+}
+
 build() {
   cd "rustc-$pkgver-src"
 
@@ -26,16 +39,13 @@
   ./configure \
     --prefix=/usr \
     --release-channel=stable \
-    --enable-ninja \
     --llvm-root=/usr \
     --disable-codegen-tests \
-    --jemalloc-root=/usr/lib \
-    --disable-rustbuild
+    --jemalloc-root=/usr/lib
 
   export RUSTFLAGS="$RUSTFLAGS -C link-args=-lffi"
-  export CFLAGS="$CFLAGS -fPIC -w"
 
-  make
+  python2 ./x.py build --verbose
 }
 
 package_rust() {


More information about the arch-commits mailing list