ffi 1.15.1 → 1.15.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b935d4af8929617d392e006c859332b37f754114850da947258561823bfb81b6
4
- data.tar.gz: 7a56d828fed5ab247416d1425c70ac330704b16713922132e7ad6220df94195b
3
+ metadata.gz: ed55e9142667c9fd64d3debecfcbbe03243438de4e52f91251da5e8f68e1879c
4
+ data.tar.gz: e014b6310daff4aa37ff41dacac9d2e603e2de6df2befc72d4754819884dd673
5
5
  SHA512:
6
- metadata.gz: 9afe880918848377b8ce402b0504833e5b3f0328ef8c878869f0ff0aa4c6f18d82c57cbe1617528416dc261e2fafa966dea08331b84c08beb49b75aa164f884d
7
- data.tar.gz: e8632420a47345812ccc66bb72460705cd9bdbd034ae1bfed62920cb2851d6c8291cbad4540997c597a70dc4f8aa21111818e87b473d75dced69b7357be3e952
6
+ metadata.gz: 32189e26f80dc44e46841b4683c5b95a999afb0142788a903b6d3c106b1d814f7f1c6a30b9b72061cab61fc86179787b774479d7bede31d3b5165d6c4a4903df
7
+ data.tar.gz: 97c9e14a6844728f42b533407e1e147352b2f672a3d37cef535e6b4386fa2c3e6eed78795e393f48c04c3d7cda789f231047ef486a117b68162cc09138235c0c
data/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ 1.15.2 / 2021-06-16
2
+ -------------------
3
+
4
+ Added:
5
+ * Add support for Windows MINGW-UCRT build. #903
6
+ * Add `/opt/homebrew/lib/` to fallback search paths to improve homebrew support. #880 #882
7
+
8
+ Changed:
9
+ * Regenerate `types.conf` for FreeBSD12 aarch64. #902
10
+
11
+
1
12
  1.15.1 / 2021-05-22
2
13
  -------------------
3
14
 
data/lib/ffi/library.rb CHANGED
@@ -126,7 +126,7 @@ module FFI
126
126
  else
127
127
  # TODO better library lookup logic
128
128
  unless libname.start_with?("/") || FFI::Platform.windows?
129
- path = ['/usr/lib/','/usr/local/lib/','/opt/local/lib/'].find do |pth|
129
+ path = ['/usr/lib/','/usr/local/lib/','/opt/local/lib/', '/opt/homebrew/lib/'].find do |pth|
130
130
  File.exist?(pth + libname)
131
131
  end
132
132
  if path
data/lib/ffi/platform.rb CHANGED
@@ -132,11 +132,8 @@ module FFI
132
132
  end
133
133
 
134
134
  LIBC = if IS_WINDOWS
135
- if RbConfig::CONFIG['host_os'] =~ /mingw/i
136
- RbConfig::CONFIG['RUBY_SO_NAME'].split('-')[-2] + '.dll'
137
- else
138
- "ucrtbase.dll"
139
- end
135
+ crtname = RbConfig::CONFIG["RUBY_SO_NAME"][/msvc\w+/] || 'ucrtbase'
136
+ "#{crtname}.dll"
140
137
  elsif IS_GNU
141
138
  GNU_LIBC
142
139
  elsif OS == 'cygwin'
@@ -39,9 +39,9 @@ rbx.platform.typedef.__segsz_t = int
39
39
  rbx.platform.typedef.__size_t = ulong
40
40
  rbx.platform.typedef.__socklen_t = uint
41
41
  rbx.platform.typedef.__ssize_t = long
42
- rbx.platform.typedef.__suseconds_t = int
42
+ rbx.platform.typedef.__suseconds_t = long
43
43
  rbx.platform.typedef.__swblk_t = int
44
- rbx.platform.typedef.__time_t = int
44
+ rbx.platform.typedef.__time_t = long
45
45
  rbx.platform.typedef.__timer_t = int
