summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Evans <jasone@canonware.com>2010-04-08 06:37:35 (GMT)
committerJason Evans <jasone@canonware.com>2010-04-08 06:37:35 (GMT)
commit0656ec0eb49ae2202b6b2978d517c054dfcd3503 (patch)
tree17803de72dc12e6f4a9d3c492baa9ff614b6779f
parentaf366593a4cd5bc6f111dd6e6492594d7cd1e6cb (diff)
downloadjemalloc-0656ec0eb49ae2202b6b2978d517c054dfcd3503.zip
jemalloc-0656ec0eb49ae2202b6b2978d517c054dfcd3503.tar.gz
jemalloc-0656ec0eb49ae2202b6b2978d517c054dfcd3503.tar.bz2
Fix build system problems.
Split library build rules up so that parallel building works. Fix autoconf-related dependencies. Remove obsolete JEMALLOC_VERSION definition.
-rw-r--r--.gitignore3
-rw-r--r--jemalloc/Makefile.in33
-rw-r--r--jemalloc/cfghdrs.stamp.in0
-rw-r--r--jemalloc/config.stamp.in (renamed from jemalloc/cfgoutputs.stamp.in)0
-rw-r--r--jemalloc/configure.ac12
-rw-r--r--jemalloc/include/jemalloc/jemalloc_defs.h.in5
6 files changed, 21 insertions, 32 deletions
diff --git a/.gitignore b/.gitignore
index 07772ac..d9e49f8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,5 @@
/jemalloc/autom4te.cache/
-/jemalloc/cfghdrs.stamp
-/jemalloc/cfgoutputs.stamp
+/jemalloc/config.stamp
/jemalloc/config.log
/jemalloc/config.status
/jemalloc/configure
diff --git a/jemalloc/Makefile.in b/jemalloc/Makefile.in
index 79a6509..ce70588 100644
--- a/jemalloc/Makefile.in
+++ b/jemalloc/Makefile.in
@@ -63,11 +63,17 @@ all: $(DSOS)
$(CC) $(CFLAGS) -c $(CPPFLAGS) -o $@ $<
@$(SHELL) -ec "$(CC) -MM $(CPPFLAGS) $< | sed \"s/\($(subst /,\/,$(notdir $(basename $@)))\)\.o\([ :]*\)/$(subst /,\/,$(strip $(dir $@)))\1.o \2/g\" > $(@:%.o=%.d)"
-$(DSOS): $(CSRCS:@srcroot@%.c=@objroot@%.o)
+%.so : %.so.$(REV)
@mkdir -p $(@D)
- $(CC) -shared -Wl,-soname,libjemalloc@install_suffix@.so.$(REV) -o $@ $+ $(LDFLAGS) $(LIBS)
- ln -sf libjemalloc@install_suffix@.so.$(REV) lib/libjemalloc@install_suffix@.so
- ar crus @objroot@lib/libjemalloc@install_suffix@_pic.a $+
+ ln -sf $(<F) $@
+
+@objroot@lib/libjemalloc@install_suffix@.so.$(REV) : $(CSRCS:@srcroot@%.c=@objroot@%.o)
+ @mkdir -p $(@D)
+ $(CC) -shared -Wl,-soname,$(@F) -o $@ $+ $(LDFLAGS) $(LIBS)
+
+@objroot@lib/libjemalloc@install_suffix@_pic.a : $(CSRCS:@srcroot@%.c=@objroot@%.o)
+ @mkdir -p $(@D)
+ ar crus $@ $+
install_bin:
install -d $(BINDIR)
@@ -128,26 +134,15 @@ ifeq (@enable_autogen@, 1)
@objroot@config.status : @srcroot@configure
./@objroot@config.status --recheck
-# cfghdrs rules.
-@srcroot@cfghdrs.stamp.in : @srcroot@configure.ac
- echo stamp > @srcroot@cfghdrs.stamp.in
-
-@objroot@cfghdrs.stamp : @cfghdrs_in@ @srcroot@configure
- ./@objroot@config.status
- @touch $@
-
-@cfghdrs@ : @objroot@cfghdrs.stamp
-
-# cfgoutputs rules.
-@srcroot@cfgoutputs.stamp.in : @srcroot@configure.ac
- echo stamp > @srcroot@cfgoutputs.stamp.in
+@srcroot@config.stamp.in : @srcroot@configure.ac
+ echo stamp > @srcroot@config.stamp.in
-@objroot@cfgoutputs.stamp : @cfgoutputs_in@ @srcroot@configure
+@objroot@config.stamp : @cfgoutputs_in@ @cfghdrs_in@ @srcroot@configure
./@objroot@config.status
@touch $@
# There must be some action in order for make to re-read Makefile when it is
# out of date.
-@cfgoutputs@ : @objroot@cfgoutputs.stamp
+@cfgoutputs_out@ @cfghdrs_out@ : @objroot@config.stamp
@true
endif
diff --git a/jemalloc/cfghdrs.stamp.in b/jemalloc/cfghdrs.stamp.in
deleted file mode 100644
index e69de29..0000000
--- a/jemalloc/cfghdrs.stamp.in
+++ /dev/null
diff --git a/jemalloc/cfgoutputs.stamp.in b/jemalloc/config.stamp.in
index e69de29..e69de29 100644
--- a/jemalloc/cfgoutputs.stamp.in
+++ b/jemalloc/config.stamp.in
diff --git a/jemalloc/configure.ac b/jemalloc/configure.ac
index 9f51999..4582c71 100644
--- a/jemalloc/configure.ac
+++ b/jemalloc/configure.ac
@@ -263,9 +263,9 @@ AC_ARG_WITH([install_suffix],
install_suffix="$INSTALL_SUFFIX"
AC_SUBST([install_suffix])
-cfgoutputs_in="Makefile doc/jemalloc.3.in"
-cfgoutputs_in="${cfgoutputs_in} include/jemalloc/jemalloc.h.in"
-cfgoutputs_in="${cfgoutputs_in} include/jemalloc/internal/jemalloc_internal.h.in"
+cfgoutputs_in="${srcroot}Makefile.in ${srcroot}doc/jemalloc.3.in"
+cfgoutputs_in="${cfgoutputs_in} ${srcroot}include/jemalloc/jemalloc.h.in"
+cfgoutputs_in="${cfgoutputs_in} ${srcroot}include/jemalloc/internal/jemalloc_internal.h.in"
cfgoutputs_out="Makefile doc/jemalloc${install_suffix}.3"
cfgoutputs_out="${cfgoutputs_out} include/jemalloc/jemalloc${install_suffix}.h"
@@ -275,7 +275,7 @@ cfgoutputs_tup="Makefile doc/jemalloc${install_suffix}.3:doc/jemalloc.3.in"
cfgoutputs_tup="${cfgoutputs_tup} include/jemalloc/jemalloc${install_suffix}.h:include/jemalloc/jemalloc.h.in"
cfgoutputs_tup="${cfgoutputs_tup} include/jemalloc/internal/jemalloc_internal.h"
-cfghdrs_in="include/jemalloc/jemalloc_defs.h.in"
+cfghdrs_in="${srcroot}include/jemalloc/jemalloc_defs.h.in"
cfghdrs_out="include/jemalloc/jemalloc_defs${install_suffix}.h"
@@ -720,11 +720,11 @@ AC_HEADER_STDBOOL
dnl Process .in files.
AC_SUBST([cfghdrs_in])
AC_SUBST([cfghdrs_out])
-AC_CONFIG_HEADERS([$cfghdrs_tup cfghdrs.stamp])
+AC_CONFIG_HEADERS([$cfghdrs_tup])
dnl ============================================================================
dnl Generate outputs.
-AC_CONFIG_FILES([$cfgoutputs_tup cfgoutputs.stamp])
+AC_CONFIG_FILES([$cfgoutputs_tup config.stamp])
AC_SUBST([cfgoutputs_in])
AC_SUBST([cfgoutputs_out])
AC_OUTPUT
diff --git a/jemalloc/include/jemalloc/jemalloc_defs.h.in b/jemalloc/include/jemalloc/jemalloc_defs.h.in
index ddf960d..8b98d67 100644
--- a/jemalloc/include/jemalloc/jemalloc_defs.h.in
+++ b/jemalloc/include/jemalloc/jemalloc_defs.h.in
@@ -2,11 +2,6 @@
#define JEMALLOC_DEFS_H_
/*
- * jemalloc version string.
- */
-#undef JEMALLOC_VERSION
-
-/*
* If JEMALLOC_PREFIX is defined, it will cause all public APIs to be prefixed.
* This makes it possible, with some care, to use multiple allocators
* simultaneously.