summaryrefslogtreecommitdiff
path: root/extra/ruby
diff options
context:
space:
mode:
Diffstat (limited to 'extra/ruby')
-rw-r--r--extra/ruby/PKGBUILD22
-rw-r--r--extra/ruby/disable_sse2_on_i686.patch27
2 files changed, 43 insertions, 6 deletions
diff --git a/extra/ruby/PKGBUILD b/extra/ruby/PKGBUILD
index d2885050b..94768c1e1 100644
--- a/extra/ruby/PKGBUILD
+++ b/extra/ruby/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=('ruby' 'ruby-docs')
pkgver=2.1.1
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url='http://www.ruby-lang.org/en/'
license=('BSD' 'custom')
@@ -16,18 +16,28 @@ makedepends=('gdbm' 'openssl' 'libffi' 'doxygen' 'graphviz' 'libyaml') # 'tk'
options=('!emptydirs' '!makeflags' 'staticlibs')
source=("http://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.bz2"
'gemrc'
+ 'disable_sse2_on_i686.patch'
'0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch')
-md5sums=('53edc33b2f590ecdd9f6a344b9d92d0d'
- '6fb8e7a09955e0f64be3158fb4a27e7a'
- '0496e962e0ce11507b7577a8eb93af58')
+sha1sums=('a7fd539f64864bc00fc64444d2d814df6c19fd4a'
+ 'de4b760b7e2cd9af88ca67536ce37b950f1ee514'
+ '92592bca7e4bbe760202b1bc356a8e3a1a9446b5'
+ '52e10cb0577c1281c664e0f34b51053ef7644f33')
-build() {
+
+prepare() {
cd ruby-${pkgver}
# readline 6.3 doesn't define Function anymore
# https://bugs.ruby-lang.org/issues/9578
patch -Np1 -i ${srcdir}/0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch
+ # FS#39470
+ patch -Np1 -i ${srcdir}/disable_sse2_on_i686.patch
+}
+
+build() {
+ cd ruby-${pkgver}
+
PKG_CONFIG=/usr/bin/pkg-config ./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -46,7 +56,7 @@ check() {
package_ruby() {
pkgdesc='An object-oriented language for quick and easy programming'
- depends=('gdbm' 'openssl' 'libffi' 'libyaml')
+ depends=('gdbm' 'openssl' 'libffi' 'libyaml' 'gmp' 'zlib')
optdepends=('ruby-docs: Ruby documentation') # 'tk: for Ruby/TK'
provides=('rubygems' 'rake')
conflicts=('rake')
diff --git a/extra/ruby/disable_sse2_on_i686.patch b/extra/ruby/disable_sse2_on_i686.patch
new file mode 100644
index 000000000..45eda4484
--- /dev/null
+++ b/extra/ruby/disable_sse2_on_i686.patch
@@ -0,0 +1,27 @@
+diff --git a/configure.in b/configure.in
+index e952cc7..e5f86cc 100644
+--- a/configure.in
++++ b/configure.in
+@@ -868,22 +868,6 @@ if test "$GCC" = yes; then
+ for oflag in -fno-fast-math; do
+ RUBY_TRY_CFLAGS($oflag, [RUBY_APPEND_OPTION(optflags, $oflag)])
+ done
+- AS_CASE(["$target"],
+- [*-darwin*], [
+- # doesn't seem necessary on Mac OS X
+- ],
+- [[i[4-6]86*]], [
+- RUBY_TRY_CFLAGS(-msse2 -mfpmath=sse, [
+- RUBY_APPEND_OPTION(XCFLAGS, -msse2 -mfpmath=sse)
+- ])
+- AS_CASE(["$XCFLAGS"],
+- [[*-msse2*]], [
+- RUBY_TRY_CFLAGS(-mstackrealign, [
+- RUBY_APPEND_OPTION(XCFLAGS, -mstackrealign)
+- ])
+- ])
+- ]
+- )
+ fi
+
+ AC_ARG_WITH(opt-dir,