Skip to content

Commit ed134ad

Browse files
rake format
1 parent eecb8ab commit ed134ad

File tree

4 files changed

+58
-46
lines changed

4 files changed

+58
-46
lines changed

Rakefile

Lines changed: 27 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ require "ruby_wasm/packager"
99

1010
Dir.glob("tasks/**.rake").each { |f| import f }
1111

12-
BUILD_SOURCES = ["3.3", "3.2", "head"]
13-
BUILD_PROFILES = ["full", "minimal"]
12+
BUILD_SOURCES = %w[3.3 3.2 head]
13+
BUILD_PROFILES = %w[full minimal]
1414

15-
BUILDS = BUILD_SOURCES.product(BUILD_PROFILES).map do |src, profile|
16-
[src, "wasm32-unknown-wasi", profile]
17-
end + BUILD_SOURCES.map do |src|
18-
[src, "wasm32-unknown-emscripten", "full"]
19-
end
15+
BUILDS =
16+
BUILD_SOURCES
17+
.product(BUILD_PROFILES)
18+
.map { |src, profile| [src, "wasm32-unknown-wasi", profile] } +
19+
BUILD_SOURCES.map { |src| [src, "wasm32-unknown-emscripten", "full"] }
2020

2121
NPM_PACKAGES = [
2222
{
@@ -54,11 +54,14 @@ STANDALONE_PACKAGES = [
5454
LIB_ROOT = File.dirname(__FILE__)
5555

5656
TOOLCHAINS = {}
57-
BUILDS.map { |_, target, _| target }.uniq.each do |target|
58-
build_dir = File.join(LIB_ROOT, "build")
59-
toolchain = RubyWasm::Toolchain.get(target, build_dir)
60-
TOOLCHAINS[toolchain.name] = toolchain
61-
end
57+
BUILDS
58+
.map { |_, target, _| target }
59+
.uniq
60+
.each do |target|
61+
build_dir = File.join(LIB_ROOT, "build")
62+
toolchain = RubyWasm::Toolchain.get(target, build_dir)
63+
TOOLCHAINS[toolchain.name] = toolchain
64+
end
6265

6366
namespace :build do
6467
BUILD_TASKS =
@@ -67,7 +70,18 @@ namespace :build do
6770

6871
desc "Cross-build Ruby for #{@target}"
6972
task name do
70-
sh *["exe/rbwasm", "build", "--ruby-version", src, "--target", target, "--build-profile", profile, "-o", "/dev/null"]
73+
sh *[
74+
"exe/rbwasm",
75+
"build",
76+
"--ruby-version",
77+
src,
78+
"--target",
79+
target,
80+
"--build-profile",
81+
profile,
82+
"-o",
83+
"/dev/null"
84+
]
7185
end
7286
end
7387

lib/ruby_wasm/cli.rb

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ def initialize(stdout:, stderr:)
1111

1212
def run(args)
1313
available_commands = %w[build]
14-
parser = OptionParser
15-
.new do |opts|
14+
parser =
15+
OptionParser.new do |opts|
1616
opts.banner = <<~USAGE
1717
Usage: rbwasm [options...] [command]
1818
@@ -70,9 +70,10 @@ def build(args)
7070
options[:target_triplet] = triplet
7171
end
7272

73-
opts.on("--build-profile PROFILE", "Build profile. full or minimal") do |profile|
74-
options[:profile] = profile
75-
end
73+
opts.on(
74+
"--build-profile PROFILE",
75+
"Build profile. full or minimal"
76+
) { |profile| options[:profile] = profile }
7677

7778
opts.on("--optimize", "Optimize the output") do
7879
options[:optimize] = true
@@ -115,10 +116,7 @@ def build(args)
115116
private
116117

117118
def build_config(options)
118-
config = {
119-
target: options[:target_triplet],
120-
src: options[:ruby_version],
121-
}
119+
config = { target: options[:target_triplet], src: options[:ruby_version] }
122120
case options[:profile]
123121
when "full"
124122
config[:profile] = RubyWasm::Packager::ALL_DEFAULT_EXTS
@@ -131,10 +129,9 @@ def build_config(options)
131129
end
132130

133131
def do_build(executor, tmp_dir, options)
134-
if defined?(Bundler)
135-
definition = Bundler.definition
136-
end
137-
packager = RubyWasm::Packager.new(tmp_dir, options[:target_triplet], definition)
132+
definition = Bundler.definition if defined?(Bundler)
133+
packager =
134+
RubyWasm::Packager.new(tmp_dir, options[:target_triplet], definition)
138135
wasm_bytes = packager.package(executor, options)
139136
@stderr.puts "Size: #{SizeFormatter.format(wasm_bytes.size)}"
140137
case options[:output]

lib/ruby_wasm/packager.rb

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,7 @@ def self.build_source_aliases(root)
9494
url: "https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz"
9595
}
9696
}
97-
sources.each do |name, source|
98-
source[:name] = name
99-
end
97+
sources.each { |name, source| source[:name] = name }
10098

10199
build_manifest = File.join(root, "build_manifest.json")
102100
if File.exist?(build_manifest)
@@ -112,19 +110,18 @@ def self.build_source_aliases(root)
112110
sources
113111
end
114112

115-
ALL_DEFAULT_EXTS = "bigdecimal,cgi/escape,continuation,coverage,date,dbm,digest/bubblebabble,digest,digest/md5,digest/rmd160,digest/sha1,digest/sha2,etc,fcntl,fiber,gdbm,json,json/generator,json/parser,nkf,objspace,pathname,psych,racc/cparse,rbconfig/sizeof,ripper,stringio,strscan,monitor,zlib,openssl"
113+
ALL_DEFAULT_EXTS =
114+
"bigdecimal,cgi/escape,continuation,coverage,date,dbm,digest/bubblebabble,digest,digest/md5,digest/rmd160,digest/sha1,digest/sha2,etc,fcntl,fiber,gdbm,json,json/generator,json/parser,nkf,objspace,pathname,psych,racc/cparse,rbconfig/sizeof,ripper,stringio,strscan,monitor,zlib,openssl"
116115

117116
# Retrieves the build options used for building Ruby itself.
118117
def build_options
119118
default = {
120119
target: "wasm32-unknown-wasi",
121120
src: "3.3",
122-
default_exts: ALL_DEFAULT_EXTS,
121+
default_exts: ALL_DEFAULT_EXTS
123122
}
124123
override = {}
125-
if @config
126-
override = @config["build_options"] || {}
127-
end
124+
override = @config["build_options"] || {} if @config
128125
# Merge the default options with the config options
129126
default.merge(override)
130127
end
@@ -135,16 +132,22 @@ def full_build_options
135132
toolchain = RubyWasm::Toolchain.get(options[:target])
136133
build_dir = File.join(root, "build")
137134
rubies_dir = File.join(root, "rubies")
138-
src = if options[:src].is_a?(Hash)
139-
options[:src]
140-
else
141-
src_name = options[:src]
142-
aliases = self.class.build_source_aliases(root)
143-
aliases[src_name] || raise("Unknown Ruby source: #{src_name} (available: #{aliases.keys.join(", ")})")
144-
end
135+
src =
136+
if options[:src].is_a?(Hash)
137+
options[:src]
138+
else
139+
src_name = options[:src]
140+
aliases = self.class.build_source_aliases(root)
141+
aliases[src_name] ||
142+
raise(
143+
"Unknown Ruby source: #{src_name} (available: #{aliases.keys.join(", ")})"
144+
)
145+
end
145146
options.merge(
146-
toolchain: toolchain, build_dir: build_dir,
147-
rubies_dir: rubies_dir, src: src
147+
toolchain: toolchain,
148+
build_dir: build_dir,
149+
rubies_dir: rubies_dir,
150+
src: src
148151
)
149152
end
150153
end

packages/npm-packages/ruby-wasm-wasi/src/index.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -87,9 +87,7 @@ export class RubyVM {
8787
* @param args The command line arguments to pass to Ruby. Must be
8888
* an array of strings starting with the Ruby program name.
8989
*/
90-
initialize(
91-
args: string[] = ["ruby.wasm", "-EUTF-8", "-e_=0"],
92-
) {
90+
initialize(args: string[] = ["ruby.wasm", "-EUTF-8", "-e_=0"]) {
9391
const c_args = args.map((arg) => arg + "\0");
9492
this.guest.rubyInit();
9593
this.guest.rubySysinit(c_args);

0 commit comments

Comments
 (0)