46
46
  rbx.platform.typedef.__uid_t = uint
47
47
  rbx.platform.typedef.__uint16_t = ushort
@@ -1,128 +1,181 @@
1
+ rbx.platform.typedef.*) = pointer
2
+ rbx.platform.typedef.___wchar_t = uint
3
+ rbx.platform.typedef.__accmode_t = int
4
+ rbx.platform.typedef.__blkcnt_t = long
5
+ rbx.platform.typedef.__blksize_t = int
6
+ rbx.platform.typedef.__char16_t = ushort
7
+ rbx.platform.typedef.__char32_t = uint
1
8
  rbx.platform.typedef.__clock_t = int
2
9
  rbx.platform.typedef.__clockid_t = int
3
- rbx.platform.typedef.__cpuid_t = ulong
4
- rbx.platform.typedef.__dev_t = ulong_long
5
- rbx.platform.typedef.__fd_mask = int
10
+ rbx.platform.typedef.__cpulevel_t = int
11
+ rbx.platform.typedef.__cpusetid_t = int
12
+ rbx.platform.typedef.__cpuwhich_t = int
13
+ rbx.platform.typedef.__critical_t = long
14
+ rbx.platform.typedef.__ct_rune_t = int
15
+ rbx.platform.typedef.__daddr_t = long
16
+ rbx.platform.typedef.__dev_t = ulong
17
+ rbx.platform.typedef.__fd_mask = ulong
18
+ rbx.platform.typedef.__fflags_t = uint
6
19
  rbx.platform.typedef.__fixpt_t = uint
20
+ rbx.platform.typedef.__fsblkcnt_t = ulong
21
+ rbx.platform.typedef.__fsfilcnt_t = ulong
7
22
  rbx.platform.typedef.__gid_t = uint
8
- rbx.platform.typedef.__id_t = uint
9
- rbx.platform.typedef.__in_addr_t = uint
10
- rbx.platform.typedef.__in_port_t = ushort
11
- rbx.platform.typedef.__ino_t = ulong_long
23
+ rbx.platform.typedef.__id_t = long
24
+ rbx.platform.typedef.__ino_t = ulong
12
25
  rbx.platform.typedef.__int16_t = short
13
26
  rbx.platform.typedef.__int32_t = int
14
- rbx.platform.typedef.__int64_t = long_long
27
+ rbx.platform.typedef.__int64_t = long
15
28
  rbx.platform.typedef.__int8_t = char
16
29
  rbx.platform.typedef.__int_fast16_t = int
17
30
  rbx.platform.typedef.__int_fast32_t = int
18
- rbx.platform.typedef.__int_fast64_t = long_long
31
+ rbx.platform.typedef.__int_fast64_t = long
19
32
  rbx.platform.typedef.__int_fast8_t = int
20
33
  rbx.platform.typedef.__int_least16_t = short
21
34
  rbx.platform.typedef.__int_least32_t = int
22
- rbx.platform.typedef.__int_least64_t = long_long
35
+ rbx.platform.typedef.__int_least64_t = long
23
36
  rbx.platform.typedef.__int_least8_t = char
24
- rbx.platform.typedef.__intmax_t = long_long
37
+ rbx.platform.typedef.__intfptr_t = long
38
+ rbx.platform.typedef.__intmax_t = long
25
39
  rbx.platform.typedef.__intptr_t = long
26
40
  rbx.platform.typedef.__key_t = long
27
- rbx.platform.typedef.__mode_t = uint
28
- rbx.platform.typedef.__nlink_t = ulong_long
29
- rbx.platform.typedef.__off_t = long_long
30
- rbx.platform.typedef.__paddr_t = ulong
41
+ rbx.platform.typedef.__lwpid_t = int
42
+ rbx.platform.typedef.__mode_t = ushort
43
+ rbx.platform.typedef.__nl_item = int
44
+ rbx.platform.typedef.__nlink_t = ulong
45
+ rbx.platform.typedef.__off64_t = long
46
+ rbx.platform.typedef.__off_t = long
31
47
  rbx.platform.typedef.__pid_t = int
