rake-compiler-dock 1.2.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/Dockerfile.jruby +1 -1
- data/Dockerfile.mri.erb +15 -9
- data/History.md +9 -0
- data/README.md +1 -1
- data/build/math_h.patch +189 -0
- data/lib/rake_compiler_dock/version.rb +2 -2
- data/test/env/Dockerfile.centos +5 -0
- data/test/rcd_test/Rakefile +1 -0
- data/test/rcd_test/ext/mri/extconf.rb +3 -0
- data/test/rcd_test/ext/mri/rcd_test_ext.c +16 -0
- data/test/rcd_test/test/test_basic.rb +9 -0
- data.tar.gz.sig +0 -0
- metadata +25 -24
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 99e2b1ce6f914bd9b6449320d1c65bb5ac3cdd7f9afcf0189ee15a48e0bd8aac
|
4
|
+
data.tar.gz: 661f6b93c01a36993f89f121d1316d999c3e2f61fa7d577660a1e9d6a5898ff4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3a4639688aeeb8c3b6d0142fadcf6c088f86f3672aca2873df1af672b22b7cff93245905ac6b00aac0c4467f495a5df6d9309f3660bbf27ee8f98d3dc47d8b92
|
7
|
+
data.tar.gz: bbc042289e0ad041c42a5b6fd13ee55930546535505e59d310c11d7b9a0130718f5c84f78bc6b539437b58e1329ad2a5a2e082125fffeefd40f6173df739eab1
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/Dockerfile.jruby
CHANGED
@@ -2,7 +2,7 @@ FROM ubuntu:20.04
|
|
2
2
|
|
3
3
|
ENV DEBIAN_FRONTEND noninteractive
|
4
4
|
RUN apt-get -y update && \
|
5
|
-
apt-get install -y curl git-core xz-utils wget unzip sudo gpg dirmngr openjdk-
|
5
|
+
apt-get install -y curl git-core xz-utils wget unzip sudo gpg dirmngr openjdk-11-jdk-headless maven && \
|
6
6
|
rm -rf /var/lib/apt/lists/*
|
7
7
|
|
8
8
|
# Add "rvm" as system group, to avoid conflicts with host GIDs typically starting with 1000
|
data/Dockerfile.mri.erb
CHANGED
@@ -76,14 +76,15 @@ RUN sudo mkdir -p /usr/local/rake-compiler && \
|
|
76
76
|
USER root
|
77
77
|
|
78
78
|
<% if platform=~/x64-mingw-ucrt/ %>
|
79
|
-
COPY --from=larskanis/mingw64-ucrt:20.04
|
80
|
-
|
81
|
-
/
|
82
|
-
/
|
83
|
-
/
|
84
|
-
/
|
85
|
-
/
|
86
|
-
/debs/
|
79
|
+
COPY --from=larskanis/mingw64-ucrt:20.04 \
|
80
|
+
/build/binutils-mingw-w64-x86-64_2.34-6ubuntu1.3+8.8_amd64.deb \
|
81
|
+
/build/g++-mingw-w64-x86-64_9.3.0-17ubuntu1~20.04+22~exp1ubuntu4_amd64.deb \
|
82
|
+
/build/gcc-mingw-w64-base_9.3.0-17ubuntu1~20.04+22~exp1ubuntu4_amd64.deb \
|
83
|
+
/build/gcc-mingw-w64-x86-64_9.3.0-17ubuntu1~20.04+22~exp1ubuntu4_amd64.deb \
|
84
|
+
/build/mingw-w64-common_7.0.0-2_all.deb \
|
85
|
+
/build/mingw-w64-x86-64-dev_7.0.0-2_all.deb \
|
86
|
+
/debs/
|
87
|
+
RUN dpkg -i /debs/*.deb
|
87
88
|
|
88
89
|
<% elsif !manylinux %>
|
89
90
|
RUN apt-get -y update && \
|
@@ -207,7 +208,7 @@ RUN bash -c " \
|
|
207
208
|
RUN find /usr/local/rake-compiler/ruby/*linux*/ -name libruby.so | xargs rm
|
208
209
|
RUN find /usr/local/rake-compiler/ruby/*linux*/ -name libruby-static.a | while read f ; do cp $f `echo $f | sed s/-static//` ; done
|
209
210
|
RUN find /usr/local/rake-compiler/ruby/*linux*/ -name libruby.a | while read f ; do ar t $f | xargs ar d $f ; done
|
210
|
-
RUN find /usr/local/rake-compiler/ruby/*linux*/ -name mkmf.rb | while read f ; do sed -i ':a;N;$!ba;s/TRY_LINK = [^\n]*\n[^\n]*\n[^\n]*LOCAL_LIBS)/& -lruby-static/' $f ; done
|
211
|
+
RUN find /usr/local/rake-compiler/ruby/*linux*/ -name mkmf.rb | while read f ; do sed -i ':a;N;$!ba;s/TRY_LINK = [^\n]*\n[^\n]*\n[^\n]*LOCAL_LIBS)/& -lruby-static -lpthread -lrt -ldl <% if platform=~/x86/ %> -lcrypt <% end %>/' $f ; done
|
211
212
|
<% end %>
|
212
213
|
|
213
214
|
<% if platform=~/mingw/ %>
|
@@ -247,6 +248,11 @@ RUN for f in addr2line gcc gcov-tool ranlib ar dwp gcc-ranlib nm readelf as elfe
|
|
247
248
|
|
248
249
|
# ruby-2.5 links to libcrypt, which isn't necessary for extensions
|
249
250
|
RUN find /usr/local/rake-compiler/ruby -name rbconfig.rb | while read f ; do sed -i 's/-lcrypt//' $f ; done
|
251
|
+
|
252
|
+
# Use builtin functions of newer gcc to avoid linker issues on Musl based Linux
|
253
|
+
COPY build/math_h.patch /root/
|
254
|
+
RUN cd /usr/include/ && \
|
255
|
+
patch -p1 < /root/math_h.patch
|
250
256
|
<% end %>
|
251
257
|
|
252
258
|
<% if platform=~/arm64-darwin/ %>
|
data/History.md
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
1.2.1 / 2022-03-17
|
2
|
+
------------------
|
3
|
+
|
4
|
+
* Fix testing for ruby C-API functions in mkmf. #65, #67
|
5
|
+
* Use openjdk 11 to make maven work on ubuntu 20.04. #64
|
6
|
+
* Remove x86_64-w64-mingw32-pkg-config from the x64-mingw-ucrt image. #63
|
7
|
+
* Add a patch for math.h to use gcc builtins and to improve compat with musl based systems. #42
|
8
|
+
|
9
|
+
|
1
10
|
1.2.0 / 2022-01-04
|
2
11
|
------------------
|
3
12
|
|
data/README.md
CHANGED
@@ -108,7 +108,7 @@ jobs:
|
|
108
108
|
name: "native-gem"
|
109
109
|
runs-on: ubuntu-latest
|
110
110
|
container:
|
111
|
-
image: "larskanis/rake-compiler-dock-mri-x86_64-linux:1.2.
|
111
|
+
image: "larskanis/rake-compiler-dock-mri-x86_64-linux:1.2.1"
|
112
112
|
steps:
|
113
113
|
- uses: actions/checkout@v2
|
114
114
|
- run: bundle install && bundle exec rake gem:x86_64-linux:rcd
|
data/build/math_h.patch
ADDED
@@ -0,0 +1,189 @@
|
|
1
|
+
--- centos7/math.h 2020-12-31 23:15:40.678843646 +0100
|
2
|
+
+++ builtin/math.h 2022-03-16 21:35:13.086169875 +0100
|
3
|
+
@@ -206,68 +206,142 @@
|
4
|
+
FP_NORMAL
|
5
|
+
};
|
6
|
+
|
7
|
+
+
|
8
|
+
+/* Depending on the type of TG_ARG, call an appropriately suffixed
|
9
|
+
+ version of FUNC with arguments (including parentheses) ARGS.
|
10
|
+
+ Suffixed functions may not exist for long double if it has the same
|
11
|
+
+ format as double, or for other types with the same format as float,
|
12
|
+
+ double or long double. The behavior is undefined if the argument
|
13
|
+
+ does not have a real floating type. The definition may use a
|
14
|
+
+ conditional expression, so all suffixed versions of FUNC must
|
15
|
+
+ return the same type (FUNC may include a cast if necessary rather
|
16
|
+
+ than being a single identifier). */
|
17
|
+
+#ifdef __NO_LONG_DOUBLE_MATH
|
18
|
+
+# if __HAVE_DISTINCT_FLOAT128
|
19
|
+
+# error "Distinct _Float128 without distinct long double not supported."
|
20
|
+
+# endif
|
21
|
+
+# define __MATH_TG(TG_ARG, FUNC, ARGS) \
|
22
|
+
+ (sizeof (TG_ARG) == sizeof (float) ? FUNC ## f ARGS : FUNC ARGS)
|
23
|
+
+#elif __HAVE_DISTINCT_FLOAT128
|
24
|
+
+# if __HAVE_GENERIC_SELECTION
|
25
|
+
+# if __HAVE_FLOATN_NOT_TYPEDEF && __HAVE_FLOAT32
|
26
|
+
+# define __MATH_TG_F32(FUNC, ARGS) _Float32: FUNC ## f ARGS,
|
27
|
+
+# else
|
28
|
+
+# define __MATH_TG_F32(FUNC, ARGS)
|
29
|
+
+# endif
|
30
|
+
+# if __HAVE_FLOATN_NOT_TYPEDEF && __HAVE_FLOAT64X
|
31
|
+
+# if __HAVE_FLOAT64X_LONG_DOUBLE
|
32
|
+
+# define __MATH_TG_F64X(FUNC, ARGS) _Float64x: FUNC ## l ARGS,
|
33
|
+
+# else
|
34
|
+
+# define __MATH_TG_F64X(FUNC, ARGS) _Float64x: FUNC ## f128 ARGS,
|
35
|
+
+# endif
|
36
|
+
+# else
|
37
|
+
+# define __MATH_TG_F64X(FUNC, ARGS)
|
38
|
+
+# endif
|
39
|
+
+# define __MATH_TG(TG_ARG, FUNC, ARGS) \
|
40
|
+
+ _Generic ((TG_ARG), \
|
41
|
+
+ float: FUNC ## f ARGS, \
|
42
|
+
+ __MATH_TG_F32 (FUNC, ARGS) \
|
43
|
+
+ default: FUNC ARGS, \
|
44
|
+
+ long double: FUNC ## l ARGS, \
|
45
|
+
+ __MATH_TG_F64X (FUNC, ARGS) \
|
46
|
+
+ _Float128: FUNC ## f128 ARGS)
|
47
|
+
+# else
|
48
|
+
+# if __HAVE_FLOATN_NOT_TYPEDEF
|
49
|
+
+# error "Non-typedef _FloatN but no _Generic."
|
50
|
+
+# endif
|
51
|
+
+# define __MATH_TG(TG_ARG, FUNC, ARGS) \
|
52
|
+
+ __builtin_choose_expr \
|
53
|
+
+ (__builtin_types_compatible_p (__typeof (TG_ARG), float), \
|
54
|
+
+ FUNC ## f ARGS, \
|
55
|
+
+ __builtin_choose_expr \
|
56
|
+
+ (__builtin_types_compatible_p (__typeof (TG_ARG), double), \
|
57
|
+
+ FUNC ARGS, \
|
58
|
+
+ __builtin_choose_expr \
|
59
|
+
+ (__builtin_types_compatible_p (__typeof (TG_ARG), long double), \
|
60
|
+
+ FUNC ## l ARGS, \
|
61
|
+
+ FUNC ## f128 ARGS)))
|
62
|
+
+# endif
|
63
|
+
+#else
|
64
|
+
+# define __MATH_TG(TG_ARG, FUNC, ARGS) \
|
65
|
+
+ (sizeof (TG_ARG) == sizeof (float) \
|
66
|
+
+ ? FUNC ## f ARGS \
|
67
|
+
+ : sizeof (TG_ARG) == sizeof (double) \
|
68
|
+
+ ? FUNC ARGS \
|
69
|
+
+ : FUNC ## l ARGS)
|
70
|
+
+#endif
|
71
|
+
+
|
72
|
+
/* Return number of classification appropriate for X. */
|
73
|
+
-# ifdef __NO_LONG_DOUBLE_MATH
|
74
|
+
-# define fpclassify(x) \
|
75
|
+
- (sizeof (x) == sizeof (float) ? __fpclassifyf (x) : __fpclassify (x))
|
76
|
+
-# else
|
77
|
+
-# define fpclassify(x) \
|
78
|
+
- (sizeof (x) == sizeof (float) \
|
79
|
+
- ? __fpclassifyf (x) \
|
80
|
+
- : sizeof (x) == sizeof (double) \
|
81
|
+
- ? __fpclassify (x) : __fpclassifyl (x))
|
82
|
+
+# if ((__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
|
83
|
+
+ ) \
|
84
|
+
+ && (!defined __OPTIMIZE_SIZE__ || defined __cplusplus)
|
85
|
+
+ /* The check for __cplusplus allows the use of the builtin, even
|
86
|
+
+ when optimization for size is on. This is provided for
|
87
|
+
+ libstdc++, only to let its configure test work when it is built
|
88
|
+
+ with -Os. No further use of this definition of fpclassify is
|
89
|
+
+ expected in C++ mode, since libstdc++ provides its own version
|
90
|
+
+ of fpclassify in cmath (which undefines fpclassify). */
|
91
|
+
+# define fpclassify(x) __builtin_fpclassify (FP_NAN, FP_INFINITE, \
|
92
|
+
+ FP_NORMAL, FP_SUBNORMAL, FP_ZERO, x)
|
93
|
+
+# else
|
94
|
+
+# define fpclassify(x) __MATH_TG ((x), __fpclassify, (x))
|
95
|
+
# endif
|
96
|
+
|
97
|
+
/* Return nonzero value if sign of X is negative. */
|
98
|
+
-# ifdef __NO_LONG_DOUBLE_MATH
|
99
|
+
-# define signbit(x) \
|
100
|
+
- (sizeof (x) == sizeof (float) ? __signbitf (x) : __signbit (x))
|
101
|
+
-# else
|
102
|
+
-# define signbit(x) \
|
103
|
+
- (sizeof (x) == sizeof (float) \
|
104
|
+
- ? __signbitf (x) \
|
105
|
+
- : sizeof (x) == sizeof (double) \
|
106
|
+
- ? __signbit (x) : __signbitl (x))
|
107
|
+
+# if __GNUC_PREREQ (6,0)
|
108
|
+
+# define signbit(x) __builtin_signbit (x)
|
109
|
+
+# elif defined __cplusplus
|
110
|
+
+ /* In C++ mode, __MATH_TG cannot be used, because it relies on
|
111
|
+
+ __builtin_types_compatible_p, which is a C-only builtin.
|
112
|
+
+ The check for __cplusplus allows the use of the builtin instead of
|
113
|
+
+ __MATH_TG. This is provided for libstdc++, only to let its configure
|
114
|
+
+ test work. No further use of this definition of signbit is expected
|
115
|
+
+ in C++ mode, since libstdc++ provides its own version of signbit
|
116
|
+
+ in cmath (which undefines signbit). */
|
117
|
+
+# define signbit(x) __builtin_signbitl (x)
|
118
|
+
+# elif __GNUC_PREREQ (4,0)
|
119
|
+
+# define signbit(x) __MATH_TG ((x), __builtin_signbit, (x))
|
120
|
+
+# else
|
121
|
+
+# define signbit(x) __MATH_TG ((x), __signbit, (x))
|
122
|
+
# endif
|
123
|
+
|
124
|
+
/* Return nonzero value if X is not +-Inf or NaN. */
|
125
|
+
-# ifdef __NO_LONG_DOUBLE_MATH
|
126
|
+
-# define isfinite(x) \
|
127
|
+
- (sizeof (x) == sizeof (float) ? __finitef (x) : __finite (x))
|
128
|
+
-# else
|
129
|
+
-# define isfinite(x) \
|
130
|
+
- (sizeof (x) == sizeof (float) \
|
131
|
+
- ? __finitef (x) \
|
132
|
+
- : sizeof (x) == sizeof (double) \
|
133
|
+
- ? __finite (x) : __finitel (x))
|
134
|
+
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
|
135
|
+
+# define isfinite(x) __builtin_isfinite (x)
|
136
|
+
+# else
|
137
|
+
+# define isfinite(x) __MATH_TG ((x), __finite, (x))
|
138
|
+
# endif
|
139
|
+
|
140
|
+
/* Return nonzero value if X is neither zero, subnormal, Inf, nor NaN. */
|
141
|
+
-# define isnormal(x) (fpclassify (x) == FP_NORMAL)
|
142
|
+
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
|
143
|
+
+# define isnormal(x) __builtin_isnormal (x)
|
144
|
+
+# else
|
145
|
+
+# define isnormal(x) (fpclassify (x) == FP_NORMAL)
|
146
|
+
+# endif
|
147
|
+
|
148
|
+
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
|
149
|
+
we already have this functions `__isnan' and it is faster. */
|
150
|
+
-# ifdef __NO_LONG_DOUBLE_MATH
|
151
|
+
-# define isnan(x) \
|
152
|
+
- (sizeof (x) == sizeof (float) ? __isnanf (x) : __isnan (x))
|
153
|
+
-# else
|
154
|
+
-# define isnan(x) \
|
155
|
+
- (sizeof (x) == sizeof (float) \
|
156
|
+
- ? __isnanf (x) \
|
157
|
+
- : sizeof (x) == sizeof (double) \
|
158
|
+
- ? __isnan (x) : __isnanl (x))
|
159
|
+
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
|
160
|
+
+# define isnan(x) __builtin_isnan (x)
|
161
|
+
+# else
|
162
|
+
+# define isnan(x) __MATH_TG ((x), __isnan, (x))
|
163
|
+
# endif
|
164
|
+
|
165
|
+
/* Return nonzero value if X is positive or negative infinity. */
|
166
|
+
-# ifdef __NO_LONG_DOUBLE_MATH
|
167
|
+
+# if __HAVE_DISTINCT_FLOAT128 && !__GNUC_PREREQ (7,0) \
|
168
|
+
+ && !defined __SUPPORT_SNAN__ && !defined __cplusplus
|
169
|
+
+ /* Since __builtin_isinf_sign is broken for float128 before GCC 7.0,
|
170
|
+
+ use the helper function, __isinff128, with older compilers. This is
|
171
|
+
+ only provided for C mode, because in C++ mode, GCC has no support
|
172
|
+
+ for __builtin_types_compatible_p (and when in C++ mode, this macro is
|
173
|
+
+ not used anyway, because libstdc++ headers undefine it). */
|
174
|
+
# define isinf(x) \
|
175
|
+
- (sizeof (x) == sizeof (float) ? __isinff (x) : __isinf (x))
|
176
|
+
+ (__builtin_types_compatible_p (__typeof (x), _Float128) \
|
177
|
+
+ ? __isinff128 (x) : __builtin_isinf_sign (x))
|
178
|
+
+# elif (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
|
179
|
+
+# define isinf(x) __builtin_isinf_sign (x)
|
180
|
+
# else
|
181
|
+
-# define isinf(x) \
|
182
|
+
- (sizeof (x) == sizeof (float) \
|
183
|
+
- ? __isinff (x) \
|
184
|
+
- : sizeof (x) == sizeof (double) \
|
185
|
+
- ? __isinf (x) : __isinfl (x))
|
186
|
+
+# define isinf(x) __MATH_TG ((x), __isinf, (x))
|
187
|
+
# endif
|
188
|
+
|
189
|
+
/* Bitmasks for the math_errhandling macro. */
|
data/test/env/Dockerfile.centos
CHANGED
@@ -2,6 +2,11 @@ ARG from_image
|
|
2
2
|
FROM ${from_image}
|
3
3
|
|
4
4
|
RUN uname -a
|
5
|
+
|
6
|
+
# Change download address of Centos-8 which is EOL
|
7
|
+
RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
|
8
|
+
RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
|
9
|
+
|
5
10
|
RUN yum install -y ruby git
|
6
11
|
|
7
12
|
RUN ruby --version
|
data/test/rcd_test/Rakefile
CHANGED
@@ -56,6 +56,7 @@ namespace "gem" do
|
|
56
56
|
require 'rake_compiler_dock'
|
57
57
|
sh "bundle package --all"
|
58
58
|
RakeCompilerDock.sh <<-EOT, rubyvm: "jruby", platform: "jruby", mountdir: Dir.pwd + "/../.."
|
59
|
+
mvn archetype:generate -DartifactId=test -DarchetypeVersion=1.4 -DinteractiveMode=false -DgroupId=test -Dpackage=test &&
|
59
60
|
bundle --local &&
|
60
61
|
bundle exec rake java gem
|
61
62
|
EOT
|
@@ -16,5 +16,8 @@ else
|
|
16
16
|
puts "Gem::Platform.local.to_s: #{Gem::Platform.local.to_s.inspect}"
|
17
17
|
puts "-"*70
|
18
18
|
|
19
|
+
have_func('rb_thread_call_without_gvl', 'ruby/thread.h') ||
|
20
|
+
raise("rb_thread_call_without_gvl() not found")
|
21
|
+
|
19
22
|
create_makefile("rcd_test/rcd_test_ext")
|
20
23
|
end
|
@@ -6,6 +6,20 @@
|
|
6
6
|
|
7
7
|
VALUE rb_mRcdTest;
|
8
8
|
|
9
|
+
static VALUE
|
10
|
+
rcdt_isinf_eh(VALUE self, VALUE rb_float) {
|
11
|
+
Check_Type(rb_float, T_FLOAT);
|
12
|
+
|
13
|
+
return isinf(RFLOAT_VALUE(rb_float)) ? Qtrue : Qfalse;
|
14
|
+
}
|
15
|
+
|
16
|
+
static VALUE
|
17
|
+
rcdt_isnan_eh(VALUE self, VALUE rb_float) {
|
18
|
+
Check_Type(rb_float, T_FLOAT);
|
19
|
+
|
20
|
+
return isnan(RFLOAT_VALUE(rb_float)) ? Qtrue : Qfalse;
|
21
|
+
}
|
22
|
+
|
9
23
|
static VALUE
|
10
24
|
rcdt_do_something(VALUE self)
|
11
25
|
{
|
@@ -32,4 +46,6 @@ Init_rcd_test_ext(void)
|
|
32
46
|
rb_mRcdTest = rb_define_module("RcdTest");
|
33
47
|
rb_define_singleton_method(rb_mRcdTest, "do_something", rcdt_do_something, 0);
|
34
48
|
rb_define_singleton_method(rb_mRcdTest, "darwin_builtin_available?", rcdt_darwin_builtin_available_eh, 0);
|
49
|
+
rb_define_singleton_method(rb_mRcdTest, "isinf?", rcdt_isinf_eh, 1);
|
50
|
+
rb_define_singleton_method(rb_mRcdTest, "isnan?", rcdt_isnan_eh, 1);
|
35
51
|
}
|
@@ -19,4 +19,13 @@ class TestBasic < Minitest::Test
|
|
19
19
|
assert_equal("__builtin_available is not defined", e.message)
|
20
20
|
end
|
21
21
|
end
|
22
|
+
|
23
|
+
def test_floating_point_classification_macros
|
24
|
+
skip("jruby should not run libc-specific tests") if RUBY_ENGINE == "jruby"
|
25
|
+
refute(RcdTest.isinf?(42.0))
|
26
|
+
assert(RcdTest.isinf?(Float::INFINITY))
|
27
|
+
refute(RcdTest.isnan?(42.0))
|
28
|
+
assert(RcdTest.isnan?(Float::NAN))
|
29
|
+
end
|
30
|
+
|
22
31
|
end
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake-compiler-dock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lars Kanis
|
@@ -11,31 +11,31 @@ cert_chain:
|
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIETTCCArWgAwIBAgIBATANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDDB1sYXJz
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
14
|
+
L0RDPWdyZWl6LXJlaW5zZG9yZi9EQz1kZTAeFw0yMjAyMTQxMzMwNTZaFw0yMzAy
|
15
|
+
MTQxMzMwNTZaMCgxJjAkBgNVBAMMHWxhcnMvREM9Z3JlaXotcmVpbnNkb3JmL0RD
|
16
|
+
PWRlMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAwum6Y1KznfpzXOT/
|
17
|
+
mZgJTBbxZuuZF49Fq3K0WA67YBzNlDv95qzSp7V/7Ek3NCcnT7G+2kSuhNo1FhdN
|
18
|
+
eSDO/moYebZNAcu3iqLsuzuULXPLuoU0GsMnVMqV9DZPh7cQHE5EBZ7hlzDBK7k/
|
19
|
+
8nBMvR0mHo77kIkapHc26UzVq/G0nKLfDsIHXVylto3PjzOumjG6GhmFN4r3cP6e
|
20
|
+
SDfl1FSeRYVpt4kmQULz/zdSaOH3AjAq7PM2Z91iGwQvoUXMANH2v89OWjQO/NHe
|
21
|
+
JMNDFsmHK/6Ji4Kk48Z3TyscHQnipAID5GhS1oD21/WePdj7GhmbF5gBzkV5uepd
|
22
|
+
eJQPgWGwrQW/Z2oPjRuJrRofzWfrMWqbOahj9uth6WSxhNexUtbjk6P8emmXOJi5
|
23
|
+
chQPnWX+N3Gj+jjYxqTFdwT7Mj3pv1VHa+aNUbqSPpvJeDyxRIuo9hvzDaBHb/Cg
|
24
|
+
9qRVcm8a96n4t7y2lrX1oookY6bkBaxWOMtWlqIprq8JZXM9AgMBAAGjgYEwfzAJ
|
25
|
+
BgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUOIdbSMr3VFrTCO9/cTM0
|
26
|
+
0exHzBcwIgYDVR0RBBswGYEXbGFyc0BncmVpei1yZWluc2RvcmYuZGUwIgYDVR0S
|
27
27
|
BBswGYEXbGFyc0BncmVpei1yZWluc2RvcmYuZGUwDQYJKoZIhvcNAQELBQADggGB
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
AFWP7F/y3Oq3NgrqUOnjKOeDaBa7AqNhHS+PZg+C90lnJzMgOs4KKgZYxqSQVSab
|
29
|
+
SCEmzIO/StkXY4NpJ4fYLrHemf/fJy1wPyu+fNdp5SEEUwEo+2toRFlzTe4u4LdS
|
30
|
+
QC636nPPTMt8H3xz2wf/lUIUeo2Qc95Qt2BQM465ibbG9kmA3c7Sopx6yOabYOAl
|
31
|
+
KPRbOSEPiWYcF9Suuz8Gdf8jxEtPlnZiwRvnYJ+IHMq3XQCJWPpMzdDMbtlgHbXE
|
32
|
+
vq1zOTLMSYAS0UB3uionR4yo1hLz60odwkCm7qf0o2Ci/5OjtB0a89VuyqRU2vUJ
|
33
|
+
QH95WBjDJ6lCCW7J0mrMPnJQSUFTmufsU6jOChvPaCeAzW1YwrsP/YKnvwueG7ip
|
34
|
+
VOdW6RitjtFxhS7evRL0201+KUvLz12zZWWjOcujlQs64QprxOtiv/MiisKb1Ng+
|
35
|
+
oL1mUdzB8KrZL4/WbG5YNX6UTtJbIOu9qEFbBAy4/jtIkJX+dlNoFwd4GXQW1YNO
|
36
|
+
nA==
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date: 2022-
|
38
|
+
date: 2022-03-17 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: bundler
|
@@ -106,6 +106,7 @@ files:
|
|
106
106
|
- Rakefile
|
107
107
|
- bin/rake-compiler-dock
|
108
108
|
- build/gem_helper.rb
|
109
|
+
- build/math_h.patch
|
109
110
|
- build/mk_i686.rb
|
110
111
|
- build/parallel_docker_build.rb
|
111
112
|
- build/patches/ruby-2.5.9/no_sendfile.patch
|
metadata.gz.sig
CHANGED
Binary file
|