bungee_gum 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|