зеркало из https://github.com/github/ruby.git
tcltklib.c: compile info
* ext/tk/tcltklib.c (tcltklib_compile_info): build compile info statically. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
9fc370197a
Коммит
59cfce150b
|
@ -9998,62 +9998,43 @@ lib_get_reltype_name(self)
|
|||
static VALUE
|
||||
tcltklib_compile_info(void)
|
||||
{
|
||||
volatile VALUE ret;
|
||||
size_t size;
|
||||
static CONST char form[]
|
||||
= "tcltklib %s :: Ruby%s (%s) %s pthread :: Tcl%s(%s)/Tk%s(%s) %s";
|
||||
char *info;
|
||||
|
||||
size = strlen(form)
|
||||
+ strlen(TCLTKLIB_RELEASE_DATE)
|
||||
+ strlen(RUBY_VERSION)
|
||||
+ strlen(RUBY_RELEASE_DATE)
|
||||
+ strlen("without")
|
||||
+ strlen(TCL_PATCH_LEVEL)
|
||||
+ strlen("without stub")
|
||||
+ strlen(TK_PATCH_LEVEL)
|
||||
+ strlen("without stub")
|
||||
+ strlen("unknown tcl_threads");
|
||||
|
||||
info = ALLOC_N(char, size);
|
||||
/* info = ckalloc(sizeof(char) * size); */ /* SEGV */
|
||||
|
||||
sprintf(info, form,
|
||||
TCLTKLIB_RELEASE_DATE,
|
||||
RUBY_VERSION, RUBY_RELEASE_DATE,
|
||||
VALUE ret;
|
||||
static const char info[] =
|
||||
"tcltklib " TCLTKLIB_RELEASE_DATE " "
|
||||
":: Ruby" RUBY_VERSION" ("RUBY_RELEASE_DATE") "
|
||||
#ifdef HAVE_NATIVETHREAD
|
||||
"with",
|
||||
"with"
|
||||
#else
|
||||
"without",
|
||||
"without"
|
||||
#endif
|
||||
TCL_PATCH_LEVEL,
|
||||
" pthread "
|
||||
":: Tcl" TCL_PATCH_LEVEL "("
|
||||
#ifdef USE_TCL_STUBS
|
||||
"with stub",
|
||||
"with"
|
||||
#else
|
||||
"without stub",
|
||||
"without"
|
||||
#endif
|
||||
TK_PATCH_LEVEL,
|
||||
" stub)"
|
||||
"/"
|
||||
"Tk" TK_PATCH_LEVEL "("
|
||||
#ifdef USE_TK_STUBS
|
||||
"with stub",
|
||||
"with"
|
||||
#else
|
||||
"without stub",
|
||||
"without"
|
||||
#endif
|
||||
" stub) "
|
||||
#ifdef WITH_TCL_ENABLE_THREAD
|
||||
# if WITH_TCL_ENABLE_THREAD
|
||||
"with tcl_threads"
|
||||
"with"
|
||||
# else
|
||||
"without tcl_threads"
|
||||
"without"
|
||||
# endif
|
||||
#else
|
||||
"unknown tcl_threads"
|
||||
"unknown"
|
||||
#endif
|
||||
);
|
||||
|
||||
" tcl_threads";
|
||||
ret = rb_obj_freeze(rb_str_new2(info));
|
||||
|
||||
xfree(info);
|
||||
/* ckfree(info); */
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче