From 00f6823f070d82442d57fbe4804b1b402a8c73a9 Mon Sep 17 00:00:00 2001 From: ddennedy Date: Thu, 7 Feb 2008 09:41:14 +0000 Subject: [PATCH] configure: add soversion variable src/Makefile: improve library versioning by linking on interface version (soversion) git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt++@1063 d19143bc-622f-0410-bfdd-b5b2a6649095 --- mlt++/configure | 1 + mlt++/src/Makefile | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/mlt++/configure b/mlt++/configure index f93620c..ed2c810 100755 --- a/mlt++/configure +++ b/mlt++/configure @@ -26,6 +26,7 @@ done [ ! -d "$prefix" ] && echo "Invalid prefix $prefix - aborting" && exit 1 echo "version=`mlt-config --version`" > config.mak +echo "soversion=0" >> config.mak echo "prefix=$prefix" >> config.mak echo "libdir=$libdir" >> config.mak diff --git a/mlt++/src/Makefile b/mlt++/src/Makefile index ee020d0..8561985 100644 --- a/mlt++/src/Makefile +++ b/mlt++/src/Makefile @@ -4,11 +4,13 @@ INSTALL = install ifneq ($(targetos), Darwin) NAME = libmlt++$(LIBSUF) TARGET = $(NAME).$(version) -LIBFLAGS += -Wl,-soname,$(TARGET) +SONAME = $(NAME).$(soversion) +LIBFLAGS += -Wl,-soname,$(SONAME) else NAME = libmlt++$(LIBSUF) TARGET = libmlt++.$(version)$(LIBSUF) -LIBFLAGS += -install_name $(libdir)/$(TARGET) +SONAME = libmlt++.$(soversion)$(LIBSUF) +LIBFLAGS += -install_name $(libdir)/$(SONAME) -current_version $(version) -compatibility_version $(soversion) endif OBJS = MltConsumer.o \ @@ -43,6 +45,7 @@ all: $(TARGET) $(TARGET): $(OBJS) $(CXX) $(LIBFLAGS) -o $@ $(OBJS) $(LDFLAGS) ln -sf $(TARGET) $(NAME) + ln -sf $(TARGET) $(SONAME) clean: $(RM) $(OBJS) $(TARGET) $(NAME) @@ -53,6 +56,7 @@ install: $(INSTALL) -d "$(DESTDIR)$(libdir)" $(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(libdir) ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME) + ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME) $(INSTALL) -d "$(DESTDIR)$(prefix)/include/mlt++" $(INSTALL) -m 644 $(HEADERS) "$(DESTDIR)$(prefix)/include/mlt++" /sbin/ldconfig || true @@ -60,4 +64,5 @@ install: uninstall: rm -f "$(DESTDIR)$(libdir)/$(TARGET)" rm -f "$(DESTDIR)$(libdir)/$(NAME)" + rm -f "$(DESTDIR)$(libdir)/$(SONAME)" rm -rf "$(DESTDIR)$(prefix)/include/mlt++" -- 1.7.4.4