From e0994b42c0c9e79515ce31f726585b62390fa3cb Mon Sep 17 00:00:00 2001 From: Syed Daanish Date: Sun, 26 Jul 2026 19:49:39 +0100 Subject: [PATCH] Add some useful mgems --- .gitmodules | 9 +++++++++ libs/changes.patch | 23 +++++++++++++++++++++++ libs/mgems/mruby-env | 1 + libs/mgems/mruby-marshal-c | 1 + libs/mgems/mruby-process | 1 + samples/button.rb | 2 +- 6 files changed, 36 insertions(+), 1 deletion(-) create mode 160000 libs/mgems/mruby-env create mode 160000 libs/mgems/mruby-marshal-c create mode 160000 libs/mgems/mruby-process diff --git a/.gitmodules b/.gitmodules index 6cbca6f..af73a21 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,3 +2,12 @@ path = libs/mruby url = https://github.com/mruby/mruby.git ignore = dirty +[submodule "libs/mgems/mruby-process"] + path = libs/mgems/mruby-process + url = https://github.com/katzer/mruby-process +[submodule "libs/mgems/mruby-env"] + path = libs/mgems/mruby-env + url = https://github.com/iij/mruby-env.git +[submodule "libs/mgems/mruby-marshal-c"] + path = libs/mgems/mruby-marshal-c + url = https://github.com/LanzaSchneider/mruby-marshal-c.git diff --git a/libs/changes.patch b/libs/changes.patch index bdc7611..eb23bdb 100644 --- a/libs/changes.patch +++ b/libs/changes.patch @@ -20,6 +20,17 @@ # Use mrbgems # conf.gem 'examples/mrbgems/ruby_extension_example' +@@ -16,6 +28,10 @@ + # include the GEM box + conf.gembox 'default' + ++ conf.gem '../mgems/mruby-env' ++ conf.gem '../mgems/mruby-process' ++ conf.gem '../mgems/mruby-marshal-c' ++ + # C compiler settings + # conf.cc do |cc| + # cc.command = ENV['CC'] || 'gcc' @@ -79,5 +79,5 @@ # Turn on `enable_debug` for better debugging # conf.enable_debug @@ -28,3 +39,15 @@ + # conf.enable_bintest + # conf.enable_test end +--- ./mgems/mruby-process/mrbgem.rake ++++ ./mgems/mruby-process/mrbgem.rake +@@ -54,4 +54,9 @@ + else + spec.objs.delete objfile("#{build_dir}/src/win32") + end ++ ++ spec.objs.delete objfile("#{build_dir}/src/internal") ++ spec.objs.delete objfile("#{build_dir}/src/dln") ++ spec.objs.delete objfile("#{build_dir}/src/signal") ++ spec.objs.delete objfile("#{build_dir}/src/status") + end diff --git a/libs/mgems/mruby-env b/libs/mgems/mruby-env new file mode 160000 index 0000000..056ae32 --- /dev/null +++ b/libs/mgems/mruby-env @@ -0,0 +1 @@ +Subproject commit 056ae324451ef16a50c7887e117f0ea30921b71b diff --git a/libs/mgems/mruby-marshal-c b/libs/mgems/mruby-marshal-c new file mode 160000 index 0000000..fc40e2e --- /dev/null +++ b/libs/mgems/mruby-marshal-c @@ -0,0 +1 @@ +Subproject commit fc40e2ec0f3647db3a5ebf38c46754fe697cceb4 diff --git a/libs/mgems/mruby-process b/libs/mgems/mruby-process new file mode 160000 index 0000000..715014b --- /dev/null +++ b/libs/mgems/mruby-process @@ -0,0 +1 @@ +Subproject commit 715014b1d9334ad6ff6fa3c55b87957ad1a6363a diff --git a/samples/button.rb b/samples/button.rb index 2f43e5e..76848d3 100644 --- a/samples/button.rb +++ b/samples/button.rb @@ -19,7 +19,7 @@ bg_image1_a = Animation.from(bg_image1) App.language = :en App.localize(:en, :btn_text, "Click %{name}!") -text = ElementText.new :btn_text, default_font, 0xFFFF00, {name: "Me"}, position: {x: 50, y: 50}, z: 1, click_mode: :block, alpha: 1 +text = ElementText.new :btn_text, default_font, 0xFFFF00, {name: ENV.fetch("name", "me")}, position: {x: 50, y: 50}, z: 1, click_mode: :block, alpha: 1 rect = ElementRect.new 100, 25, 0xFF0000, position: {x: 50, y: 50}, z: 0, rotation: 60, scale: { x: 1, y: 1 }, alpha: 0.8, click_mode: :block