From: Jan Engelhardt Date: 2015-02-04 14:19:57.379625407 +0100 build: allow using unique SONAMEs The srtp build totally lacks versioning, so provide the possibility to control one from the specfile. --- Makefile.in | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) Index: libsrtp/Makefile.in =================================================================== --- libsrtp.orig/Makefile.in +++ libsrtp/Makefile.in @@ -19,7 +19,8 @@ HAVE_PKG_CONFIG = @HAVE_PKG_CONFIG@ .PHONY: all test build_table_apps -all: test +SONAME = libsrtp.so +all: test ${SONAME} runtest: build_table_apps test @echo "running libsrtp test applications..." @@ -121,9 +122,10 @@ libsrtp.a: $(srtpobj) $(cryptobj) $(gdoi ar cr libsrtp.a $^ $(RANLIB) libsrtp.a -libsrtp.so: $(srtpobj) $(cryptobj) $(gdoi) - $(CC) -shared -Wl,-soname,libsrtp.so \ - -o libsrtp.so $^ $(LDFLAGS) +${SONAME}: $(srtpobj) $(cryptobj) $(gdoi) + $(CC) -shared -Wl,-soname,${SONAME} \ + -o ${SONAME} $^ $(LDFLAGS) + if [ "${SONAME}" != libsrtp.so ]; then ln -s "${SONAME}" libsrtp.so; fi # libcryptomath.a contains general-purpose routines that are used to # generate tables and verify cryptoalgorithm implementations - this @@ -221,7 +223,12 @@ install: cp $(srcdir)/crypto/include/*.h $(DESTDIR)$(includedir)/srtp if [ "$(srcdir)" != "." ]; then cp crypto/include/*.h $(DESTDIR)$(includedir)/srtp; fi if [ -f libsrtp.a ]; then cp libsrtp.a $(DESTDIR)$(libdir)/; fi - if [ -f libsrtp.so ]; then cp libsrtp.so $(DESTDIR)$(libdir)/; fi + if [ -f "${SONAME}" ]; then \ + cp -a "${SONAME}" ${DESTDIR}${libdir}/; \ + if [ "${SONAME}" != libsrtp.so ]; then \ + cp -a libsrtp.so $(DESTDIR)$(libdir)/; \ + fi; \ + fi if [ "$(pkgconfig_DATA)" != "" ]; then \ $(INSTALL) -d $(DESTDIR)$(pkgconfigdir); \ cp $(srcdir)/$(pkgconfig_DATA) $(DESTDIR)$(pkgconfigdir)/; \