bungee_gum 0.1.2 → 0.1.3
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/CHANGELOG.md +15 -0
- data/lib/bungee_gum/ruby_build.rb +57 -11
- data/lib/bungee_gum/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29b73801021ed4fc17f2998128096f4445754dd23871b09f6e8a1f872fb901c8
|
4
|
+
data.tar.gz: d6d36b10813c32094fa31dfb32c46ebef7b51d23af26a2a41f46577a88b9c62e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 498637804c88a1d7b390fc12b17861ed424c31bd629163d043f789a26ea490944d24353cc81aba821ddb48d2ceaca8dfbd9a4d5e23d3b93cd2872c5f791489d5
|
7
|
+
data.tar.gz: 72097de84ff8d341c6e5d65d4b2853202b3c4d6630d0f6fd4640eb1cf857c3f9387594d8ad000ebe7c4a9cce98e950cb5ffcb689e37dbbb749e8029800469d4f
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
|
3
|
+
## [0.1.3] - 2024-04-26
|
4
|
+
|
5
|
+
### Added
|
6
|
+
|
7
|
+
- Added the following options.
|
8
|
+
- `--with-force-yjit`
|
9
|
+
- `--only-force-yjit`
|
10
|
+
- `--with-force-rjit`
|
11
|
+
- `--only-force-rjit`
|
12
|
+
|
13
|
+
### Changed
|
14
|
+
|
15
|
+
- Changed from 'cppflags=-DRJIT_FORCE_ENABLE' to '--enable-rjit --disable-yjit' that the options used with '--with-rjit' and '--only-rjit'.
|
16
|
+
- Changed help messages for `--with-universalparser`, `--only-universalparser`, `--with-yjit`, `--only-yjit`, `--with-rjit`, and `--only-rjit`.
|
17
|
+
|
3
18
|
## [0.1.2] - 2024-04-08
|
4
19
|
|
5
20
|
### Fixed
|
@@ -9,13 +9,17 @@ class BungeeGum::RubyBuild
|
|
9
9
|
FOR_BUILD_REPOSITORY = 'build-ruby-repo'
|
10
10
|
FOR_UP_BUILD_REPOSITORY = 'build-up-ruby-repo'
|
11
11
|
FOR_YJIT_BUILD_REPOSITORY = 'build-yjit-ruby-repo'
|
12
|
+
FOR_FORCE_YJIT_BUILD_REPOSITORY = 'build-force-yjit-ruby-repo'
|
12
13
|
FOR_RJIT_BUILD_REPOSITORY = 'build-rjit-ruby-repo'
|
14
|
+
FOR_FORCE_RJIT_BUILD_REPOSITORY = 'build-force-rjit-ruby-repo'
|
13
15
|
|
14
16
|
INSTALL_PREFIX_BASE = "#{Dir.home}/.rubies"
|
15
17
|
INSTALL_PREFIX_RUBY = "#{INSTALL_PREFIX_BASE}/ruby-master"
|
16
18
|
INSTALL_PREFIX_RUBY_UP = "#{INSTALL_PREFIX_BASE}/ruby-universal-parser"
|
17
19
|
INSTALL_PREFIX_RUBY_YJIT = "#{INSTALL_PREFIX_BASE}/ruby-yjit"
|
20
|
+
INSTALL_PREFIX_RUBY_FORCE_YJIT = "#{INSTALL_PREFIX_BASE}/ruby-force-yjit"
|
18
21
|
INSTALL_PREFIX_RUBY_RJIT = "#{INSTALL_PREFIX_BASE}/ruby-rjit"
|
22
|
+
INSTALL_PREFIX_RUBY_FORCE_RJIT = "#{INSTALL_PREFIX_BASE}/ruby-force-rjit"
|
19
23
|
|
20
24
|
def initialize
|
21
25
|
@base_ruby_repo = "#{Dir.pwd}/#{LOCAL_RUBY_REPOSITORY}"
|
@@ -33,31 +37,47 @@ class BungeeGum::RubyBuild
|
|
33
37
|
param[:only] = {}
|
34
38
|
param[:skip] = {}
|
35
39
|
|
36
|
-
@opt.on('--with-universalparser', 'Add `--with-universalparser` if you also would like to build with Universal Parser
|
40
|
+
@opt.on('--with-universalparser', 'Add `--with-universalparser` if you also would like to build with enabled Universal Parser. This is equivalent to adding `cppflags=-DUNIVERSAL_PARSER`.') {|v|
|
37
41
|
param[:with][:up] = v
|
38
42
|
params << '--with-universalparser'
|
39
43
|
}
|
40
|
-
@opt.on('--only-universalparser', 'Add `--only-universalparser` if you would like to build with only Universal Parser
|
44
|
+
@opt.on('--only-universalparser', 'Add `--only-universalparser` if you would like to build with only enabled Universal Parser. This is equivalent to adding `cppflags=-DUNIVERSAL_PARSER`. This option can not be used in conjunction with other options.') {|v|
|
41
45
|
param[:only][:up] = v
|
42
46
|
params << '--only-universalparser'
|
43
47
|
}
|
44
|
-
@opt.on('--with-yjit', 'Add `--with-yjit` if you also would like to build with YJIT
|
48
|
+
@opt.on('--with-yjit', 'Add `--with-yjit` if you also would like to build with enabled YJIT. This is equivalent to adding `--enable-yjit`.') {|v|
|
45
49
|
param[:with][:yjit] = v
|
46
50
|
params << '--with-yjit'
|
47
51
|
}
|
48
|
-
@opt.on('--only-yjit', 'Add `--only-yjit` if you would like to build with only YJIT
|
52
|
+
@opt.on('--only-yjit', 'Add `--only-yjit` if you would like to build with only enabled YJIT. This is equivalent to adding `--enable-yjit`. This option can not be used in conjunction with other options.') {|v|
|
49
53
|
param[:only][:yjit] = v
|
50
54
|
params << '--only-yjit'
|
51
55
|
}
|
52
|
-
@opt.on('--with-
|
56
|
+
@opt.on('--with-force-yjit', 'Add `--with-force-yjit` if you also would like to build with enabled YJIT. This is equivalent to adding `cppflags=-DYJIT_FORCE_ENABLE`.') {|v|
|
57
|
+
param[:with][:force_yjit] = v
|
58
|
+
params << '--with-force-yjit'
|
59
|
+
}
|
60
|
+
@opt.on('--only-force-yjit', 'Add `--only-force-yjit` if you would like to build with only enabled YJIT. This is equivalent to adding `cppflags=-DYJIT_FORCE_ENABLE`. This option can not be used in conjunction with other options.') {|v|
|
61
|
+
param[:only][:force_yjit] = v
|
62
|
+
params << '--only-force-yjit'
|
63
|
+
}
|
64
|
+
@opt.on('--with-rjit', 'Add `--with-rjit` if you also would like to build with enabled RJIT. This is equivalent to adding `--enable-rjit --disable-yjit`.') {|v|
|
53
65
|
param[:with][:rjit] = v
|
54
66
|
params << '--with-rjit'
|
55
67
|
}
|
56
|
-
@opt.on('--only-rjit', 'Add `--only-rjit` if you would like to build with only RJIT
|
68
|
+
@opt.on('--only-rjit', 'Add `--only-rjit` if you would like to build with only enabled RJIT. This is equivalent to adding `--enable-rjit --disable-yjit`. This option can not be used in conjunction with other options.') {|v|
|
57
69
|
param[:only][:rjit] = v
|
58
70
|
params << '--only-rjit'
|
59
71
|
}
|
60
|
-
@opt.on('--
|
72
|
+
@opt.on('--with-force-rjit', 'Add `--with-force-rjit` if you also would like to build with enabled RJIT. This is equivalent to adding `cppflags=-DRJIT_FORCE_ENABLE`.') {|v|
|
73
|
+
param[:with][:force_rjit] = v
|
74
|
+
params << '--with-force-rjit'
|
75
|
+
}
|
76
|
+
@opt.on('--only-force-rjit', 'Add `--only-force-rjit` if you would like to build with only enabled RJIT. This is equivalent to adding `cppflags=-DRJIT_FORCE_ENABLE`. This option can not be used in conjunction with other options.') {|v|
|
77
|
+
param[:only][:force_rjit] = v
|
78
|
+
params << '--only-force-rjit'
|
79
|
+
}
|
80
|
+
@opt.on('--all-build', 'Add `--all-build` if you would like to build with all patterns that include `cppflags` option') {|v|
|
61
81
|
param[:all_build] = v
|
62
82
|
params << '--all-build'
|
63
83
|
}
|
@@ -66,9 +86,11 @@ class BungeeGum::RubyBuild
|
|
66
86
|
if param[:only].keys.size > 1 ||
|
67
87
|
(param[:only].keys.size == 1 && !param[:with].empty?) ||
|
68
88
|
(param[:only].keys.size == 1 && !!param[:all_build])
|
69
|
-
|
70
|
-
|
71
|
-
|
89
|
+
only_error('--only-universalparser') if params.include?('--only-universalparser')
|
90
|
+
only_error('--only-yjit') if params.include?('--only-yjit')
|
91
|
+
only_error('--only-force-yjit') if params.include?('--only-force-yjit')
|
92
|
+
only_error('--only-rjit') if params.include?('--only-rjit')
|
93
|
+
only_error('--only-force-rjit') if params.include?('--only-force-rjit')
|
72
94
|
|
73
95
|
exit 1
|
74
96
|
end
|
@@ -106,13 +128,33 @@ class BungeeGum::RubyBuild
|
|
106
128
|
}
|
107
129
|
end
|
108
130
|
|
131
|
+
if param[:only][:force_yjit] || param[:with][:force_yjit] || param[:all_build]
|
132
|
+
clone_or_pull(FOR_FORCE_YJIT_BUILD_REPOSITORY)
|
133
|
+
fork {
|
134
|
+
make_and_test(
|
135
|
+
FOR_FORCE_YJIT_BUILD_REPOSITORY,
|
136
|
+
'force-yjit',
|
137
|
+
"--prefix=#{INSTALL_PREFIX_RUBY_FORCE_YJIT} cppflags=-DYJIT_FORCE_ENABLE --disable-install-doc")
|
138
|
+
}
|
139
|
+
end
|
140
|
+
|
109
141
|
if param[:only][:rjit] || param[:with][:rjit] || param[:all_build]
|
110
142
|
clone_or_pull(FOR_RJIT_BUILD_REPOSITORY)
|
111
143
|
fork {
|
112
144
|
make_and_test(
|
113
145
|
FOR_RJIT_BUILD_REPOSITORY,
|
114
146
|
'rjit',
|
115
|
-
"--prefix=#{INSTALL_PREFIX_RUBY_RJIT}
|
147
|
+
"--prefix=#{INSTALL_PREFIX_RUBY_RJIT} --enable-rjit --disable-yjit --disable-install-doc")
|
148
|
+
}
|
149
|
+
end
|
150
|
+
|
151
|
+
if param[:only][:force_rjit] || param[:with][:force_rjit] || param[:all_build]
|
152
|
+
clone_or_pull(FOR_FORCE_RJIT_BUILD_REPOSITORY)
|
153
|
+
fork {
|
154
|
+
make_and_test(
|
155
|
+
FOR_FORCE_RJIT_BUILD_REPOSITORY,
|
156
|
+
'force-rjit',
|
157
|
+
"--prefix=#{INSTALL_PREFIX_RUBY_FORCE_RJIT} cppflags=-DRJIT_FORCE_ENABLE --disable-install-doc")
|
116
158
|
}
|
117
159
|
end
|
118
160
|
|
@@ -161,4 +203,8 @@ class BungeeGum::RubyBuild
|
|
161
203
|
file.close
|
162
204
|
end
|
163
205
|
end
|
206
|
+
|
207
|
+
def only_error(option)
|
208
|
+
puts "`#{option}` can not be used in conjunction with other options."
|
209
|
+
end
|
164
210
|
end
|
data/lib/bungee_gum/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bungee_gum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jinroq
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-04-
|
11
|
+
date: 2024-04-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: git
|
@@ -67,7 +67,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
requirements: []
|
70
|
-
rubygems_version: 3.5.
|
70
|
+
rubygems_version: 3.5.9
|
71
71
|
signing_key:
|
72
72
|
specification_version: 4
|
73
73
|
summary: This gem collects Ruby building and testing logs.
|