mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
dev-ruby/ffi: remove unused patch(es)
Signed-off-by: Michael Mair-Keimberger <mmk@levelnine.at> Signed-off-by: Hans de Graaff <graaff@gentoo.org>
This commit is contained in:
committed by
Hans de Graaff
parent
3fd8e3f53b
commit
64e2d395d4
@@ -1,191 +0,0 @@
|
||||
https://github.com/ffi/ffi/pull/1017
|
||||
|
||||
From 1f0a4db3d6b16142d2ef547c8dde7a36b21bd39a Mon Sep 17 00:00:00 2001
|
||||
From: Sam James <sam@gentoo.org>
|
||||
Date: Sun, 9 Apr 2023 02:20:32 +0100
|
||||
Subject: [PATCH 2/2] Add types.conf for hppa2.0-linux
|
||||
|
||||
--- /dev/null
|
||||
+++ b/lib/ffi/platform/hppa2.0-linux/types.conf
|
||||
@@ -0,0 +1,178 @@
|
||||
+rbx.platform.typedef.*__caddr_t = char
|
||||
+rbx.platform.typedef.__blkcnt64_t = long_long
|
||||
+rbx.platform.typedef.__blkcnt_t = long
|
||||
+rbx.platform.typedef.__blksize_t = long
|
||||
+rbx.platform.typedef.__clock_t = long
|
||||
+rbx.platform.typedef.__clockid_t = int
|
||||
+rbx.platform.typedef.__daddr_t = int
|
||||
+rbx.platform.typedef.__dev_t = ulong_long
|
||||
+rbx.platform.typedef.__fd_mask = long
|
||||
+rbx.platform.typedef.__fsblkcnt64_t = ulong_long
|
||||
+rbx.platform.typedef.__fsblkcnt_t = ulong
|
||||
+rbx.platform.typedef.__fsfilcnt64_t = ulong_long
|
||||
+rbx.platform.typedef.__fsfilcnt_t = ulong
|
||||
+rbx.platform.typedef.__fsword_t = int
|
||||
+rbx.platform.typedef.__gid_t = uint
|
||||
+rbx.platform.typedef.__id_t = uint
|
||||
+rbx.platform.typedef.__ino64_t = ulong_long
|
||||
+rbx.platform.typedef.__ino_t = ulong
|
||||
+rbx.platform.typedef.__int16_t = short
|
||||
+rbx.platform.typedef.__int32_t = int
|
||||
+rbx.platform.typedef.__int64_t = long_long
|
||||
+rbx.platform.typedef.__int8_t = char
|
||||
+rbx.platform.typedef.__int_least16_t = short
|
||||
+rbx.platform.typedef.__int_least32_t = int
|
||||
+rbx.platform.typedef.__int_least64_t = long_long
|
||||
+rbx.platform.typedef.__int_least8_t = char
|
||||
+rbx.platform.typedef.__intmax_t = long_long
|
||||
+rbx.platform.typedef.__intptr_t = int
|
||||
+rbx.platform.typedef.__kernel_caddr_t = string
|
||||
+rbx.platform.typedef.__kernel_clock_t = long
|
||||
+rbx.platform.typedef.__kernel_clockid_t = int
|
||||
+rbx.platform.typedef.__kernel_daddr_t = int
|
||||
+rbx.platform.typedef.__kernel_gid16_t = ushort
|
||||
+rbx.platform.typedef.__kernel_gid32_t = uint
|
||||
+rbx.platform.typedef.__kernel_gid_t = uint
|
||||
+rbx.platform.typedef.__kernel_ino64_t = ulong_long
|
||||
+rbx.platform.typedef.__kernel_ino_t = ulong
|
||||
+rbx.platform.typedef.__kernel_ipc_pid_t = ushort
|
||||
+rbx.platform.typedef.__kernel_key_t = int
|
||||
+rbx.platform.typedef.__kernel_loff_t = long_long
|
||||
+rbx.platform.typedef.__kernel_long_t = long
|
||||
+rbx.platform.typedef.__kernel_mode_t = ushort
|
||||
+rbx.platform.typedef.__kernel_mqd_t = int
|
||||
+rbx.platform.typedef.__kernel_off64_t = long_long
|
||||
+rbx.platform.typedef.__kernel_off_t = long
|
||||
+rbx.platform.typedef.__kernel_old_dev_t = uint
|
||||
+rbx.platform.typedef.__kernel_old_gid_t = uint
|
||||
+rbx.platform.typedef.__kernel_old_time_t = long
|
||||
+rbx.platform.typedef.__kernel_old_uid_t = uint
|
||||
+rbx.platform.typedef.__kernel_pid_t = int
|
||||
+rbx.platform.typedef.__kernel_ptrdiff_t = int
|
||||
+rbx.platform.typedef.__kernel_size_t = uint
|
||||
+rbx.platform.typedef.__kernel_ssize_t = int
|
||||
+rbx.platform.typedef.__kernel_suseconds_t = long
|
||||
+rbx.platform.typedef.__kernel_time64_t = long_long
|
||||
+rbx.platform.typedef.__kernel_time_t = long
|
||||
+rbx.platform.typedef.__kernel_timer_t = int
|
||||
+rbx.platform.typedef.__kernel_uid16_t = ushort
|
||||
+rbx.platform.typedef.__kernel_uid32_t = uint
|
||||
+rbx.platform.typedef.__kernel_uid_t = uint
|
||||
+rbx.platform.typedef.__kernel_ulong_t = ulong
|
||||
+rbx.platform.typedef.__key_t = int
|
||||
+rbx.platform.typedef.__loff_t = long_long
|
||||
+rbx.platform.typedef.__mode_t = uint
|
||||
+rbx.platform.typedef.__nlink_t = uint
|
||||
+rbx.platform.typedef.__off64_t = long_long
|
||||
+rbx.platform.typedef.__off_t = long
|
||||
+rbx.platform.typedef.__pid_t = int
|
||||
+rbx.platform.typedef.__priority_which_t = int
|
||||
+rbx.platform.typedef.__quad_t = long_long
|
||||
+rbx.platform.typedef.__rlim64_t = ulong_long
|
||||
+rbx.platform.typedef.__rlim_t = ulong
|
||||
+rbx.platform.typedef.__rlimit_resource_t = int
|
||||
+rbx.platform.typedef.__rusage_who_t = int
|
||||
+rbx.platform.typedef.__sig_atomic_t = int
|
||||
+rbx.platform.typedef.__socklen_t = uint
|
||||
+rbx.platform.typedef.__ssize_t = int
|
||||
+rbx.platform.typedef.__suseconds64_t = long_long
|
||||
+rbx.platform.typedef.__suseconds_t = long
|
||||
+rbx.platform.typedef.__syscall_slong_t = long
|
||||
+rbx.platform.typedef.__syscall_ulong_t = ulong
|
||||
+rbx.platform.typedef.__thrd_t = ulong
|
||||
+rbx.platform.typedef.__time64_t = long_long
|
||||
+rbx.platform.typedef.__time_t = long
|
||||
+rbx.platform.typedef.__timer_t = pointer
|
||||
+rbx.platform.typedef.__tss_t = uint
|
||||
+rbx.platform.typedef.__u_char = uchar
|
||||
+rbx.platform.typedef.__u_int = uint
|
||||
+rbx.platform.typedef.__u_long = ulong
|
||||
+rbx.platform.typedef.__u_quad_t = ulong_long
|
||||
+rbx.platform.typedef.__u_short = ushort
|
||||
+rbx.platform.typedef.__uid_t = uint
|
||||
+rbx.platform.typedef.__uint16_t = ushort
|
||||
+rbx.platform.typedef.__uint32_t = uint
|
||||
+rbx.platform.typedef.__uint64_t = ulong_long
|
||||
+rbx.platform.typedef.__uint8_t = uchar
|
||||
+rbx.platform.typedef.__uint_least16_t = ushort
|
||||
+rbx.platform.typedef.__uint_least32_t = uint
|
||||
+rbx.platform.typedef.__uint_least64_t = ulong_long
|
||||
+rbx.platform.typedef.__uint_least8_t = uchar
|
||||
+rbx.platform.typedef.__uintmax_t = ulong_long
|
||||
+rbx.platform.typedef.__useconds_t = uint
|
||||
+rbx.platform.typedef.blkcnt_t = long_long
|
||||
+rbx.platform.typedef.blksize_t = long
|
||||
+rbx.platform.typedef.clock_t = long
|
||||
+rbx.platform.typedef.clockid_t = int
|
||||
+rbx.platform.typedef.daddr_t = int
|
||||
+rbx.platform.typedef.dev_t = ulong_long
|
||||
+rbx.platform.typedef.fd_mask = long
|
||||
+rbx.platform.typedef.fsblkcnt_t = ulong_long
|
||||
+rbx.platform.typedef.fsfilcnt_t = ulong_long
|
||||
+rbx.platform.typedef.gid_t = uint
|
||||
+rbx.platform.typedef.id_t = uint
|
||||
+rbx.platform.typedef.in_addr_t = uint
|
||||
+rbx.platform.typedef.in_port_t = ushort
|
||||
+rbx.platform.typedef.ino_t = ulong_long
|
||||
+rbx.platform.typedef.int16_t = short
|
||||
+rbx.platform.typedef.int32_t = int
|
||||
+rbx.platform.typedef.int64_t = long_long
|
||||
+rbx.platform.typedef.int8_t = char
|
||||
+rbx.platform.typedef.int_fast16_t = int
|
||||
+rbx.platform.typedef.int_fast32_t = int
|
||||
+rbx.platform.typedef.int_fast64_t = long_long
|
||||
+rbx.platform.typedef.int_fast8_t = char
|
||||
+rbx.platform.typedef.int_least16_t = short
|
||||
+rbx.platform.typedef.int_least32_t = int
|
||||
+rbx.platform.typedef.int_least64_t = long_long
|
||||
+rbx.platform.typedef.int_least8_t = char
|
||||
+rbx.platform.typedef.intmax_t = long_long
|
||||
+rbx.platform.typedef.intptr_t = int
|
||||
+rbx.platform.typedef.key_t = int
|
||||
+rbx.platform.typedef.loff_t = long_long
|
||||
+rbx.platform.typedef.mode_t = uint
|
||||
+rbx.platform.typedef.nlink_t = uint
|
||||
+rbx.platform.typedef.off_t = long_long
|
||||
+rbx.platform.typedef.pid_t = int
|
||||
+rbx.platform.typedef.pthread_key_t = uint
|
||||
+rbx.platform.typedef.pthread_once_t = int
|
||||
+rbx.platform.typedef.pthread_t = ulong
|
||||
+rbx.platform.typedef.ptrdiff_t = int
|
||||
+rbx.platform.typedef.quad_t = long_long
|
||||
+rbx.platform.typedef.register_t = long
|
||||
+rbx.platform.typedef.rlim_t = ulong_long
|
||||
+rbx.platform.typedef.sa_family_t = ushort
|
||||
+rbx.platform.typedef.size_t = uint
|
||||
+rbx.platform.typedef.socklen_t = uint
|
||||
+rbx.platform.typedef.ssize_t = int
|
||||
+rbx.platform.typedef.suseconds_t = long
|
||||
+rbx.platform.typedef.time_t = long
|
||||
+rbx.platform.typedef.timer_t = pointer
|
||||
+rbx.platform.typedef.u_char = uchar
|
||||
+rbx.platform.typedef.u_int = uint
|
||||
+rbx.platform.typedef.u_int16_t = ushort
|
||||
+rbx.platform.typedef.u_int32_t = uint
|
||||
+rbx.platform.typedef.u_int64_t = ulong_long
|
||||
+rbx.platform.typedef.u_int8_t = uchar
|
||||
+rbx.platform.typedef.u_long = ulong
|
||||
+rbx.platform.typedef.u_quad_t = ulong_long
|
||||
+rbx.platform.typedef.u_short = ushort
|
||||
+rbx.platform.typedef.uid_t = uint
|
||||
+rbx.platform.typedef.uint = uint
|
||||
+rbx.platform.typedef.uint16_t = ushort
|
||||
+rbx.platform.typedef.uint32_t = uint
|
||||
+rbx.platform.typedef.uint64_t = ulong_long
|
||||
+rbx.platform.typedef.uint8_t = uchar
|
||||
+rbx.platform.typedef.uint_fast16_t = uint
|
||||
+rbx.platform.typedef.uint_fast32_t = uint
|
||||
+rbx.platform.typedef.uint_fast64_t = ulong_long
|
||||
+rbx.platform.typedef.uint_fast8_t = uchar
|
||||
+rbx.platform.typedef.uint_least16_t = ushort
|
||||
+rbx.platform.typedef.uint_least32_t = uint
|
||||
+rbx.platform.typedef.uint_least64_t = ulong_long
|
||||
+rbx.platform.typedef.uint_least8_t = uchar
|
||||
+rbx.platform.typedef.uintmax_t = ulong_long
|
||||
+rbx.platform.typedef.uintptr_t = uint
|
||||
+rbx.platform.typedef.ulong = ulong
|
||||
+rbx.platform.typedef.ushort = ushort
|
||||
+rbx.platform.typedef.wchar_t = long
|
||||
--
|
||||
2.40.0
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
From edc54894f77d00c4ca34593c8b4c94f656f5807e Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Cheung <frederick.cheung@gmail.com>
|
||||
Date: Fri, 17 Jun 2022 18:57:28 +0100
|
||||
Subject: [PATCH] Fix Pointer#initialize using NUM2LL instead of NUM2ULL
|
||||
|
||||
If the high bit of the address was set this would raise RangeError
|
||||
(bignum too big to convert into long long). This is not uncommon on
|
||||
platforms that use the high bits of pointers for purposes such as
|
||||
pointer authentication
|
||||
|
||||
This also now matches Pointer#address which uses ULL2NUM.
|
||||
---
|
||||
ext/ffi_c/Pointer.c | 2 +-
|
||||
spec/ffi/pointer_spec.rb | 8 ++++++++
|
||||
2 files changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/ext/ffi_c/Pointer.c b/ext/ffi_c/Pointer.c
|
||||
index 153fff101..79886811f 100644
|
||||
--- a/ext/ffi_c/Pointer.c
|
||||
+++ b/ext/ffi_c/Pointer.c
|
||||
@@ -112,7 +112,7 @@ ptr_initialize(int argc, VALUE* argv, VALUE self)
|
||||
switch (TYPE(rbAddress)) {
|
||||
case T_FIXNUM:
|
||||
case T_BIGNUM:
|
||||
- p->memory.address = (void*) (uintptr_t) NUM2LL(rbAddress);
|
||||
+ p->memory.address = (void*) (uintptr_t) NUM2ULL(rbAddress);
|
||||
p->memory.size = LONG_MAX;
|
||||
if (p->memory.address == NULL) {
|
||||
p->memory.flags = 0;
|
||||
diff --git a/spec/ffi/pointer_spec.rb b/spec/ffi/pointer_spec.rb
|
||||
index b216a161d..7a2ac1565 100644
|
||||
--- a/spec/ffi/pointer_spec.rb
|
||||
+++ b/spec/ffi/pointer_spec.rb
|
||||
@@ -237,6 +237,14 @@ def to_ptr
|
||||
expect(FFI::Pointer.new(0).slice(0, 10).size_limit?).to be true
|
||||
end
|
||||
end
|
||||
+
|
||||
+ describe "#initialise" do
|
||||
+ it 'can use adresses with high bit set' do
|
||||
+ max_address = 2**FFI::Platform::ADDRESS_SIZE - 1
|
||||
+ pointer = FFI::Pointer.new(:uint8, max_address)
|
||||
+ expect(pointer.address).to eq(max_address)
|
||||
+ end
|
||||
+ end
|
||||
end
|
||||
|
||||
describe "AutoPointer" do
|
||||
@@ -1,23 +0,0 @@
|
||||
https://github.com/ffi/ffi/commit/19348fe09e1aeb08424abdf331c3497159139f20
|
||||
|
||||
From 19348fe09e1aeb08424abdf331c3497159139f20 Mon Sep 17 00:00:00 2001
|
||||
From: matoro <matoro@users.noreply.github.com>
|
||||
Date: Tue, 14 Mar 2023 21:03:33 -0400
|
||||
Subject: [PATCH] Update gen/Rakefile for Ruby 3 compat
|
||||
|
||||
Ruby 3 changed the 'mode' argument from an option hash to keyword
|
||||
argument. This change is backwards-compatible with Ruby 2.
|
||||
|
||||
See: https://github.com/ruby/fileutils/commit/482de6d397742526d1111576e2791f9b7051e3c0
|
||||
--- a/gen/Rakefile
|
||||
+++ b/gen/Rakefile
|
||||
@@ -9,7 +9,7 @@ logfile = File.join(File.dirname(__FILE__), 'log')
|
||||
|
||||
file types_conf do |task|
|
||||
options = {}
|
||||
- FileUtils.mkdir_p(File.dirname(task.name), { :mode => 0755 })
|
||||
+ FileUtils.mkdir_p(File.dirname(task.name), mode: 0755)
|
||||
File.open(task.name, File::CREAT|File::TRUNC|File::RDWR, 0644) do |f|
|
||||
f.puts FFI::TypesGenerator.generate(options)
|
||||
end
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
From 241b10322283743b79c9489993bfb964b5167f7f Mon Sep 17 00:00:00 2001
|
||||
From: matoro <matoro@users.noreply.github.com>
|
||||
Date: Wed, 25 May 2022 14:23:55 -0400
|
||||
Subject: [PATCH 1/2] Rename sparc64-linux -> sparcv9-linux
|
||||
|
||||
In https://github.com/ffi/ffi/pull/575, 64-bit sparc was changed to also
|
||||
use sparcv9 as the platform name, but the types.conf directory was never
|
||||
renamed. This breaks only on Ruby 3.0 and later due to the fileutils
|
||||
change to use keyword arguments in
|
||||
https://github.com/ruby/fileutils/commit/482de6d397742526d1111576e2791f9b7051e3c0
|
||||
---
|
||||
lib/ffi/platform/{sparc64-linux => sparcv9-linux}/types.conf | 0
|
||||
1 file changed, 0 insertions(+), 0 deletions(-)
|
||||
rename lib/ffi/platform/{sparc64-linux => sparcv9-linux}/types.conf (100%)
|
||||
|
||||
diff --git a/lib/ffi/platform/sparc64-linux/types.conf b/lib/ffi/platform/sparcv9-linux/types.conf
|
||||
similarity index 100%
|
||||
rename from lib/ffi/platform/sparc64-linux/types.conf
|
||||
rename to lib/ffi/platform/sparcv9-linux/types.conf
|
||||
|
||||
From 76dc5c7d69a445268f47f5b6a9185e644bcd68e8 Mon Sep 17 00:00:00 2001
|
||||
From: matoro <matoro@users.noreply.github.com>
|
||||
Date: Mon, 13 Jun 2022 22:56:26 -0400
|
||||
Subject: [PATCH 2/2] Also normalize sparc64 -> sparcv9 in test fixture
|
||||
|
||||
---
|
||||
spec/ffi/fixtures/compile.rb | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/spec/ffi/fixtures/compile.rb b/spec/ffi/fixtures/compile.rb
|
||||
index f2e831a63..58ee5611d 100644
|
||||
--- a/spec/ffi/fixtures/compile.rb
|
||||
+++ b/spec/ffi/fixtures/compile.rb
|
||||
@@ -22,6 +22,8 @@ module TestLibrary
|
||||
"powerpc64"
|
||||
when /ppc|powerpc/
|
||||
"powerpc"
|
||||
+ when /sparcv9|sparc64/
|
||||
+ "sparcv9"
|
||||
when /^arm/
|
||||
if RbConfig::CONFIG['host_os'] =~ /darwin/
|
||||
"aarch64"
|
||||
@@ -1,21 +0,0 @@
|
||||
https://github.com/ffi/ffi/pull/1017
|
||||
|
||||
From 587822fa8d21292d39400d2276ca49d37a752135 Mon Sep 17 00:00:00 2001
|
||||
From: Sam James <sam@gentoo.org>
|
||||
Date: Sun, 9 Apr 2023 02:17:23 +0100
|
||||
Subject: [PATCH 1/2] Use libffi closure allocations on hppa
|
||||
|
||||
We currently do this for Apple arm64, but we need to do it for hppa too.
|
||||
--- a/ext/ffi_c/extconf.rb
|
||||
+++ b/ext/ffi_c/extconf.rb
|
||||
@@ -61,6 +61,7 @@ if RUBY_ENGINE == 'ruby' || RUBY_ENGINE == 'rbx'
|
||||
append_ldflags "-pthread"
|
||||
|
||||
ffi_alloc_default = RbConfig::CONFIG['host_os'] =~ /darwin/i && RbConfig::CONFIG['host'] =~ /arm|aarch64/i
|
||||
+ ffi_alloc_default = ffi_alloc_default || RbConfig::CONFIG['host'] =~ /hppa/i
|
||||
if enable_config('libffi-alloc', ffi_alloc_default)
|
||||
$defs << "-DUSE_FFI_ALLOC"
|
||||
end
|
||||
--
|
||||
2.40.0
|
||||
|
||||
Reference in New Issue
Block a user