rcee_system 0.7.0 → 0.8.0
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/README.md +4 -1
- data/ext/system/extconf.rb +1 -0
- data/lib/rcee/system/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f66c47793909bf9d2a3b489f3e55436dfe9412c6d759462b759e36795da63037
|
|
4
|
+
data.tar.gz: 2242b1b832fb4abacf3e7543b02f62b250ca38c66bab67559ede5086d7f003fc
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4277c338aada727619e512e1be7a2a28086775a9874ff44fe2889fe233f628382b980a730223910b90031dd8d938683cf0564b6282828a960a8e40ac5c3e81b2
|
|
7
|
+
data.tar.gz: 45c9da5f091189602743b08163aa0adbcdafe52ba284fdb8ef229a6a21a2f001d040da26cb12f76dc8ed48a9136d4c7744aa98f9134733a990c86508110a6832
|
data/README.md
CHANGED
|
@@ -45,11 +45,14 @@ That's pretty simple, but is enough to demonstrate the integration with `libyaml
|
|
|
45
45
|
The `extconf.rb` is still simple (and similar to `isolated/ext/isolated/extconf.rb` but contains this additional block:
|
|
46
46
|
|
|
47
47
|
``` ruby
|
|
48
|
+
dir_config('libyaml')
|
|
48
49
|
unless find_header("yaml.h") && find_library("yaml", "yaml_get_version")
|
|
49
50
|
abort("\nERROR: *** could not find libyaml development environment ***\n\n")
|
|
50
51
|
end
|
|
51
52
|
```
|
|
52
53
|
|
|
54
|
+
`dir_config` is optional and mostly for users on MacOS as most ruby installers build Ruby with the `--with-libyaml-dir=/opt/homebrew/opt/libyaml` flag. The `dir_config` allows for this flag to be taken in consideration and help Ruby determine where to search for the yaml library.
|
|
55
|
+
|
|
53
56
|
`find_header` and `find_library` are `MakeMakefile` helper methods which will search your system's standard directories looking for files. If it finds them, it makes sure the compile step will be able to find `yaml.h`, and the link step will be able to find the `libyaml` library file.
|
|
54
57
|
|
|
55
58
|
We ask `find_header` to look for the `yaml.h` header file because that's what our C code needs (see `ext/system/system.h`). We ask `find_library` to look for a library named `libyaml` and check that it has the function `yaml_get_version()` defined in it.
|
|
@@ -86,7 +89,7 @@ See [.github/workflows/system.yml](../.github/workflows/system.yml)
|
|
|
86
89
|
Key things to note:
|
|
87
90
|
|
|
88
91
|
- matrix across all supported Rubies and platforms
|
|
89
|
-
- use the github action `
|
|
92
|
+
- use the github action `ruby/setup-ruby-pkgs@v1` to install system libraries on each platform
|
|
90
93
|
|
|
91
94
|
|
|
92
95
|
## What Can Go Wrong
|
data/ext/system/extconf.rb
CHANGED
data/lib/rcee/system/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rcee_system
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.8.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mike Dalessio
|
|
@@ -45,7 +45,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
46
|
version: '0'
|
|
47
47
|
requirements: []
|
|
48
|
-
rubygems_version:
|
|
48
|
+
rubygems_version: 4.0.3
|
|
49
49
|
specification_version: 4
|
|
50
50
|
summary: Example gem demonstrating a basic C extension.
|
|
51
51
|
test_files: []
|