rb_sys 0.9.36 → 0.9.38
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/rb_sys/cargo_builder.rb +5 -3
- data/lib/rb_sys/mkmf.rb +18 -5
- data/lib/rb_sys/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +2 -2
- 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: 7d4ca0e7a03a649cabcf365abb97e67a56dfe2cb9517597a179f5f6f8cd89de7
|
4
|
+
data.tar.gz: 1a4a6e2f26fe766ed781270cc8bed950d6a0c4f510a8e442cc5649f40dea2a8f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 49dbba58b16a1a47fe7616bc6ee866b64cdf474b385ff9dc73d584877ba4b70203f195fafd91614c76fffd04bb4b6ba59002f1290e60372ddb9917a5ce97cf94
|
7
|
+
data.tar.gz: 8eea32117820b1b9c03b5c88732fa5071e20cde66a9cdbfe4af7d11d741b2d112bdce0bd27ca727828b5c106c619ce7177eaf015b843a525455d5356713b5828
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/rb_sys/cargo_builder.rb
CHANGED
@@ -131,7 +131,6 @@ module RbSys
|
|
131
131
|
# We want to use the same linker that Ruby uses, so that the linker flags from
|
132
132
|
# mkmf work properly.
|
133
133
|
def linker_args
|
134
|
-
# Have to handle CC="cl /nologo" on mswin
|
135
134
|
cc_flag = Shellwords.split(makefile_config("CC"))
|
136
135
|
linker = cc_flag.shift
|
137
136
|
link_args = cc_flag.flat_map { |a| ["-C", "link-arg=#{a}"] }
|
@@ -142,8 +141,11 @@ module RbSys
|
|
142
141
|
end
|
143
142
|
|
144
143
|
def mswin_link_args
|
145
|
-
|
146
|
-
["-
|
144
|
+
args = []
|
145
|
+
args += ["-l", makefile_config("LIBRUBYARG_SHARED").chomp(".lib")]
|
146
|
+
args += split_flags("LIBS").flat_map { |lib| ["-l", lib.chomp(".lib")] }
|
147
|
+
args += split_flags("LOCAL_LIBS").flat_map { |lib| ["-l", lib.chomp(".lib")] }
|
148
|
+
args
|
147
149
|
end
|
148
150
|
|
149
151
|
def libruby_args(dest_dir)
|
data/lib/rb_sys/mkmf.rb
CHANGED
@@ -10,6 +10,8 @@ require_relative "mkmf/config"
|
|
10
10
|
module RbSys
|
11
11
|
# Helper class for creating Rust Makefiles
|
12
12
|
module Mkmf
|
13
|
+
GLOBAL_RUSTFLAGS = ["--cfg=rb_sys_gem"]
|
14
|
+
|
13
15
|
# Helper for building Rust extensions by creating a Ruby compatible makefile
|
14
16
|
# for Rust. By using this class, your rust extension will be 100% compatible
|
15
17
|
# with the rake-compiler gem, which allows for easy cross compilation.
|
@@ -62,6 +64,7 @@ module RbSys
|
|
62
64
|
|
63
65
|
#{conditional_assign("RB_SYS_CARGO_PROFILE", builder.profile)}
|
64
66
|
#{conditional_assign("RB_SYS_CARGO_FEATURES", builder.features.join(","))}
|
67
|
+
#{conditional_assign("RB_SYS_GLOBAL_RUSTFLAGS", GLOBAL_RUSTFLAGS.join(" "))}
|
65
68
|
#{conditional_assign("RB_SYS_EXTRA_RUSTFLAGS", builder.extra_rustflags.join(" "))}
|
66
69
|
|
67
70
|
# Set dirname for the profile, since the profiles do not directly map to target dir (i.e. dev -> debug)
|
@@ -105,7 +108,7 @@ module RbSys
|
|
105
108
|
#{endif_stmt}
|
106
109
|
|
107
110
|
#{env_vars(builder)}
|
108
|
-
#{export_env("RUSTFLAGS", "$(
|
111
|
+
#{export_env("RUSTFLAGS", "$(RB_SYS_GLOBAL_RUSTFLAGS) $(RB_SYS_EXTRA_RUSTFLAGS) $(RUSTFLAGS)")}
|
109
112
|
|
110
113
|
FORCE: ;
|
111
114
|
|
@@ -113,13 +116,11 @@ module RbSys
|
|
113
116
|
\t$(ECHO) creating target directory \\($(@)\\)
|
114
117
|
\t$(Q) $(MAKEDIRS) $(TARGET_DIR)
|
115
118
|
|
116
|
-
|
117
|
-
\t$(ECHO) generating $(@)
|
118
|
-
\t$(Q) ($(COPY) $(srcdir)/$(TARGET).def $@ 2> /dev/null) || (echo EXPORTS && echo $(TARGET_ENTRY)) > $@
|
119
|
+
#{deffile_definition}
|
119
120
|
|
120
121
|
#{optional_rust_toolchain(builder)}
|
121
122
|
|
122
|
-
$(RUSTLIB): $(DEFFILE) FORCE
|
123
|
+
$(RUSTLIB): #{deffile_definition ? "$(DEFFILE) " : nil}FORCE
|
123
124
|
\t$(ECHO) generating $(@) \\("$(RB_SYS_CARGO_PROFILE)"\\)
|
124
125
|
\t$(Q) #{full_cargo_command}
|
125
126
|
|
@@ -185,6 +186,18 @@ module RbSys
|
|
185
186
|
cargo_command
|
186
187
|
end
|
187
188
|
|
189
|
+
def deffile_definition
|
190
|
+
warn("EXPORT_PREFIX is not defined, please require \"mkmf\" before requiring \"rb_sys/mkmf\"") unless defined?(EXPORT_PREFIX)
|
191
|
+
|
192
|
+
return unless defined?(EXPORT_PREFIX) && EXPORT_PREFIX
|
193
|
+
|
194
|
+
@deffile_definition ||= <<~MAKE
|
195
|
+
$(DEFFILE): $(TARGET_DIR)
|
196
|
+
\t$(ECHO) generating $(@)
|
197
|
+
\t$(Q) ($(COPY) $(srcdir)/$(TARGET).def $@ 2> /dev/null) || (echo EXPORTS && echo $(TARGET_ENTRY)) > $@
|
198
|
+
MAKE
|
199
|
+
end
|
200
|
+
|
188
201
|
def optional_rust_toolchain(builder)
|
189
202
|
<<~MAKE
|
190
203
|
#{conditional_assign("RB_SYS_FORCE_INSTALL_RUST_TOOLCHAIN", builder.force_install_rust_toolchain)}
|
data/lib/rb_sys/version.rb
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rb_sys
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.38
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ian Ker-Seymer
|
@@ -30,7 +30,7 @@ cert_chain:
|
|
30
30
|
Rl+ASkq2/1i07TkBpCf+2hq66+h/hx+/Y/KrUzXfe0jtvil0WESkJT2kqRqHWNhD
|
31
31
|
9GKBxaQlXokNDtWCm1/gl6cD8WRZ0N5S4ZGJT1FLLsA=
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date: 2022-11-
|
33
|
+
date: 2022-11-10 00:00:00.000000000 Z
|
34
34
|
dependencies: []
|
35
35
|
description:
|
36
36
|
email:
|
metadata.gz.sig
CHANGED
Binary file
|