aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-02-06 16:03:10 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-02-06 16:03:10 +0000
commit15ede8ae82ad59b6b88cce92841516fa5ec3f06a (patch)
tree82d2711b06a6749266d285980d8d612343a6910a
parent7449619dd3c2ea0d91e6e7a20c5148eea755641c (diff)
downloadruby-15ede8ae82ad59b6b88cce92841516fa5ec3f06a.tar.gz
mjit.c: try installed header only
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--common.mk1
-rw-r--r--mjit.c35
2 files changed, 7 insertions, 29 deletions
diff --git a/common.mk b/common.mk
index 38c87911d1..24468d87e9 100644
--- a/common.mk
+++ b/common.mk
@@ -62,7 +62,6 @@ CAPIOUT = doc/capi
MJIT_HEADER = rb_mjit_header.h
MJIT_MIN_HEADER = $(MJIT_HEADER_BUILD_DIR)/rb_mjit_min_header-$(RUBY_PROGRAM_VERSION).h
MJIT_CPPFLAGS = -DMJIT_HEADER_INSTALL_DIR=\""$(MJIT_HEADER_INSTALL_DIR)"\" \
- -DMJIT_HEADER_BUILD_DIR=\""$(MJIT_HEADER_BUILD_DIR)"\" \
-DLIBRUBYARG_SHARED=\""$(LIBRUBYARG_SHARED)"\"
MJIT_HEADER_BUILD_DIR = $(EXTOUT)/include/$(arch)
MJIT_HEADER_INSTALL_DIR = include/$(RUBY_BASE_NAME)-$(ruby_version)/$(arch)
diff --git a/mjit.c b/mjit.c
index 3bf82f7529..8d31441f79 100644
--- a/mjit.c
+++ b/mjit.c
@@ -1057,23 +1057,6 @@ mjit_get_iseq_func(const struct rb_iseq_constant_body *body)
#define append_str2(p, str, len) ((char *)memcpy((p), str, (len))+(len))
#define append_str(p, str) append_str2(p, str, sizeof(str)-1)
-static char *
-build_header_path(const char *basedir, size_t baselen, const char *dir, size_t dirlen)
-{
- static const char header_basename[] = "/" RUBY_MJIT_HEADER_FILE;
- char *p, *path = xmalloc(baselen + dirlen + sizeof(header_basename));
- if (path == NULL)
- return NULL;
- p = path;
- p = append_str2(p, basedir, baselen);
- p = append_str2(p, dir, dirlen);
- p = append_str2(p, header_basename, sizeof(header_basename));
- return path;
-}
-
-#define BUILD_HEADER_PATH(basedir, baselen, dir) \
- build_header_path(basedir, baselen, dir, rb_strlen_lit(dir))
-
static void
init_header_filename(void)
{
@@ -1082,27 +1065,23 @@ init_header_filename(void)
VALUE basedir_val;
char *basedir;
size_t baselen;
-#ifdef _WIN32
+ static const char header_name[] =
+ "/" MJIT_HEADER_INSTALL_DIR "/" RUBY_MJIT_HEADER_FILE;
char *p;
-#endif
basedir_val = rb_const_get(rb_cObject, rb_intern_const("TMP_RUBY_PREFIX"));
basedir = StringValuePtr(basedir_val);
baselen = RSTRING_LEN(basedir_val);
- header_file = BUILD_HEADER_PATH(basedir, baselen, "/"MJIT_HEADER_BUILD_DIR);
+ header_file = xmalloc(baselen + sizeof(header_name));
if (header_file == NULL)
return;
+ p = append_str2(header_file, basedir, baselen);
+ p = append_str2(p, header_name, sizeof(header_name));
if ((f = fopen(header_file, "r")) == NULL) {
xfree(header_file);
- header_file = BUILD_HEADER_PATH(basedir, baselen, "/"MJIT_HEADER_INSTALL_DIR);
- if (header_file == NULL)
- return;
- if ((f = fopen(header_file, "r")) == NULL) {
- xfree(header_file);
- header_file = NULL;
- return;
- }
+ header_file = NULL;
+ return;
}
fclose(f);