From 8e1dadbcb7ec6be1c568550e97a9e3ce565758bf Mon Sep 17 00:00:00 2001
From: Nirbheek Chauhan <nirbheek@centricular.com>
Date: Wed, 5 Nov 2014 18:35:14 +0530
Subject: [PATCH] Add support for building on/cross-compiling the shared
library for Windows and OS X
Also ensure that the shared library is versioned, and an implib is created on
Commit backported from upstream.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Makefile.in | 53 ++++++++++++++++++++++++++++++++++++++++-------------
1 file changed, 40 insertions(+), 13 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index 5a7fc21..5ca4453 100644
USE_OPENSSL = @USE_OPENSSL@
HAVE_PKG_CONFIG = @HAVE_PKG_CONFIG@
-.PHONY: all test build_table_apps
+.PHONY: all shared_library test build_table_apps
@@ -43,10 +43,10 @@ endif
INCDIR = -Icrypto/include -I$(srcdir)/include -I$(srcdir)/crypto/include
+CPPFLAGS= -fPIC @CPPFLAGS@
COMPILE = $(CC) $(DEFS) $(INCDIR) $(CPPFLAGS) $(CFLAGS)
@@ -75,12 +75,33 @@ prefix = @prefix@
exec_prefix = @exec_prefix@
includedir = @includedir@
ifeq (1, $(HAVE_PKG_CONFIG))
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libsrtp.pc
+ifeq (linux,$(findstring linux,@host@))
+SHAREDLIB_DIR = $(libdir)
+SHAREDLIB_LDFLAGS = -shared -Wl,-soname,$@
+SHAREDLIBSUFFIXNOVER = so
+SHAREDLIBSUFFIX = $(SHAREDLIBSUFFIXNOVER).$(SHAREDLIBVERSION)
+else ifeq (mingw,$(findstring mingw,@host@))
+SHAREDLIB_DIR = $(bindir)
+SHAREDLIB_LDFLAGS = -shared -Wl,--out-implib,libsrtp.dll.a