32
- rbx.platform.typedef.__psize_t = ulong
33
48
  rbx.platform.typedef.__ptrdiff_t = long
34
- rbx.platform.typedef.__register_t = long_long
35
- rbx.platform.typedef.__rlim_t = ulong_long
49
+ rbx.platform.typedef.__register_t = long
50
+ rbx.platform.typedef.__rlim_t = long
51
+ rbx.platform.typedef.__rman_res_t = ulong
36
52
  rbx.platform.typedef.__rune_t = int
37
53
  rbx.platform.typedef.__sa_family_t = uchar
38
- rbx.platform.typedef.__segsz_t = int
54
+ rbx.platform.typedef.__segsz_t = long
39
55
  rbx.platform.typedef.__size_t = ulong
40
56
  rbx.platform.typedef.__socklen_t = uint
41
57
  rbx.platform.typedef.__ssize_t = long
42
- rbx.platform.typedef.__suseconds_t = int
43
- rbx.platform.typedef.__swblk_t = int
44
- rbx.platform.typedef.__time_t = int
45
- rbx.platform.typedef.__timer_t = int
58
+ rbx.platform.typedef.__suseconds_t = long
59
+ rbx.platform.typedef.__time_t = long
60
+ rbx.platform.typedef.__u_register_t = ulong
46
61
  rbx.platform.typedef.__uid_t = uint
47
62
  rbx.platform.typedef.__uint16_t = ushort
48
63
  rbx.platform.typedef.__uint32_t = uint
49
- rbx.platform.typedef.__uint64_t = ulong_long
64
+ rbx.platform.typedef.__uint64_t = ulong
50
65
  rbx.platform.typedef.__uint8_t = uchar
51
66
  rbx.platform.typedef.__uint_fast16_t = uint
52
67
  rbx.platform.typedef.__uint_fast32_t = uint
53
- rbx.platform.typedef.__uint_fast64_t = ulong_long
68
+ rbx.platform.typedef.__uint_fast64_t = ulong
54
69
  rbx.platform.typedef.__uint_fast8_t = uint
55
70
  rbx.platform.typedef.__uint_least16_t = ushort
56
71
  rbx.platform.typedef.__uint_least32_t = uint
57
- rbx.platform.typedef.__uint_least64_t = ulong_long
72
+ rbx.platform.typedef.__uint_least64_t = ulong
58
73
  rbx.platform.typedef.__uint_least8_t = uchar
59
- rbx.platform.typedef.__uintmax_t = ulong_long
74
+ rbx.platform.typedef.__uintfptr_t = ulong
75
+ rbx.platform.typedef.__uintmax_t = ulong
60
76
  rbx.platform.typedef.__uintptr_t = ulong
61
77
  rbx.platform.typedef.__useconds_t = uint
62
- rbx.platform.typedef.__vaddr_t = ulong
63
- rbx.platform.typedef.__vsize_t = ulong
64
- rbx.platform.typedef.__wchar_t = int
65
- rbx.platform.typedef.__wctrans_t = pointer
66
- rbx.platform.typedef.__wctype_t = pointer
78
+ rbx.platform.typedef.__vm_offset_t = ulong
79
+ rbx.platform.typedef.__vm_paddr_t = ulong
80
+ rbx.platform.typedef.__vm_size_t = ulong
67
81
  rbx.platform.typedef.__wint_t = int
82
+ rbx.platform.typedef.accmode_t = int
83
+ rbx.platform.typedef.blkcnt_t = long
84
+ rbx.platform.typedef.blksize_t = int
85
+ rbx.platform.typedef.c_caddr_t = pointer
68
86
  rbx.platform.typedef.caddr_t = string
