expressir 2.4.22 → 2.4.23
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
- data/ext/expressir_core/extconf.rb +14 -3
- data/lib/expressir/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b017c6f0192b50004e75435290e108e8f9ba5292364dd6e79a1700b105d5250c
|
|
4
|
+
data.tar.gz: 6aeb6eb0bef71db56f10e54294442a9af2bf1dc64d54b439855cf1c245b61e5d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a978df09647cdc6c2803622f8117c7b3a7a3ee78d2a65b03f12156661427b8cd7fa0e760bbbb15cc44889017a683df9d66202e49be38e86b42f84dee6cda39ba
|
|
7
|
+
data.tar.gz: a821f8ea9c281465d3e95414182a60e3296b8e7f48c8417cec9e8026ff32e206e67215b9515c444c417a70b8da8391d756f04b585380cc5762a99fd360b09255
|
|
@@ -2,10 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
require "mkmf"
|
|
4
4
|
|
|
5
|
+
# mkmf's dummy_makefile emits no targets, which rubygems' `make` run
|
|
6
|
+
# rejects ("No targets. Stop.") and fails the install; a real no-op
|
|
7
|
+
# makefile keeps every fallback path installing cleanly.
|
|
8
|
+
def write_noop_makefile
|
|
9
|
+
File.write("Makefile", <<~MK)
|
|
10
|
+
all:
|
|
11
|
+
install:
|
|
12
|
+
clean:
|
|
13
|
+
MK
|
|
14
|
+
end
|
|
15
|
+
|
|
5
16
|
# The Rust extension only builds against MRI's C API. Other engines
|
|
6
17
|
# fall back to the pure-Ruby parser path and must install cleanly.
|
|
7
18
|
if RUBY_ENGINE != "ruby" || ENV["EXPRESSIR_CORE"] == "0"
|
|
8
|
-
|
|
19
|
+
write_noop_makefile
|
|
9
20
|
warn "expressir: skipping the Rust core extension on #{RUBY_ENGINE}"
|
|
10
21
|
exit 0
|
|
11
22
|
end
|
|
@@ -14,7 +25,7 @@ end
|
|
|
14
25
|
# toolchain; rb-sys cannot bridge the two, so skip there too (windows
|
|
15
26
|
# installs fall back to the pure-Ruby parser).
|
|
16
27
|
if RUBY_PLATFORM.include?("mingw")
|
|
17
|
-
|
|
28
|
+
write_noop_makefile
|
|
18
29
|
warn "expressir: skipping the Rust core extension on mingw (msvc " \
|
|
19
30
|
"toolchain mismatch)"
|
|
20
31
|
exit 0
|
|
@@ -25,7 +36,7 @@ end
|
|
|
25
36
|
# (Expressir::Core::NATIVE_AVAILABLE stays false). Prebuilt platform
|
|
26
37
|
# gems are the follow-up so cargo-less MRI installs get binaries too.
|
|
27
38
|
unless find_executable("cargo")
|
|
28
|
-
|
|
39
|
+
write_noop_makefile
|
|
29
40
|
warn "expressir: cargo not found — skipping the Rust core extension " \
|
|
30
41
|
"(Expressir::Core falls back to the Ruby parser)"
|
|
31
42
|
exit 0
|
data/lib/expressir/version.rb
CHANGED