From 85221d5d75be26ce8941cc08a798e69ecdd0a57c Mon Sep 17 00:00:00 2001 From: Mike Hommey Date: Wed, 18 Apr 2012 18:29:40 +0200 Subject: [PATCH] Make versioned shared library suffix configurable This allows for different patterns for file names: - lib.so.version for e.g. Linux - lib.version.dylib for OSX (which is much more common than lib.dylib.version) - lib.dll for Windows (no version at all). --- Makefile.in | 21 ++++++++++++++------- bin/jemalloc.sh.in | 2 +- configure.ac | 3 +++ 3 files changed, 18 insertions(+), 8 deletions(-) diff --git a/Makefile.in b/Makefile.in index 0dfddea0..d426cbdb 100644 --- a/Makefile.in +++ b/Makefile.in @@ -47,6 +47,7 @@ cfgoutputs_out := @cfgoutputs_out@ enable_autogen := @enable_autogen@ enable_experimental := @enable_experimental@ DSO_LDFLAGS = @DSO_LDFLAGS@ +SOREV = @SOREV@ ifeq (macho, $(ABI)) TEST_LIBRARY_PATH := DYLD_FALLBACK_LIBRARY_PATH=$(objroot)lib @@ -72,9 +73,11 @@ ifeq (macho, $(ABI)) CSRCS += $(srcroot)src/zone.c endif STATIC_LIBS := $(objroot)lib/$(LIBJEMALLOC).$(A) -DSOS := $(objroot)lib/$(LIBJEMALLOC).$(SO).$(REV) \ - $(objroot)lib/$(LIBJEMALLOC).$(SO) \ - $(objroot)lib/$(LIBJEMALLOC)_pic.$(A) +DSOS := $(objroot)lib/$(LIBJEMALLOC)_pic.$(A) \ + $(objroot)lib/$(LIBJEMALLOC).$(SOREV) +ifneq ($(SOREV),$(SO)) +DSOS += $(objroot)lib/$(LIBJEMALLOC).$(SO) +endif MAN3 := $(objroot)doc/jemalloc$(install_suffix).3 DOCS_XML := $(objroot)doc/jemalloc$(install_suffix).xml DOCS_HTML := $(DOCS_XML:$(objroot)%.xml=$(srcroot)%.html) @@ -127,11 +130,13 @@ $(objroot)src/%.pic.$(O): $(srcroot)src/%.c $(CC) $(CFLAGS) -fPIC -DPIC -c $(CPPFLAGS) -o $@ $< @$(CC) -MM $(CPPFLAGS) -MT $@ -o $(@:%.$(O)=%.d) $< -%.$(SO) : %.$(SO).$(REV) +ifneq ($(SOREV),$(SO)) +%.$(SO) : %.$(SOREV) @mkdir -p $(@D) ln -sf $(