@@ -169,10 +169,17 @@ function op {
169
169
then
170
170
recipe_build
171
171
fi
172
+
173
+ release_flag=" --release"
174
+ if [ " $cargo_build_debug_mode " == 1 ]
175
+ then
176
+ release_flag=
177
+ fi
178
+
172
179
if [ " $skip " -eq " 0" ]
173
180
then
174
181
cp -r " $ROOT /Xargo.toml" .
175
- xargo build --target " $TARGET " --release $CARGOFLAGS
182
+ xargo build --target " $TARGET " $release_flag $CARGOFLAGS
176
183
fi
177
184
popd > /dev/null
178
185
;;
@@ -183,10 +190,17 @@ function op {
183
190
then
184
191
recipe_test
185
192
fi
193
+
194
+ release_flag=" --release"
195
+ if [ " $cargo_build_debug_mode " == 1 ]
196
+ then
197
+ release_flag=
198
+ fi
199
+
186
200
if [ " $skip " -eq " 0" ]
187
201
then
188
202
cp -r " $ROOT /Xargo.toml" .
189
- xargo test --no-run --target " $TARGET " --release $CARGOFLAGS
203
+ xargo test --no-run --target " $TARGET " $release_flag $CARGOFLAGS
190
204
fi
191
205
popd > /dev/null
192
206
;;
@@ -215,13 +229,24 @@ function op {
215
229
if [ " $skip " -eq " 0" ]
216
230
then
217
231
# TODO xargo install --root "../stage" $CARGOFLAGS
218
- bins=" $( find target/$TARGET /release/ -maxdepth 1 -type f ! -name ' *.*' ) "
232
+ if [ " $cargo_build_debug_mode " == 1 ]
233
+ then
234
+ build=debug
235
+ else
236
+ build=release
237
+ fi
238
+ bins=" $( find target/$TARGET /$build / -maxdepth 1 -type f ! -name ' *.*' ) "
219
239
if [ -n " $bins " ]
220
240
then
221
241
mkdir -p " ../stage/$BINDIR "
222
242
for bin in $bins
223
243
do
224
- strip -v " $bin " -o " ../stage/$BINDIR /$( basename $bin ) "
244
+ if [ " $cargo_build_debug_mode " == 1 ]
245
+ then
246
+ cp -v " $bin " " ../stage/$BINDIR /$( basename $bin ) "
247
+ else
248
+ strip -v " $bin " -o " ../stage/$BINDIR /$( basename $bin ) "
249
+ fi
225
250
done
226
251
fi
227
252
fi
@@ -262,9 +287,22 @@ then
262
287
then
263
288
cd " $ROOT /recipes/$1 "
264
289
source recipe.sh
290
+
291
+ ops=()
292
+ cargo_build_debug_mode=
265
293
for arg in " ${@: 2} "
266
294
do
267
- op " $1 " " $arg "
295
+ if [ " $arg " == " --debug" ]
296
+ then
297
+ cargo_build_debug_mode=1
298
+ else
299
+ ops[${# ops[@]} ]=" $arg "
300
+ fi
301
+ done
302
+
303
+ for i in " ${ops[@]} "
304
+ do
305
+ op " $1 " " $i "
268
306
done
269
307
else
270
308
echo " cook.sh: recipe '$1 ' not found" >&2
0 commit comments