@@ -68,28 +68,14 @@ BUILD_PROFILES = {
68
68
}
69
69
}
70
70
71
- BUILDS = [
72
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "minimal" } ,
73
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "minimal-debug" } ,
74
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "minimal-js" } ,
75
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "minimal-js-debug" } ,
76
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "full" } ,
77
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "full-debug" } ,
78
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "full-js" } ,
79
- { src : "head" , target : "wasm32-unknown-wasi" , profile : "full-js-debug" } ,
80
- { src : "head" , target : "wasm32-unknown-emscripten" , profile : "minimal" } ,
81
- { src : "head" , target : "wasm32-unknown-emscripten" , profile : "full" } ,
82
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "minimal" } ,
83
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "minimal-debug" } ,
84
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "minimal-js" } ,
85
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "minimal-js-debug" } ,
86
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "full" } ,
87
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "full-debug" } ,
88
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "full-js" } ,
89
- { src : "3_2" , target : "wasm32-unknown-wasi" , profile : "full-js-debug" } ,
90
- { src : "3_2" , target : "wasm32-unknown-emscripten" , profile : "minimal" } ,
91
- { src : "3_2" , target : "wasm32-unknown-emscripten" , profile : "full" }
92
- ]
71
+ BUILDS =
72
+ BUILD_SOURCES . keys . flat_map do |src |
73
+ %w[ wasm32-unknown-wasi wasm32-unknown-emscripten ] . flat_map do |target |
74
+ BUILD_PROFILES . keys . map do |profile |
75
+ { src : src , target : target , profile : profile }
76
+ end
77
+ end
78
+ end
93
79
94
80
LIB_ROOT = File . dirname ( __FILE__ )
95
81
@@ -99,11 +85,13 @@ namespace :build do
99
85
BUILDS . each do |params |
100
86
name = "#{ params [ :src ] } -#{ params [ :target ] } -#{ params [ :profile ] } "
101
87
source = BUILD_SOURCES [ params [ :src ] ] . merge ( name : params [ :src ] )
102
- options = params . merge ( BUILD_PROFILES [ params [ :profile ] ] ) . merge ( src : source )
103
- debug = options [ :debug ]
104
- options . delete :profile
105
- options . delete :user_exts
106
- options . delete :debug
88
+ profile = BUILD_PROFILES [ params [ :profile ] ]
89
+ options = {
90
+ src : source ,
91
+ target : params [ :target ] ,
92
+ default_exts : profile [ :default_exts ]
93
+ }
94
+ debug = profile [ :debug ]
107
95
RubyWasm ::BuildTask . new ( name , **options ) do |t |
108
96
if debug
109
97
t . crossruby . debugflags = %w[ -g ]
@@ -123,7 +111,7 @@ namespace :build do
123
111
124
112
toolchain = t . toolchain
125
113
t . crossruby . user_exts =
126
- BUILD_PROFILES [ params [ : profile] ] [ :user_exts ] . map do |ext |
114
+ profile [ :user_exts ] . map do |ext |
127
115
srcdir = File . join ( LIB_ROOT , "ext" , ext )
128
116
RubyWasm ::CrossRubyExtProduct . new ( srcdir , toolchain )
129
117
end
0 commit comments