summaryrefslogtreecommitdiff
path: root/version.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-22 06:14:50 (GMT)
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-22 06:14:50 (GMT)
commitaefc34a041240889948f5af09c1526077c4fc0ca (patch)
tree8e14d160816e959172bcbb3db6e9660b009394df /version.c
parent482690cdf88158e62efb9ea3f5bea5f1a7bf7346 (diff)
* common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
* configure.in (STRINGIZE): stringizing macro. * include/ruby/defines.h (STRINGIZE): fallback. * tool/make-snapshot: new file. * version.c (ruby_description, ruby_copyright): string constants for -v option. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'version.c')
-rw-r--r--version.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/version.c b/version.c
index 4e54d06..9006d5e 100644
--- a/version.c
+++ b/version.c
@@ -14,34 +14,38 @@
#include "version.h"
#include <stdio.h>
+#define PRINT(type) puts(ruby_##type)
+#define MKSTR(type) rb_obj_freeze(rb_str_new(ruby_##type, sizeof(ruby_##type)-1))
+
const char ruby_version[] = RUBY_VERSION;
const char ruby_release_date[] = RUBY_RELEASE_DATE;
const char ruby_platform[] = RUBY_PLATFORM;
const int ruby_patchlevel = RUBY_PATCHLEVEL;
+const char ruby_description[] = RUBY_DESCRIPTION;
+const char ruby_copyright[] = RUBY_COPYRIGHT;
void
Init_version(void)
{
- VALUE v = rb_obj_freeze(rb_str_new2(ruby_version));
- VALUE d = rb_obj_freeze(rb_str_new2(ruby_release_date));
- VALUE p = rb_obj_freeze(rb_str_new2(ruby_platform));
-
- rb_define_global_const("RUBY_VERSION", v);
- rb_define_global_const("RUBY_RELEASE_DATE", d);
- rb_define_global_const("RUBY_PLATFORM", p);
+ rb_define_global_const("RUBY_VERSION", MKSTR(version));
+ rb_define_global_const("RUBY_RELEASE_DATE", MKSTR(release_date));
+ rb_define_global_const("RUBY_PLATFORM", MKSTR(platform));
rb_define_global_const("RUBY_PATCHLEVEL", INT2FIX(RUBY_PATCHLEVEL));
+ rb_define_global_const("RUBY_REVISION", INT2FIX(RUBY_REVISION));
+ rb_define_global_const("RUBY_DESCRIPTION", MKSTR(description));
+ rb_define_global_const("RUBY_COPYRIGHT", MKSTR(copyright));
}
void
ruby_show_version(void)
{
- printf("ruby %s (%s patchlevel %d) [%s]\n", RUBY_VERSION, RUBY_RELEASE_DATE, RUBY_PATCHLEVEL, RUBY_PLATFORM);
+ PRINT(description);
fflush(stdout);
}
void
ruby_show_copyright(void)
{
- printf("ruby - Copyright (C) 1993-%d Yukihiro Matsumoto\n", RUBY_RELEASE_YEAR);
+ PRINT(copyright);
exit(0);
}