mkmf-lite 0.6.0 → 0.7.0
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/CHANGES.md +7 -0
- data/Rakefile +5 -0
- data/lib/mkmf/lite.rb +12 -8
- data/mkmf-lite.gemspec +1 -1
- data/spec/mkmf_lite_spec.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +6 -6
- 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: 72c07ed9aa3d8aef12735ec24829df062a4e0461251cbc756f1b45e4e7db0c84
|
4
|
+
data.tar.gz: '04393aeb022d6686e32406dc15f0370ca128ca65508ef11d07c477c1049a3728'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 69323d948af2a1c02bdb3b2189b083f66a19438c6ecfa142414b25f46465aa2c5e1860c3993d6dbac69eb337de939ef80defce1caa65267c25db6a9a5f1b9148
|
7
|
+
data.tar.gz: cd7610faf9fcc1638980e4938b87fa73a9beb6376e291c51ba4fdc79e616a01e4db2493211d55ccf07d1f58c94b077e15c573a403bc363f42c657b4005f347b9
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/CHANGES.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
## 0.7.0 - 13-Sep-2024
|
2
|
+
* Append typical library switches to the compiler command. There was a private
|
3
|
+
method already in the code but I wasn't using it.
|
4
|
+
* Append DEFS if present in your RbConfig options. This was mainly to ensure
|
5
|
+
that FILE_OFFSET_BITS is passed, if present, but there could be other
|
6
|
+
macros in theory.
|
7
|
+
|
1
8
|
## 0.6.0 - 26-Sep-2023
|
2
9
|
* Added the memoist gem and memoized the results of all public methods since
|
3
10
|
the odds of them changing between calls is basically zero.
|
data/Rakefile
CHANGED
data/lib/mkmf/lite.rb
CHANGED
@@ -16,10 +16,14 @@ module Mkmf
|
|
16
16
|
extend Memoist
|
17
17
|
|
18
18
|
# The version of the mkmf-lite library
|
19
|
-
MKMF_LITE_VERSION = '0.
|
19
|
+
MKMF_LITE_VERSION = '0.7.0'
|
20
20
|
|
21
21
|
private
|
22
22
|
|
23
|
+
def cpp_defs
|
24
|
+
RbConfig::CONFIG['DEFS']
|
25
|
+
end
|
26
|
+
|
23
27
|
# rubocop:disable Layout/LineLength
|
24
28
|
def cpp_command
|
25
29
|
command = RbConfig::CONFIG['CC'] || RbConfig::CONFIG['CPP'] || File.which('cc') || File.which('gcc') || File.which('cl')
|
@@ -44,11 +48,11 @@ module Mkmf
|
|
44
48
|
|
45
49
|
memoize :cpp_out_file
|
46
50
|
|
47
|
-
# TODO: We should adjust this based on OS. For now we're using
|
48
|
-
# arguments I think you'll typically see set on Linux and BSD.
|
49
51
|
def cpp_libraries
|
50
|
-
if RbConfig::CONFIG['
|
51
|
-
|
52
|
+
return if File::ALT_SEPARATOR && RbConfig::CONFIG['CPP'] =~ /^cl/
|
53
|
+
|
54
|
+
if cpp_command =~ /clang/i
|
55
|
+
'-Lrt -Ldl -Lcrypt -Lm'
|
52
56
|
else
|
53
57
|
'-lrt -ldl -lcrypt -lm'
|
54
58
|
end
|
@@ -205,7 +209,7 @@ module Mkmf
|
|
205
209
|
Dir.chdir(Dir.tmpdir) do
|
206
210
|
File.write(cpp_source_file, code)
|
207
211
|
|
208
|
-
command = "#{cpp_command} "
|
212
|
+
command = "#{cpp_command} #{cpp_libraries} #{cpp_defs} "
|
209
213
|
command += "#{cpp_out_file} "
|
210
214
|
command += cpp_source_file
|
211
215
|
|
@@ -254,9 +258,9 @@ module Mkmf
|
|
254
258
|
File.write(cpp_source_file, code)
|
255
259
|
|
256
260
|
if command_options
|
257
|
-
command = "#{cpp_command} #{command_options} "
|
261
|
+
command = "#{cpp_command} #{command_options} #{cpp_libraries} #{cpp_defs} "
|
258
262
|
else
|
259
|
-
command = "#{cpp_command} "
|
263
|
+
command = "#{cpp_command} #{cpp_libraries} #{cpp_defs} "
|
260
264
|
end
|
261
265
|
|
262
266
|
command += "#{cpp_out_file} "
|
data/mkmf-lite.gemspec
CHANGED
@@ -3,7 +3,7 @@ require 'rubygems'
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = 'mkmf-lite'
|
5
5
|
spec.summary = 'A lighter version of mkmf designed for use as a library'
|
6
|
-
spec.version = '0.
|
6
|
+
spec.version = '0.7.0'
|
7
7
|
spec.author = 'Daniel J. Berger'
|
8
8
|
spec.license = 'Apache-2.0'
|
9
9
|
spec.email = 'djberg96@gmail.com'
|
data/spec/mkmf_lite_spec.rb
CHANGED
@@ -20,7 +20,7 @@ RSpec.describe Mkmf::Lite do
|
|
20
20
|
|
21
21
|
describe 'constants' do
|
22
22
|
example 'version information' do
|
23
|
-
expect(described_class::MKMF_LITE_VERSION).to eq('0.
|
23
|
+
expect(described_class::MKMF_LITE_VERSION).to eq('0.7.0')
|
24
24
|
expect(described_class::MKMF_LITE_VERSION).to be_frozen
|
25
25
|
end
|
26
26
|
end
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mkmf-lite
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel J. Berger
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain:
|
11
11
|
- |
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
ORVCZpRuCPpmC8qmqxUnARDArzucjaclkxjLWvCVHeFa9UP7K3Nl9oTjJNv+7/jM
|
36
36
|
WZs4eecIcUc4tKdHxcAJ0MO/Dkqq7hGaiHpwKY76wQ1+8xAh
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date:
|
38
|
+
date: 2024-09-14 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: ptools
|
@@ -160,7 +160,7 @@ metadata:
|
|
160
160
|
source_code_uri: https://github.com/djberg96/mkmf-lite
|
161
161
|
wiki_uri: https://github.com/djberg96/mkmf-lite/wiki
|
162
162
|
rubygems_mfa_required: 'true'
|
163
|
-
post_install_message:
|
163
|
+
post_install_message:
|
164
164
|
rdoc_options: []
|
165
165
|
require_paths:
|
166
166
|
- lib
|
@@ -175,8 +175,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
175
175
|
- !ruby/object:Gem::Version
|
176
176
|
version: '0'
|
177
177
|
requirements: []
|
178
|
-
rubygems_version: 3.
|
179
|
-
signing_key:
|
178
|
+
rubygems_version: 3.5.11
|
179
|
+
signing_key:
|
180
180
|
specification_version: 4
|
181
181
|
summary: A lighter version of mkmf designed for use as a library
|
182
182
|
test_files:
|
metadata.gz.sig
CHANGED
Binary file
|