Skip to content

Commit 933897c

Browse files
committed
integrate jemalloc into the build
1 parent cff203e commit 933897c

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

configure

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -683,7 +683,8 @@ do
683683
for i in \
684684
isaac linenoise sync test \
685685
arch/i386 arch/x86_64 arch/arm arch/mips \
686-
libuv libuv/src/ares libuv/src/eio libuv/src/ev
686+
libuv libuv/src/ares libuv/src/eio libuv/src/ev \
687+
jemalloc
687688
do
688689
make_dir rt/$t/stage$s/$i
689690
done

mk/rt.mk

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -97,18 +97,23 @@ RUNTIME_S_$(1)_$(2) := rt/arch/$$(HOST_$(1))/_context.S \
9797
ifeq ($$(CFG_WINDOWSY_$(1)), 1)
9898
LIBUV_OSTYPE_$(1)_$(2) := win
9999
LIBUV_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/libuv/libuv.a
100+
JEMALLOC_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/jemalloc/lib/libjemalloc_pic.a
100101
else ifeq ($(OSTYPE_$(1)), apple-darwin)
101102
LIBUV_OSTYPE_$(1)_$(2) := mac
102103
LIBUV_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/libuv/libuv.a
104+
JEMALLOC_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/jemalloc/lib/libjemalloc_pic.a
103105
else ifeq ($(OSTYPE_$(1)), unknown-freebsd)
104106
LIBUV_OSTYPE_$(1)_$(2) := unix/freebsd
105107
LIBUV_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/libuv/libuv.a
108+
JEMALLOC_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/jemalloc/lib/libjemalloc_pic.a
106109
else ifeq ($(OSTYPE_$(1)), linux-androideabi)
107110
LIBUV_OSTYPE_$(1)_$(2) := unix/android
108111
LIBUV_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/libuv/libuv.a
112+
JEMALLOC_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/jemalloc/lib/libjemalloc_pic.a
109113
else
110114
LIBUV_OSTYPE_$(1)_$(2) := unix/linux
111115
LIBUV_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/libuv/libuv.a
116+
JEMALLOC_LIB_$(1)_$(2) := rt/$(1)/stage$(2)/jemalloc/lib/libjemalloc_pic.a
112117
endif
113118

114119
RUNTIME_DEF_$(1)_$(2) := rt/rustrt$(CFG_DEF_SUFFIX_$(1))
@@ -124,8 +129,6 @@ ALL_OBJ_FILES += $$(RUNTIME_OBJS_$(1)_$(2))
124129
MORESTACK_OBJ_$(1)_$(2) := rt/$(1)/stage$(2)/arch/$$(HOST_$(1))/morestack.o
125130
ALL_OBJ_FILES += $$(MORESTACK_OBJS_$(1)_$(2))
126131

127-
RUNTIME_LIBS_$(1)_$(2) := $$(LIBUV_LIB_$(1)_$(2))
128-
129132
rt/$(1)/stage$(2)/%.o: rt/%.cpp $$(MKFILE_DEPS)
130133
@$$(call E, compile: $$@)
131134
$$(Q)$$(call CFG_COMPILE_CXX_$(1), $$@, $$(RUNTIME_INCS_$(1)_$(2)) \
@@ -146,11 +149,10 @@ rt/$(1)/stage$(2)/arch/$$(HOST_$(1))/libmorestack.a: $$(MORESTACK_OBJ_$(1)_$(2))
146149
$$(Q)$(AR_$(1)) rcs $$@ $$<
147150

148151
rt/$(1)/stage$(2)/$(CFG_RUNTIME_$(1)): $$(RUNTIME_OBJS_$(1)_$(2)) $$(MKFILE_DEPS) \
149-
$$(RUNTIME_DEF_$(1)_$(2)) \
150-
$$(RUNTIME_LIBS_$(1)_$(2))
152+
$$(RUNTIME_DEF_$(1)_$(2)) $$(LIBUV_LIB_$(1)_$(2)) $$(JEMALLOC_LIB_$(1)_$(2))
151153
@$$(call E, link: $$@)
152154
$$(Q)$$(call CFG_LINK_CXX_$(1),$$@, $$(RUNTIME_OBJS_$(1)_$(2)) \
153-
$$(CFG_GCCISH_POST_LIB_FLAGS_$(1)) $$(RUNTIME_LIBS_$(1)_$(2)) \
155+
$$(JEMALLOC_LIB_$(1)_$(2)) $$(CFG_GCCISH_POST_LIB_FLAGS_$(1)) $$(LIBUV_LIB_$(1)_$(2)) \
154156
$$(CFG_LIBUV_LINK_FLAGS_$(1)),$$(RUNTIME_DEF_$(1)_$(2)),$$(CFG_RUNTIME_$(1)))
155157

156158
# FIXME: For some reason libuv's makefiles can't figure out the
@@ -199,6 +201,9 @@ $$(LIBUV_LIB_$(1)_$(2)): $$(LIBUV_DEPS)
199201
V=$$(VERBOSE)
200202
endif
201203

204+
$$(JEMALLOC_LIB_$(1)_$(2)):
205+
cd $$(CFG_BUILD_DIR)/rt/$(1)/stage$(2)/jemalloc; $(S)src/rt/jemalloc/configure --disable-experimental
206+
$$(Q)$$(MAKE) -C $$(CFG_BUILD_DIR)/rt/$(1)/stage$(2)/jemalloc
202207

203208
# These could go in rt.mk or rustllvm.mk, they're needed for both.
204209

0 commit comments

Comments
 (0)