From 06d236d535174e686bd188a0821d99d6b8383ab6 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Sat, 25 Apr 2026 19:54:35 +0900 Subject: [PATCH] mruby-bin-config: register installer in `products` instead of `bins` `build.bins` is for compiled binaries with bare names; entries are fed through `exefile()` in `tasks/bin.rake`, which appends `exts.executable` (e.g. `.exe`) when no extension is present. When `ENV['OS']` is not `Windows_NT` but the toolchain has `exts.executable=".exe"` (e.g. cross builds, or environments where `OS` is unset under visualcpp), `mruby-bin-config` ended up with a file task at `.../mruby-config` while rake asked for `.../mruby-config.exe`, aborting with "Don't know how to build task". Skip the `bins` path and call `build.define_installer` directly with `mruby_config_path`, mirroring the existing `iscross` branch. The file task path now always matches the script content's extension (`.bat` on Windows, no extension elsewhere). close #6807, reported by UENO, M. (@eunos-1128). Co-authored-by: Claude --- mrbgems/mruby-bin-config/mrbgem.rake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mrbgems/mruby-bin-config/mrbgem.rake b/mrbgems/mruby-bin-config/mrbgem.rake index 4ab90203f..3ee4b0e4d 100644 --- a/mrbgems/mruby-bin-config/mrbgem.rake +++ b/mrbgems/mruby-bin-config/mrbgem.rake @@ -28,7 +28,7 @@ MRuby::Gem::Specification.new('mruby-bin-config') do |spec| if iscross build.products << mruby_config_path else - build.bins << mruby_config + build.products << build.define_installer(mruby_config_path) end directory mruby_config_dir