summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--ruby.c10
2 files changed, 16 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 797c0fe76b..238af8a35b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Fri Feb 11 23:27:50 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp>
+
+ * ruby.c (proc_options): add --gem=enabled as an alias of
+ --enable=gems and --gem=disabled as an alias of --disable=gems.
+ Gem named "enabled" or "disabled" has already been reserved
+ legitimately for this purpose.
+
Fri Feb 11 23:17:04 2011 Tanaka Akira <akr@fsij.org>
* ext/dl/cfunc.c: parenthesize macro arguments.
diff --git a/ruby.c b/ruby.c
index 86d779e63b..87ca6bed23 100644
--- a/ruby.c
+++ b/ruby.c
@@ -1072,7 +1072,15 @@ proc_options(long argc, char **argv, struct cmdline_options *opt, int envopt)
add_modules(&opt->req_list, s);
}
else if (is_option_with_arg("gem", Qfalse, Qtrue)) {
- add_gems(&opt->req_list, s);
+ if (strcmp("disabled", s) == 0) {
+ opt->disable |= DISABLE_BIT(gems);
+ }
+ else if (strcmp("enabled", s) == 0) {
+ opt->disable &= ~DISABLE_BIT(gems);
+ }
+ else {
+ add_gems(&opt->req_list, s);
+ }
}
else if (strcmp("version", s) == 0) {
if (envopt) goto noenvopt_long;