87
+ rbx.platform.typedef.cap_ioctl_t = ulong
69
88
  rbx.platform.typedef.clock_t = int
70
89
  rbx.platform.typedef.clockid_t = int
71
- rbx.platform.typedef.cpuid_t = ulong
72
- rbx.platform.typedef.daddr32_t = int
73
- rbx.platform.typedef.daddr64_t = long_long
74
- rbx.platform.typedef.daddr_t = int
75
- rbx.platform.typedef.dev_t = ulong_long
90
+ rbx.platform.typedef.cpulevel_t = int
91
+ rbx.platform.typedef.cpusetid_t = int
92
+ rbx.platform.typedef.cpuwhich_t = int
93
+ rbx.platform.typedef.critical_t = long
94
+ rbx.platform.typedef.daddr_t = long
95
+ rbx.platform.typedef.dev_t = ulong
96
+ rbx.platform.typedef.fd_mask = ulong
97
+ rbx.platform.typedef.fflags_t = uint
76
98
  rbx.platform.typedef.fixpt_t = uint
99
+ rbx.platform.typedef.fsblkcnt_t = ulong
100
+ rbx.platform.typedef.fsfilcnt_t = ulong
77
101
  rbx.platform.typedef.gid_t = uint
78
- rbx.platform.typedef.id_t = uint
102
+ rbx.platform.typedef.id_t = long
79
103
  rbx.platform.typedef.in_addr_t = uint
80
104
  rbx.platform.typedef.in_port_t = ushort
81
- rbx.platform.typedef.ino_t = ulong_long
105
+ rbx.platform.typedef.ino_t = ulong
82
106
  rbx.platform.typedef.int16_t = short
83
107
  rbx.platform.typedef.int32_t = int
84
- rbx.platform.typedef.int64_t = long_long
108
+ rbx.platform.typedef.int64_t = long
85
109
  rbx.platform.typedef.int8_t = char
110
+ rbx.platform.typedef.int_fast16_t = int
111
+ rbx.platform.typedef.int_fast32_t = int
112
+ rbx.platform.typedef.int_fast64_t = long
113
+ rbx.platform.typedef.int_fast8_t = int
114
+ rbx.platform.typedef.int_least16_t = short
115
+ rbx.platform.typedef.int_least32_t = int
116
+ rbx.platform.typedef.int_least64_t = long
117
+ rbx.platform.typedef.int_least8_t = char
118
+ rbx.platform.typedef.intmax_t = long
86
119
  rbx.platform.typedef.intptr_t = long
87
120
  rbx.platform.typedef.key_t = long
88
- rbx.platform.typedef.mode_t = uint
89
- rbx.platform.typedef.nlink_t = ulong_long
90
- rbx.platform.typedef.off_t = long_long
91
- rbx.platform.typedef.paddr_t = ulong
121
+ rbx.platform.typedef.kpaddr_t = ulong
122
+ rbx.platform.typedef.ksize_t = ulong
123
+ rbx.platform.typedef.kssize_t = long
124
+ rbx.platform.typedef.kvaddr_t = ulong
125
+ rbx.platform.typedef.lwpid_t = int
126
+ rbx.platform.typedef.mode_t = ushort
127
+ rbx.platform.typedef.nlink_t = ulong
128
+ rbx.platform.typedef.off64_t = long
129
+ rbx.platform.typedef.off_t = long
92
130
  rbx.platform.typedef.pid_t = int
93
- rbx.platform.typedef.psize_t = ulong
131
+ rbx.platform.typedef.pthread_key_t = int
132
+ rbx.platform.typedef.ptrdiff_t = long
94
133
  rbx.platform.typedef.qaddr_t = pointer
