summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2021-10-02 20:30:41 +0100
committerSam James <sam@gentoo.org>2021-10-02 20:31:01 +0100
commit4cbfbfe255fc82a05f0a9d3ecdf6e8dce7d9a4ee (patch)
treefe1c69f5522abd448cefa4e1cef670e3d020d9f0 /dev-ruby/ffi
parentapp-misc/mc: Removed unused USE flag description (diff)
downloadgentoo-4cbfbfe255fc82a05f0a9d3ecdf6e8dce7d9a4ee.tar.gz
gentoo-4cbfbfe255fc82a05f0a9d3ecdf6e8dce7d9a4ee.tar.bz2
gentoo-4cbfbfe255fc82a05f0a9d3ecdf6e8dce7d9a4ee.zip
dev-ruby/ffi: fix 32-bit test failure
Thanks-to: Tee KOBAYASHI <xtkoba@gmail.com> Closes: https://bugs.gentoo.org/815130 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-ruby/ffi')
-rw-r--r--dev-ruby/ffi/ffi-1.14.2-r1.ebuild (renamed from dev-ruby/ffi/ffi-1.14.2.ebuild)4
-rw-r--r--dev-ruby/ffi/ffi-1.15.1-r1.ebuild (renamed from dev-ruby/ffi/ffi-1.15.1.ebuild)8
-rw-r--r--dev-ruby/ffi/ffi-1.15.3-r1.ebuild (renamed from dev-ruby/ffi/ffi-1.15.3.ebuild)8
-rw-r--r--dev-ruby/ffi/ffi-1.15.4-r1.ebuild (renamed from dev-ruby/ffi/ffi-1.15.4.ebuild)8
-rw-r--r--dev-ruby/ffi/files/ffi-1.14.2-32bit-long-double.patch19
5 files changed, 41 insertions, 6 deletions
diff --git a/dev-ruby/ffi/ffi-1.14.2.ebuild b/dev-ruby/ffi/ffi-1.14.2-r1.ebuild
index 38868b674422..450411f52e92 100644
--- a/dev-ruby/ffi/ffi-1.14.2.ebuild
+++ b/dev-ruby/ffi/ffi-1.14.2-r1.ebuild
@@ -31,6 +31,10 @@ DEPEND+=" dev-libs/libffi"
ruby_add_bdepend "dev-ruby/rake"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.2-32bit-long-double.patch
+)
+
all_ruby_prepare() {
sed -i -e '/tasks/ s:^:#:' \
-e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
diff --git a/dev-ruby/ffi/ffi-1.15.1.ebuild b/dev-ruby/ffi/ffi-1.15.1-r1.ebuild
index 244b9737ea49..76ba9f8c1a8d 100644
--- a/dev-ruby/ffi/ffi-1.15.1.ebuild
+++ b/dev-ruby/ffi/ffi-1.15.1-r1.ebuild
@@ -26,11 +26,15 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-RDEPEND+=" dev-libs/libffi:0="
-DEPEND+=" dev-libs/libffi"
+RDEPEND+=" dev-libs/libffi:="
+DEPEND+=" dev-libs/libffi:="
ruby_add_bdepend "dev-ruby/rake"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.2-32bit-long-double.patch
+)
+
all_ruby_prepare() {
sed -i -e '/tasks/ s:^:#:' \
-e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
diff --git a/dev-ruby/ffi/ffi-1.15.3.ebuild b/dev-ruby/ffi/ffi-1.15.3-r1.ebuild
index 92b209d828be..67d86c924a08 100644
--- a/dev-ruby/ffi/ffi-1.15.3.ebuild
+++ b/dev-ruby/ffi/ffi-1.15.3-r1.ebuild
@@ -26,11 +26,15 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-RDEPEND+=" dev-libs/libffi:0="
-DEPEND+=" dev-libs/libffi"
+RDEPEND+=" dev-libs/libffi:="
+DEPEND+=" dev-libs/libffi:="
ruby_add_bdepend "dev-ruby/rake"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.2-32bit-long-double.patch
+)
+
all_ruby_prepare() {
sed -i -e '/tasks/ s:^:#:' \
-e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
diff --git a/dev-ruby/ffi/ffi-1.15.4.ebuild b/dev-ruby/ffi/ffi-1.15.4-r1.ebuild
index d79112dff229..dc92b96f4e08 100644
--- a/dev-ruby/ffi/ffi-1.15.4.ebuild
+++ b/dev-ruby/ffi/ffi-1.15.4-r1.ebuild
@@ -26,11 +26,15 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-RDEPEND+=" dev-libs/libffi:0="
-DEPEND+=" dev-libs/libffi"
+RDEPEND+=" dev-libs/libffi:="
+DEPEND+=" dev-libs/libffi:="
ruby_add_bdepend "dev-ruby/rake"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.2-32bit-long-double.patch
+)
+
all_ruby_prepare() {
sed -i -e '/tasks/ s:^:#:' \
-e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
diff --git a/dev-ruby/ffi/files/ffi-1.14.2-32bit-long-double.patch b/dev-ruby/ffi/files/ffi-1.14.2-32bit-long-double.patch
new file mode 100644
index 000000000000..7373a8c28cda
--- /dev/null
+++ b/dev-ruby/ffi/files/ffi-1.14.2-32bit-long-double.patch
@@ -0,0 +1,19 @@
+https://bugs.gentoo.org/815130
+https://github.com/ffi/ffi/commit/315d66e7b0768856d589e15bf597f4816d5cd524
+
+From 0ef7a9d7d22c9a7779def3f8c7f0166d996a2401 Mon Sep 17 00:00:00 2001
+From: xtkoba <69125751+xtkoba@users.noreply.github.com>
+Date: Wed, 29 Sep 2021 19:24:44 +0900
+Subject: [PATCH] Keep `LONGDOUBLE_ADJ >= sizeof(long double)`
+
+--- a/ext/ffi_c/Call.c
++++ b/ext/ffi_c/Call.c
+@@ -71,7 +71,7 @@
+ #define FLOAT32_ADJ (4)
+ #define FLOAT64_ADJ (8)
+ #define ADDRESS_ADJ (sizeof(void *))
+-#define LONGDOUBLE_ADJ (ffi_type_longdouble.alignment)
++#define LONGDOUBLE_ADJ (ffi_type_longdouble.alignment > sizeof(long double) ? ffi_type_longdouble.alignment : sizeof(long double))
+
+ #endif /* USE_RAW */
+