memory/jemalloc/src/Makefile.in

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/memory/jemalloc/src/Makefile.in	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,323 @@
     1.4 +# Clear out all vpaths, then set just one (default vpath) for the main build
     1.5 +# directory.
     1.6 +vpath
     1.7 +vpath % .
     1.8 +
     1.9 +# Clear the default suffixes, so that built-in rules are not used.
    1.10 +.SUFFIXES :
    1.11 +
    1.12 +SHELL := /bin/sh
    1.13 +
    1.14 +CC := @CC@
    1.15 +
    1.16 +# Configuration parameters.
    1.17 +DESTDIR =
    1.18 +BINDIR := $(DESTDIR)@BINDIR@
    1.19 +INCLUDEDIR := $(DESTDIR)@INCLUDEDIR@
    1.20 +LIBDIR := $(DESTDIR)@LIBDIR@
    1.21 +DATADIR := $(DESTDIR)@DATADIR@
    1.22 +MANDIR := $(DESTDIR)@MANDIR@
    1.23 +srcroot := @srcroot@
    1.24 +objroot := @objroot@
    1.25 +abs_srcroot := @abs_srcroot@
    1.26 +abs_objroot := @abs_objroot@
    1.27 +
    1.28 +# Build parameters.
    1.29 +CPPFLAGS := @CPPFLAGS@ -I$(srcroot)include -I$(objroot)include
    1.30 +CFLAGS := @CFLAGS@
    1.31 +LDFLAGS := @LDFLAGS@
    1.32 +EXTRA_LDFLAGS := @EXTRA_LDFLAGS@
    1.33 +LIBS := @LIBS@
    1.34 +RPATH_EXTRA := @RPATH_EXTRA@
    1.35 +SO := @so@
    1.36 +IMPORTLIB := @importlib@
    1.37 +O := @o@
    1.38 +A := @a@
    1.39 +EXE := @exe@
    1.40 +LIBPREFIX := @libprefix@
    1.41 +REV := @rev@
    1.42 +install_suffix := @install_suffix@
    1.43 +ABI := @abi@
    1.44 +XSLTPROC := @XSLTPROC@
    1.45 +AUTOCONF := @AUTOCONF@
    1.46 +_RPATH = @RPATH@
    1.47 +RPATH = $(if $(1),$(call _RPATH,$(1)))
    1.48 +cfghdrs_in := @cfghdrs_in@
    1.49 +cfghdrs_out := @cfghdrs_out@
    1.50 +cfgoutputs_in := @cfgoutputs_in@
    1.51 +cfgoutputs_out := @cfgoutputs_out@
    1.52 +enable_autogen := @enable_autogen@
    1.53 +enable_experimental := @enable_experimental@
    1.54 +DSO_LDFLAGS = @DSO_LDFLAGS@
    1.55 +SOREV = @SOREV@
    1.56 +PIC_CFLAGS = @PIC_CFLAGS@
    1.57 +CTARGET = @CTARGET@
    1.58 +LDTARGET = @LDTARGET@
    1.59 +MKLIB = @MKLIB@
    1.60 +CC_MM = @CC_MM@
    1.61 +
    1.62 +ifeq (macho, $(ABI))
    1.63 +TEST_LIBRARY_PATH := DYLD_FALLBACK_LIBRARY_PATH="$(objroot)lib"
    1.64 +else
    1.65 +ifeq (pecoff, $(ABI))
    1.66 +TEST_LIBRARY_PATH := PATH="$(PATH):$(objroot)lib"
    1.67 +else
    1.68 +TEST_LIBRARY_PATH :=
    1.69 +endif
    1.70 +endif
    1.71 +
    1.72 +LIBJEMALLOC := $(LIBPREFIX)jemalloc$(install_suffix)
    1.73 +
    1.74 +# Lists of files.
    1.75 +BINS := $(srcroot)bin/pprof $(objroot)bin/jemalloc.sh
    1.76 +CHDRS := $(objroot)include/jemalloc/jemalloc$(install_suffix).h \
    1.77 +	$(objroot)include/jemalloc/jemalloc_defs$(install_suffix).h
    1.78 +CSRCS := $(srcroot)src/jemalloc.c $(srcroot)src/arena.c $(srcroot)src/atomic.c \
    1.79 +	$(srcroot)src/base.c $(srcroot)src/bitmap.c $(srcroot)src/chunk.c \
    1.80 +	$(srcroot)src/chunk_dss.c $(srcroot)src/chunk_mmap.c \
    1.81 +	$(srcroot)src/ckh.c $(srcroot)src/ctl.c $(srcroot)src/extent.c \
    1.82 +	$(srcroot)src/hash.c $(srcroot)src/huge.c $(srcroot)src/mb.c \
    1.83 +	$(srcroot)src/mutex.c $(srcroot)src/prof.c $(srcroot)src/quarantine.c \
    1.84 +	$(srcroot)src/rtree.c $(srcroot)src/stats.c $(srcroot)src/tcache.c \
    1.85 +	$(srcroot)src/util.c $(srcroot)src/tsd.c
    1.86 +ifeq (macho, $(ABI))
    1.87 +CSRCS += $(srcroot)src/zone.c
    1.88 +endif
    1.89 +ifeq ($(IMPORTLIB),$(SO))
    1.90 +STATIC_LIBS := $(objroot)lib/$(LIBJEMALLOC).$(A)
    1.91 +endif
    1.92 +ifdef PIC_CFLAGS
    1.93 +STATIC_LIBS += $(objroot)lib/$(LIBJEMALLOC)_pic.$(A)
    1.94 +else
    1.95 +STATIC_LIBS += $(objroot)lib/$(LIBJEMALLOC)_s.$(A)
    1.96 +endif
    1.97 +DSOS := $(objroot)lib/$(LIBJEMALLOC).$(SOREV)
    1.98 +ifneq ($(SOREV),$(SO))
    1.99 +DSOS += $(objroot)lib/$(LIBJEMALLOC).$(SO)
   1.100 +endif
   1.101 +MAN3 := $(objroot)doc/jemalloc$(install_suffix).3
   1.102 +DOCS_XML := $(objroot)doc/jemalloc$(install_suffix).xml
   1.103 +DOCS_HTML := $(DOCS_XML:$(objroot)%.xml=$(srcroot)%.html)
   1.104 +DOCS_MAN3 := $(DOCS_XML:$(objroot)%.xml=$(srcroot)%.3)
   1.105 +DOCS := $(DOCS_HTML) $(DOCS_MAN3)
   1.106 +CTESTS := $(srcroot)test/aligned_alloc.c $(srcroot)test/allocated.c \
   1.107 +	$(srcroot)test/ALLOCM_ARENA.c $(srcroot)test/bitmap.c \
   1.108 +	$(srcroot)test/mremap.c $(srcroot)test/posix_memalign.c \
   1.109 +	$(srcroot)test/thread_arena.c $(srcroot)test/thread_tcache_enabled.c
   1.110 +ifeq ($(enable_experimental), 1)
   1.111 +CTESTS += $(srcroot)test/allocm.c $(srcroot)test/rallocm.c
   1.112 +endif
   1.113 +
   1.114 +COBJS := $(CSRCS:$(srcroot)%.c=$(objroot)%.$(O))
   1.115 +CPICOBJS := $(CSRCS:$(srcroot)%.c=$(objroot)%.pic.$(O))
   1.116 +CTESTOBJS := $(CTESTS:$(srcroot)%.c=$(objroot)%.$(O))
   1.117 +
   1.118 +.PHONY: all dist doc_html doc_man doc
   1.119 +.PHONY: install_bin install_include install_lib
   1.120 +.PHONY: install_html install_man install_doc install
   1.121 +.PHONY: tests check clean distclean relclean
   1.122 +
   1.123 +.SECONDARY : $(CTESTOBJS)
   1.124 +
   1.125 +# Default target.
   1.126 +all: build
   1.127 +
   1.128 +dist: build_doc
   1.129 +
   1.130 +$(srcroot)doc/%.html : $(objroot)doc/%.xml $(srcroot)doc/stylesheet.xsl $(objroot)doc/html.xsl
   1.131 +	$(XSLTPROC) -o $@ $(objroot)doc/html.xsl $<
   1.132 +
   1.133 +$(srcroot)doc/%.3 : $(objroot)doc/%.xml $(srcroot)doc/stylesheet.xsl $(objroot)doc/manpages.xsl
   1.134 +	$(XSLTPROC) -o $@ $(objroot)doc/manpages.xsl $<
   1.135 +
   1.136 +build_doc_html: $(DOCS_HTML)
   1.137 +build_doc_man: $(DOCS_MAN3)
   1.138 +build_doc: $(DOCS)
   1.139 +
   1.140 +#
   1.141 +# Include generated dependency files.
   1.142 +#
   1.143 +ifdef CC_MM
   1.144 +-include $(COBJS:%.$(O)=%.d)
   1.145 +-include $(CPICOBJS:%.$(O)=%.d)
   1.146 +-include $(CTESTOBJS:%.$(O)=%.d)
   1.147 +endif
   1.148 +
   1.149 +$(COBJS): $(objroot)src/%.$(O): $(srcroot)src/%.c
   1.150 +$(CPICOBJS): $(objroot)src/%.pic.$(O): $(srcroot)src/%.c
   1.151 +$(CPICOBJS): CFLAGS += $(PIC_CFLAGS)
   1.152 +$(CTESTOBJS): $(objroot)test/%.$(O): $(srcroot)test/%.c
   1.153 +$(CTESTOBJS): CPPFLAGS += -I$(objroot)test
   1.154 +ifneq ($(IMPORTLIB),$(SO))
   1.155 +$(COBJS): CPPFLAGS += -DDLLEXPORT
   1.156 +endif
   1.157 +
   1.158 +ifndef CC_MM
   1.159 +# Dependencies
   1.160 +HEADER_DIRS = $(srcroot)include/jemalloc/internal \
   1.161 +	$(objroot)include/jemalloc $(objroot)include/jemalloc/internal
   1.162 +HEADERS = $(wildcard $(foreach dir,$(HEADER_DIRS),$(dir)/*.h))
   1.163 +$(COBJS) $(CPICOBJS) $(CTESTOBJS): $(HEADERS)
   1.164 +$(CTESTOBJS): $(objroot)test/jemalloc_test.h
   1.165 +endif
   1.166 +
   1.167 +$(COBJS) $(CPICOBJS) $(CTESTOBJS): %.$(O):
   1.168 +	@mkdir -p $(@D)
   1.169 +	$(CC) $(CFLAGS) -c $(CPPFLAGS) $(CTARGET) $<
   1.170 +ifdef CC_MM
   1.171 +	@$(CC) -MM $(CPPFLAGS) -MT $@ -o $(@:%.$(O)=%.d) $<
   1.172 +endif
   1.173 +
   1.174 +ifneq ($(SOREV),$(SO))
   1.175 +%.$(SO) : %.$(SOREV)
   1.176 +	@mkdir -p $(@D)
   1.177 +	ln -sf $(<F) $@
   1.178 +endif
   1.179 +
   1.180 +$(objroot)lib/$(LIBJEMALLOC).$(SOREV) : $(if $(PIC_CFLAGS),$(CPICOBJS),$(COBJS))
   1.181 +	@mkdir -p $(@D)
   1.182 +	$(CC) $(DSO_LDFLAGS) $(call RPATH,$(RPATH_EXTRA)) $(LDTARGET) $+ $(LDFLAGS) $(LIBS) $(EXTRA_LDFLAGS)
   1.183 +
   1.184 +$(objroot)lib/$(LIBJEMALLOC)_pic.$(A) : $(CPICOBJS)
   1.185 +$(objroot)lib/$(LIBJEMALLOC).$(A) : $(COBJS)
   1.186 +$(objroot)lib/$(LIBJEMALLOC)_s.$(A) : $(COBJS)
   1.187 +
   1.188 +$(STATIC_LIBS):
   1.189 +	@mkdir -p $(@D)
   1.190 +	$(MKLIB) $+
   1.191 +
   1.192 +$(objroot)test/bitmap$(EXE): $(objroot)src/bitmap.$(O)
   1.193 +
   1.194 +$(objroot)test/%$(EXE): $(objroot)test/%.$(O) $(objroot)src/util.$(O) $(DSOS)
   1.195 +	@mkdir -p $(@D)
   1.196 +	$(CC) $(LDTARGET) $(filter %.$(O),$^) $(call RPATH,$(objroot)lib) $(objroot)lib/$(LIBJEMALLOC).$(IMPORTLIB) $(filter -lpthread,$(LIBS)) $(EXTRA_LDFLAGS)
   1.197 +
   1.198 +build_lib_shared: $(DSOS)
   1.199 +build_lib_static: $(STATIC_LIBS)
   1.200 +build: build_lib_shared build_lib_static
   1.201 +
   1.202 +install_bin:
   1.203 +	install -d $(BINDIR)
   1.204 +	@for b in $(BINS); do \
   1.205 +	echo "install -m 755 $$b $(BINDIR)"; \
   1.206 +	install -m 755 $$b $(BINDIR); \
   1.207 +done
   1.208 +
   1.209 +install_include:
   1.210 +	install -d $(INCLUDEDIR)/jemalloc
   1.211 +	@for h in $(CHDRS); do \
   1.212 +	echo "install -m 644 $$h $(INCLUDEDIR)/jemalloc"; \
   1.213 +	install -m 644 $$h $(INCLUDEDIR)/jemalloc; \
   1.214 +done
   1.215 +
   1.216 +install_lib_shared: $(DSOS)
   1.217 +	install -d $(LIBDIR)
   1.218 +	install -m 755 $(objroot)lib/$(LIBJEMALLOC).$(SOREV) $(LIBDIR)
   1.219 +ifneq ($(SOREV),$(SO))
   1.220 +	ln -sf $(LIBJEMALLOC).$(SOREV) $(LIBDIR)/$(LIBJEMALLOC).$(SO)
   1.221 +endif
   1.222 +
   1.223 +install_lib_static: $(STATIC_LIBS)
   1.224 +	install -d $(LIBDIR)
   1.225 +	@for l in $(STATIC_LIBS); do \
   1.226 +	echo "install -m 755 $$l $(LIBDIR)"; \
   1.227 +	install -m 755 $$l $(LIBDIR); \
   1.228 +done
   1.229 +
   1.230 +install_lib: install_lib_shared install_lib_static
   1.231 +
   1.232 +install_doc_html:
   1.233 +	install -d $(DATADIR)/doc/jemalloc$(install_suffix)
   1.234 +	@for d in $(DOCS_HTML); do \
   1.235 +	echo "install -m 644 $$d $(DATADIR)/doc/jemalloc$(install_suffix)"; \
   1.236 +	install -m 644 $$d $(DATADIR)/doc/jemalloc$(install_suffix); \
   1.237 +done
   1.238 +
   1.239 +install_doc_man:
   1.240 +	install -d $(MANDIR)/man3
   1.241 +	@for d in $(DOCS_MAN3); do \
   1.242 +	echo "install -m 644 $$d $(MANDIR)/man3"; \
   1.243 +	install -m 644 $$d $(MANDIR)/man3; \
   1.244 +done
   1.245 +
   1.246 +install_doc: install_doc_html install_doc_man
   1.247 +
   1.248 +install: install_bin install_include install_lib install_doc
   1.249 +
   1.250 +tests: $(CTESTS:$(srcroot)%.c=$(objroot)%$(EXE))
   1.251 +
   1.252 +check: tests
   1.253 +	@mkdir -p $(objroot)test
   1.254 +	@$(SHELL) -c 'total=0; \
   1.255 +		failures=0; \
   1.256 +		echo "========================================="; \
   1.257 +		for t in $(CTESTS:$(srcroot)%.c=$(objroot)%); do \
   1.258 +			total=`expr $$total + 1`; \
   1.259 +			/bin/echo -n "$${t} ... "; \
   1.260 +			$(TEST_LIBRARY_PATH) $${t}$(EXE) $(abs_srcroot) \
   1.261 +			  $(abs_objroot) > $(objroot)$${t}.out 2>&1; \
   1.262 +			if test -e "$(srcroot)$${t}.exp"; then \
   1.263 +				diff -w -u $(srcroot)$${t}.exp \
   1.264 +				  $(objroot)$${t}.out >/dev/null 2>&1; \
   1.265 +				fail=$$?; \
   1.266 +				if test "$${fail}" -eq "1" ; then \
   1.267 +					failures=`expr $${failures} + 1`; \
   1.268 +					echo "*** FAIL ***"; \
   1.269 +				else \
   1.270 +					echo "pass"; \
   1.271 +				fi; \
   1.272 +			else \
   1.273 +				echo "*** FAIL *** (.exp file is missing)"; \
   1.274 +				failures=`expr $${failures} + 1`; \
   1.275 +			fi; \
   1.276 +		done; \
   1.277 +		echo "========================================="; \
   1.278 +		echo "Failures: $${failures}/$${total}"'
   1.279 +
   1.280 +clean:
   1.281 +	rm -f $(COBJS)
   1.282 +	rm -f $(CPICOBJS)
   1.283 +	rm -f $(COBJS:%.$(O)=%.d)
   1.284 +	rm -f $(CPICOBJS:%.$(O)=%.d)
   1.285 +	rm -f $(CTESTOBJS:%.$(O)=%$(EXE))
   1.286 +	rm -f $(CTESTOBJS)
   1.287 +	rm -f $(CTESTOBJS:%.$(O)=%.d)
   1.288 +	rm -f $(CTESTOBJS:%.$(O)=%.out)
   1.289 +	rm -f $(DSOS) $(STATIC_LIBS)
   1.290 +
   1.291 +distclean: clean
   1.292 +	rm -rf $(objroot)autom4te.cache
   1.293 +	rm -f $(objroot)config.log
   1.294 +	rm -f $(objroot)config.status
   1.295 +	rm -f $(objroot)config.stamp
   1.296 +	rm -f $(cfghdrs_out)
   1.297 +	rm -f $(cfgoutputs_out)
   1.298 +
   1.299 +relclean: distclean
   1.300 +	rm -f $(objroot)configure
   1.301 +	rm -f $(srcroot)VERSION
   1.302 +	rm -f $(DOCS_HTML)
   1.303 +	rm -f $(DOCS_MAN3)
   1.304 +
   1.305 +#===============================================================================
   1.306 +# Re-configuration rules.
   1.307 +
   1.308 +ifeq ($(enable_autogen), 1)
   1.309 +$(srcroot)configure : $(srcroot)configure.ac
   1.310 +	cd ./$(srcroot) && $(AUTOCONF)
   1.311 +
   1.312 +$(objroot)config.status : $(srcroot)configure
   1.313 +	./$(objroot)config.status --recheck
   1.314 +
   1.315 +$(srcroot)config.stamp.in : $(srcroot)configure.ac
   1.316 +	echo stamp > $(srcroot)config.stamp.in
   1.317 +
   1.318 +$(objroot)config.stamp : $(cfgoutputs_in) $(cfghdrs_in) $(srcroot)configure
   1.319 +	./$(objroot)config.status
   1.320 +	@touch $@
   1.321 +
   1.322 +# There must be some action in order for make to re-read Makefile when it is
   1.323 +# out of date.
   1.324 +$(cfgoutputs_out) $(cfghdrs_out) : $(objroot)config.stamp
   1.325 +	@true
   1.326 +endif

mercurial