From 63ebdd4bed99439e372547ee1c8c95411be9cb21 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 25 Dec 2015 13:43:29 +0000 Subject: [PATCH] version.h: RUBY_RELEASE_DATE from YMD * configure.in: extract RUBY_RELEASE_DAY at generating Makefile. * version.h (RUBY_RELEASE_DATE): construct from RUBY_RELEASE_YEAR, RUBY_RELEASE_MONTH, and RUBY_RELEASE_DAY. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 +++++++ Makefile.in | 1 + configure.in | 7 ++++++- version.h | 18 +++++++++++++++++- 4 files changed, 31 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 17aaf6c5e5..cf2ec9ae83 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Fri Dec 25 22:43:26 2015 Nobuyoshi Nakada + + * configure.in: extract RUBY_RELEASE_DAY at generating Makefile. + + * version.h (RUBY_RELEASE_DATE): construct from RUBY_RELEASE_YEAR, + RUBY_RELEASE_MONTH, and RUBY_RELEASE_DAY. + Fri Dec 25 21:33:06 2015 Yukihiro Matsumoto * version.h (RUBY_VERSION): 2.4.0 development has started. diff --git a/Makefile.in b/Makefile.in index 76b61f5581..4e9288d569 100644 --- a/Makefile.in +++ b/Makefile.in @@ -90,6 +90,7 @@ POSTLINK = @POSTLINK@ RUBY_BASE_NAME=@RUBY_BASE_NAME@ RUBY_PROGRAM_VERSION=@RUBY_PROGRAM_VERSION@ +RUBY_RELEASE_DATE = $(RUBY_RELEASE_YEAR)-$(RUBY_RELEASE_MONTH)-$(RUBY_RELEASE_DAY) RUBY_INSTALL_NAME=@RUBY_INSTALL_NAME@ RUBY_SO_NAME=@RUBY_SO_NAME@ EXEEXT = @EXEEXT@ diff --git a/configure.in b/configure.in index 9953dcdae5..c6a4edaed7 100644 --- a/configure.in +++ b/configure.in @@ -4409,7 +4409,12 @@ AC_CONFIG_FILES(Makefile, [ ["git svn"], [VCSUP='$(VCS) rebase $(GITSVNREBASEOPTIONS)'], [git], [VCSUP='$(VCS) pull $(GITPULLOPTIONS)'], [VCSUP='$(VCS)']) - sed -n 's/^@%:@define \(RUBY_RELEASE_DATE\) "\(.*\)"/\1 = \2/p' "$srcdir/version.h" + sed -n \ + -e '[/^@%:@define \(RUBY_RELEASE_[A-Z]*\) \([0-9][0-9]*\)/]{' \ + -e 's//\1 = \2/' \ + -e '[s/ \([0-9]\)$/ 0\1/]' \ + -e p \ + -e '}' "$srcdir/version.h" sed '/^MISSING/s/\$U\././g;/^VCS *=/s#@VCS@#'"$VCS"'#;/^VCSUP *=/s#@VCSUP@#'"$VCSUP"'#' Makefile echo; test x"$EXEEXT" = x || echo 'miniruby: miniruby$(EXEEXT)' if test "$gnumake" != yes; then diff --git a/version.h b/version.h index 3d385b1f4f..f745ad187f 100644 --- a/version.h +++ b/version.h @@ -1,5 +1,5 @@ #define RUBY_VERSION "2.4.0" -#define RUBY_RELEASE_DATE "2015-12-25" +#define RUBY_RELEASE_DATE RUBY_RELEASE_YEAR_STR"-"RUBY_RELEASE_MONTH_STR"-"RUBY_RELEASE_DAY_STR #define RUBY_PATCHLEVEL -1 #define RUBY_RELEASE_YEAR 2015 @@ -8,6 +8,22 @@ #include "ruby/version.h" +#ifndef TOKEN_PASTE +#define TOKEN_PASTE(x,y) x##y +#endif +#define ONLY_ONE_DIGIT(x) TOKEN_PASTE(10,x) < 1000 +#define RUBY_RELEASE_YEAR_STR STRINGIZE(RUBY_RELEASE_YEAR) +#if ONLY_ONE_DIGIT(RUBY_RELEASE_MONTH) +#define RUBY_RELEASE_MONTH_STR "0"STRINGIZE(RUBY_RELEASE_MONTH) +#else +#define RUBY_RELEASE_MONTH_STR STRINGIZE(RUBY_RELEASE_MONTH) +#endif +#if ONLY_ONE_DIGIT(RUBY_RELEASE_DAY) +#define RUBY_RELEASE_DAY_STR "0"STRINGIZE(RUBY_RELEASE_DAY) +#else +#define RUBY_RELEASE_DAY_STR STRINGIZE(RUBY_RELEASE_DAY) +#endif + #if !defined RUBY_LIB_VERSION && defined RUBY_LIB_VERSION_STYLE # if RUBY_LIB_VERSION_STYLE == 3 # define RUBY_LIB_VERSION STRINGIZE(RUBY_API_VERSION_MAJOR)"."STRINGIZE(RUBY_API_VERSION_MINOR)"."STRINGIZE(RUBY_API_VERSION_TEENY)