ref: 3c8bd936580099f79f70a8c0a9c2993802105703
parent: 069d653fd9f6eef75a07e67b2da0565ec5918755
author: evilynux <evilynux>
date: Thu Jul 31 11:38:21 EDT 2008
Proper shared library versionning. Please bump version number of SHLIB_VERSION in configure.ac when binary compatibility is broken.
--- a/configure.ac
+++ b/configure.ac
@@ -19,6 +19,10 @@
AC_PROG_INSTALL
AC_PROG_LN_S
+# Increase version when binary compatibility with previous version is broken
+SHLIB_VERSION=1:0:0
+AC_SUBST(SHLIB_VERSION)
+
AC_ARG_WITH(libltdl,
AC_HELP_STRING([--without-libltdl],
[Don't try to use libltdl for external dynamic library support]))
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -243,6 +243,7 @@
libsfx_la_CFLAGS = @SAMPLERATE_CFLAGS@
libsfx_la_LIBADD = @PNG_LIBS@ @SAMPLERATE_LIBS@ libsox.la
+libsfx_la_LDFLAGS = -version-info @SHLIB_VERSION@
############################################
# libsox - file format and utility library #
@@ -254,8 +255,13 @@
xmalloc.c xmalloc.h getopt.c getopt1.c getopt.h \
soxconfig.h util.c util.h libsox.c libsox_i.c
libsox_la_CFLAGS =
+libsox_la_LDFLAGS = -version-info @SHLIB_VERSION@
if HAVE_LIBLTDL
+ libsox_la_CFLAGS += $(LTDLINCL)
+ libsfx_la_CFLAGS += $(LTDLINCL)
+ libsox_la_LDFLAGS += $(LIBLTDL)
+ libsfx_la_LDFLAGS += $(LIBLTDL)
else
libsox_la_SOURCES += raw-fmt.c s1-fmt.c s2-fmt.c s3-fmt.c \
s4-fmt.c u1-fmt.c u2-fmt.c u3-fmt.c u4-fmt.c al-fmt.c la-fmt.c ul-fmt.c \