[arch-commits] Commit in rubinius/trunk (2 files)
Jan Steffens
heftig at archlinux.org
Sat Apr 18 00:31:20 UTC 2015
Date: Saturday, April 18, 2015 @ 02:31:20
Author: heftig
Revision: 131603
repair llvm linking
Added:
rubinius/trunk/0001-Allow-shared-linking-to-LLVM-3.5.patch
Modified:
rubinius/trunk/PKGBUILD
---------------------------------------------+
0001-Allow-shared-linking-to-LLVM-3.5.patch | 102 ++++++++++++++++++++++++++
PKGBUILD | 10 +-
2 files changed, 109 insertions(+), 3 deletions(-)
Added: 0001-Allow-shared-linking-to-LLVM-3.5.patch
===================================================================
--- 0001-Allow-shared-linking-to-LLVM-3.5.patch (rev 0)
+++ 0001-Allow-shared-linking-to-LLVM-3.5.patch 2015-04-18 00:31:20 UTC (rev 131603)
@@ -0,0 +1,102 @@
+From 4fd2b3dc1395e838d5e77de4b551063d5849deaa Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens at gmail.com>
+Date: Fri, 6 Mar 2015 20:45:47 +0100
+Subject: [PATCH] Allow shared linking to LLVM 3.5
+
+Run check_llvm_flags before checking for shared libs and use the
+calculated flags there.
+---
+ configure | 53 +++++++++++++++++++++++------------------------------
+ 1 file changed, 23 insertions(+), 30 deletions(-)
+
+diff --git a/configure b/configure
+index fabb2d3..3a35743 100755
+--- a/configure
++++ b/configure
+@@ -563,15 +563,6 @@ class Configure
+ return false
+ end
+
+- if setup_config
+- check_llvm_flags
+- return true
+- end
+-
+- failure "ABORT: unable to set up LLVM"
+- end
+-
+- def setup_config
+ @log.print " Checking for 'llvm-config': "
+
+ config = @llvm_configure
+@@ -602,36 +593,38 @@ class Configure
+ # Ruby 1.9 raises this error
+ failed = true
+ end
+- if failed
+- @log.write "Executing #{config_cmd.inspect} failed"
+- return false
+- end
+
+- parts = version.sub(/svn$/, "").split(".").map { |i| i.to_i }
+- api_version = ("%d%02d" % parts[0..1]).to_i
+- if api_version < 300 or api_version > 305
+- @log.write "only LLVM 3.0-3.5 is supported"
+- else
+- @log.write "found! (version #{version} - api: #{api_version})"
+- @llvm = :config
+- @llvm_configure = config_cmd
+- @llvm_version = version
+- @llvm_api_version = api_version
++ unless failed
++ parts = version.sub(/svn$/, "").split(".").map { |i| i.to_i }
++ api_version = ("%d%02d" % parts[0..1]).to_i
++ if api_version < 300 or api_version > 305
++ @log.write "only LLVM 3.0-3.5 is supported"
++ else
++ @log.write "found! (version #{version} - api: #{api_version})"
++ @llvm = :config
++ @llvm_configure = config_cmd
++ @llvm_version = version
++ @llvm_api_version = api_version
+
+- if @llvm_shared
+- setup_config_shared
++ check_llvm_flags
++
++ if @llvm_shared
++ setup_llvm_shared
++ end
++
++ return true
+ end
+-
+- return true
++ else
++ @log.write "executing #{config_cmd.inspect} failed"
+ end
+ else
+ @log.write "not found"
+ end
+
+- false
++ failure "ABORT: unable to set up LLVM"
+ end
+
+- def setup_config_shared
++ def setup_llvm_shared
+ @log.print " Checking for LLVM shared libs: "
+
+ src = <<-EOP
+@@ -640,7 +633,7 @@ using namespace llvm;
+ int main() { LLVMContext &Context = getGlobalContext(); }
+ EOP
+
+- common_args = `#{@llvm_configure} --cppflags --ldflags`.strip.split(/\s+/)
++ common_args = "`#{@llvm_configure} --cppflags` #{@llvm_cxxflags} #{@llvm_ldflags}".strip.split(/\s+/)
+ shared_configs = {
+ "libLLVM-#{@llvm_version}" => ["-lLLVM-#{@llvm_version}"],
+ "#{@llvm_configure} --libs" => `#{@llvm_configure} --libs`.strip.split(/\s+/)
+--
+2.3.5
+
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2015-04-17 21:38:28 UTC (rev 131602)
+++ PKGBUILD 2015-04-18 00:31:20 UTC (rev 131603)
@@ -4,17 +4,19 @@
pkgbase=rubinius
pkgname=(rubinius rubinius-ruby)
pkgver=2.5.1
-pkgrel=3
+pkgrel=4
pkgdesc="Ruby runtime written in Ruby, designed for concurrency"
arch=(i686 x86_64)
url="http://rubini.us"
license=(custom)
-depends=(llvm-libs libffi openssl libyaml)
-makedepends=(llvm rubinius-ruby)
+depends=(llvm35-libs libffi openssl libyaml)
+makedepends=(llvm35 rubinius-ruby)
options=(!emptydirs)
source=(http://releases.rubini.us/${pkgbase}-${pkgver}.tar.bz2
+ 0001-Allow-shared-linking-to-LLVM-3.5.patch
gemrc dirs.patch)
sha256sums=('00d6f23b7632d035d322209e736a9341155350a9d169e8471d38a554a8e26600'
+ 'e5b1c56e18bce8589d30ee8181128eccec6c3cbacb82f52f5cb4614407d8192a'
'4bb7eb2fe66e396ed16b589cdb656831407b39ad4e138d88536754c0448ac614'
'a9922b199730c059c26781af45adc46401811ff2e6840c4aeb49da4fa41acdd9')
@@ -22,6 +24,7 @@
export GEM_HOME="$srcdir/gemdir" LANG="en_US.UTF-8"
cd $pkgbase-$pkgver
+ patch -Np1 -i ../0001-Allow-shared-linking-to-LLVM-3.5.patch
patch -Np1 -i ../dirs.patch
mkdir -p "$GEM_HOME"
@@ -39,6 +42,7 @@
--includedir=/usr/include/rubinius \
--appdir=/usr/lib/rubinius \
--gemsdir=/usr/lib/rubinius/gems \
+ --llvm-shared \
--preserve-prefix \
--without-rpath \
--bin-link bundle --bin-link bundler
More information about the arch-commits
mailing list