95
- rbx.platform.typedef.quad_t = long_long
96
- rbx.platform.typedef.register_t = long_long
97
- rbx.platform.typedef.rlim_t = ulong_long
134
+ rbx.platform.typedef.quad_t = long
135
+ rbx.platform.typedef.register_t = long
136
+ rbx.platform.typedef.rlim_t = long
137
+ rbx.platform.typedef.rman_res_t = ulong
138
+ rbx.platform.typedef.rsize_t = ulong
139
+ rbx.platform.typedef.rune_t = int
98
140
  rbx.platform.typedef.sa_family_t = uchar
99
- rbx.platform.typedef.segsz_t = int
141
+ rbx.platform.typedef.sbintime_t = long
142
+ rbx.platform.typedef.segsz_t = long
100
143
  rbx.platform.typedef.size_t = ulong
101
144
  rbx.platform.typedef.socklen_t = uint
102
145
  rbx.platform.typedef.ssize_t = long
103
- rbx.platform.typedef.suseconds_t = int
104
- rbx.platform.typedef.swblk_t = int
105
- rbx.platform.typedef.time_t = int
106
- rbx.platform.typedef.timer_t = int
146
+ rbx.platform.typedef.suseconds_t = long
147
+ rbx.platform.typedef.time_t = long
107
148
  rbx.platform.typedef.u_char = uchar
108
149
  rbx.platform.typedef.u_int = uint
109
150
  rbx.platform.typedef.u_int16_t = ushort
110
151
  rbx.platform.typedef.u_int32_t = uint
111
- rbx.platform.typedef.u_int64_t = ulong_long
152
+ rbx.platform.typedef.u_int64_t = ulong
112
153
  rbx.platform.typedef.u_int8_t = uchar
113
154
  rbx.platform.typedef.u_long = ulong
114
- rbx.platform.typedef.u_quad_t = ulong_long
155
+ rbx.platform.typedef.u_quad_t = ulong
156
+ rbx.platform.typedef.u_register_t = ulong
115
157
  rbx.platform.typedef.u_short = ushort
116
158
  rbx.platform.typedef.uid_t = uint
117
159
  rbx.platform.typedef.uint = uint
118
160
  rbx.platform.typedef.uint16_t = ushort
119
161
  rbx.platform.typedef.uint32_t = uint
120
- rbx.platform.typedef.uint64_t = ulong_long
162
+ rbx.platform.typedef.uint64_t = ulong
121
163
  rbx.platform.typedef.uint8_t = uchar
164
+ rbx.platform.typedef.uint_fast16_t = uint
165
+ rbx.platform.typedef.uint_fast32_t = uint
166
+ rbx.platform.typedef.uint_fast64_t = ulong
167
+ rbx.platform.typedef.uint_fast8_t = uint
168
+ rbx.platform.typedef.uint_least16_t = ushort
169
+ rbx.platform.typedef.uint_least32_t = uint
170
+ rbx.platform.typedef.uint_least64_t = ulong
171
+ rbx.platform.typedef.uint_least8_t = uchar
172
+ rbx.platform.typedef.uintmax_t = ulong
122
173
  rbx.platform.typedef.uintptr_t = ulong
123
- rbx.platform.typedef.ulong = ulong
124
- rbx.platform.typedef.unchar = uchar
125
174
  rbx.platform.typedef.useconds_t = uint
126
175
  rbx.platform.typedef.ushort = ushort
127
- rbx.platform.typedef.vaddr_t = ulong
128
- rbx.platform.typedef.vsize_t = ulong
176
+ rbx.platform.typedef.vm_offset_t = ulong
177
+ rbx.platform.typedef.vm_ooffset_t = ulong
178
+ rbx.platform.typedef.vm_paddr_t = ulong
179
+ rbx.platform.typedef.vm_pindex_t = ulong
180
+ rbx.platform.typedef.vm_size_t = ulong
181
+ rbx.platform.typedef.wchar_t = uint
data/lib/ffi/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module FFI
2
- VERSION = '1.15.1'
2
+ VERSION = '1.15.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.1
4
+ version: 1.15.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wayne Meissner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-22 00:00:00.000000000 Z
11
+ date: 2021-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake