separate libosmo-mgcp-client from mgcp server code
When osmo-mgw is built --with-mgcp-transcoding, linking the mgcp library also requires linking libgsm, even though e.g. osmo-msc never use it. Separate the MGCP client code from the MGCP server code to avoid this dep. The mgcp client code does use some definitions from mgcp.h and mgcp_common.c. For simplicity, link mgcp_common.c in both libosmo-legacy-mgcp as well as libosmo-mgcp-client. That means it is not possible to link both libosmo-legacy-mgcp and libosmo-mgcp-client in the same binary because of duplicate symbols, but currently that is sufficient. (An alternative would be code dup or yet another libosmo-mgcp-common library.) Add libosmo-mgcp-client to debian packaging. Related: OS#2488 Change-Id: I8e0b2d2a399b77086a36606f5e427271c6242df1changes/83/3783/2
parent
d049a66b79
commit
97df691307
|
@ -17,7 +17,10 @@ SUBDIRS = \
|
|||
$(NULL)
|
||||
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = libosmo-legacy-mgcp.pc
|
||||
pkgconfig_DATA = \
|
||||
libosmo-legacy-mgcp.pc \
|
||||
libosmo-mgcp-client.pc \
|
||||
$(NULL)
|
||||
|
||||
BUILT_SOURCES = $(top_srcdir)/.version
|
||||
EXTRA_DIST = git-version-gen osmoappdesc.py .version
|
||||
|
|
|
@ -118,15 +118,19 @@ AM_CONFIG_HEADER(bscconfig.h)
|
|||
|
||||
AC_OUTPUT(
|
||||
libosmo-legacy-mgcp.pc
|
||||
libosmo-mgcp-client.pc
|
||||
include/Makefile
|
||||
include/osmocom/Makefile
|
||||
include/osmocom/legacy_mgcp/Makefile
|
||||
include/osmocom/mgcp_client/Makefile
|
||||
src/Makefile
|
||||
src/libosmo-legacy-mgcp/Makefile
|
||||
src/libosmo-mgcp-client/Makefile
|
||||
src/osmo-bsc_mgcp/Makefile
|
||||
tests/Makefile
|
||||
tests/atlocal
|
||||
tests/legacy_mgcp/Makefile
|
||||
tests/mgcp_client/Makefile
|
||||
doc/Makefile
|
||||
doc/examples/Makefile
|
||||
contrib/Makefile
|
||||
|
|
|
@ -47,3 +47,25 @@ Architecture: any
|
|||
Multi-Arch: same
|
||||
Depends: libosmo-legacy-mgcp0 (= ${binary:Version}), ${misc:Depends}
|
||||
Description: libosmo-legacy-mgcp: Osmocom's Media Gateway server library
|
||||
|
||||
Package: libosmo-mgcp-client0
|
||||
Section: libs
|
||||
Architecture: any
|
||||
Multi-Arch: same
|
||||
Pre-Depends: ${misc:Pre-Depends}
|
||||
Depends: ${misc:Depends}, ${shlibs:Depends}
|
||||
Description: libosmo-mgcp-client: Osmocom's Media Gateway Control Protocol client utilities
|
||||
|
||||
Package: libosmo-mgcp-client-dbg
|
||||
Section: debug
|
||||
Architecture: any
|
||||
Multi-Arch: same
|
||||
Depends: libosmo-mgcp-client0 (= ${binary:Version}), ${misc:Depends}
|
||||
Description: libosmo-mgcp-client: Osmocom's Media Gateway Control Protocol client utilities
|
||||
|
||||
Package: libosmo-mgcp-client-dev
|
||||
Section: libdevel
|
||||
Architecture: any
|
||||
Multi-Arch: same
|
||||
Depends: libosmo-mgcp-client0 (= ${binary:Version}), ${misc:Depends}
|
||||
Description: libosmo-mgcp-client: Osmocom's Media Gateway Control Protocol client utilities
|
||||
|
|
|
@ -32,3 +32,4 @@ override_dh_autoreconf:
|
|||
override_dh_strip:
|
||||
dh_strip --dbg-package=osmo-mgw-dbg
|
||||
dh_strip --dbg-package=libosmo-legacy-mgcp-dbg
|
||||
dh_strip --dbg-package=libosmo-mgcp-client-dbg
|
||||
|
|
|
@ -5,6 +5,6 @@ SUBDIRS = \
|
|||
nobase_include_HEADERS = \
|
||||
osmocom/legacy_mgcp/mgcp.h \
|
||||
osmocom/legacy_mgcp/mgcp_internal.h \
|
||||
osmocom/legacy_mgcp/mgcpgw_client.h \
|
||||
osmocom/legacy_mgcp/osmux.h \
|
||||
osmocom/mgcp_client/mgcpgw_client.h \
|
||||
$(NULL)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
SUBDIRS = \
|
||||
legacy_mgcp \
|
||||
mgcp_client \
|
||||
$(NULL)
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
noinst_HEADERS = \
|
||||
mgcpgw_client_internal.h \
|
||||
mgcp_transcode.h \
|
||||
vty.h \
|
||||
$(NULL)
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
noinst_HEADERS = \
|
||||
mgcpgw_client_internal.h \
|
||||
$(NULL)
|
|
@ -0,0 +1,10 @@
|
|||
prefix=@prefix@
|
||||
exec_prefix=@exec_prefix@
|
||||
libdir=@libdir@
|
||||
includedir=@includedir@
|
||||
|
||||
Name: Osmocom Media Gateway Control Protocol Client library
|
||||
Description: C Utility Library
|
||||
Version: @VERSION@
|
||||
Libs: -L${libdir} -losmo-mgcp-client
|
||||
Cflags: -I${includedir}/
|
|
@ -22,6 +22,7 @@ AM_LDFLAGS = \
|
|||
# Libraries
|
||||
SUBDIRS = \
|
||||
libosmo-legacy-mgcp \
|
||||
libosmo-mgcp-client \
|
||||
$(NULL)
|
||||
|
||||
# Programs
|
||||
|
|
|
@ -41,8 +41,6 @@ libosmo_legacy_mgcp_la_SOURCES = \
|
|||
mgcp_vty.c \
|
||||
mgcp_osmux.c \
|
||||
mgcp_sdp.c \
|
||||
mgcpgw_client.c \
|
||||
mgcpgw_client_vty.c \
|
||||
$(NULL)
|
||||
if BUILD_MGCP_TRANSCODING
|
||||
libosmo_legacy_mgcp_la_SOURCES += \
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
AM_CPPFLAGS = \
|
||||
$(all_includes) \
|
||||
-I$(top_srcdir)/include \
|
||||
-I$(top_builddir) \
|
||||
$(NULL)
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall \
|
||||
$(LIBOSMOCORE_CFLAGS) \
|
||||
$(LIBOSMOVTY_CFLAGS) \
|
||||
$(LIBOSMONETIF_CFLAGS) \
|
||||
$(COVERAGE_CFLAGS) \
|
||||
$(NULL)
|
||||
|
||||
AM_LDFLAGS = \
|
||||
$(LIBOSMOCORE_LIBS) \
|
||||
$(LIBOSMOGSM_LIBS) \
|
||||
$(LIBOSMONETIF_LIBS) \
|
||||
$(COVERAGE_LDFLAGS) \
|
||||
$(NULL)
|
||||
|
||||
# This is _NOT_ the library release version, it's an API version.
|
||||
# Please read Chapter 6 "Library interface versions" of the libtool
|
||||
# documentation before making any modification
|
||||
MGCP_CLIENT_LIBVERSION=1:0:0
|
||||
|
||||
lib_LTLIBRARIES = \
|
||||
libosmo-mgcp-client.la \
|
||||
$(NULL)
|
||||
|
||||
libosmo_mgcp_client_la_SOURCES = \
|
||||
mgcpgw_client.c \
|
||||
mgcpgw_client_vty.c \
|
||||
../libosmo-legacy-mgcp/mgcp_common.c \
|
||||
$(NULL)
|
||||
|
||||
libosmo_mgcp_client_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(MGCP_CLIENT_LIBVERSION)
|
|
@ -24,10 +24,10 @@
|
|||
#include <osmocom/core/msgb.h>
|
||||
#include <osmocom/core/logging.h>
|
||||
|
||||
#include <osmocom/legacy_mgcp/mgcpgw_client.h>
|
||||
#include <osmocom/legacy_mgcp/mgcp.h>
|
||||
#include <osmocom/legacy_mgcp/mgcp_internal.h>
|
||||
#include <osmocom/legacy_mgcp/mgcpgw_client_internal.h>
|
||||
#include <osmocom/mgcp_client/mgcpgw_client.h>
|
||||
#include <osmocom/mgcp_client/mgcpgw_client_internal.h>
|
||||
|
||||
#include <netinet/in.h>
|
||||
#include <arpa/inet.h>
|
|
@ -28,7 +28,7 @@
|
|||
#include <osmocom/core/utils.h>
|
||||
|
||||
#include <osmocom/legacy_mgcp/vty.h>
|
||||
#include <osmocom/legacy_mgcp/mgcpgw_client.h>
|
||||
#include <osmocom/mgcp_client/mgcpgw_client.h>
|
||||
|
||||
#define MGCPGW_STR "MGCP gateway configuration for RTP streams\n"
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
SUBDIRS = \
|
||||
legacy_mgcp \
|
||||
mgcp_client \
|
||||
$(NULL)
|
||||
|
||||
# The `:;' works around a Bash 3.2 bug when the output is not writeable.
|
||||
|
|
|
@ -20,13 +20,10 @@ AM_LDFLAGS = \
|
|||
EXTRA_DIST = \
|
||||
mgcp_test.ok \
|
||||
mgcp_transcoding_test.ok \
|
||||
mgcpgw_client_test.ok \
|
||||
mgcpgw_client_test.err \
|
||||
$(NULL)
|
||||
|
||||
noinst_PROGRAMS = \
|
||||
mgcp_test \
|
||||
mgcpgw_client_test \
|
||||
$(NULL)
|
||||
if BUILD_MGCP_TRANSCODING
|
||||
noinst_PROGRAMS += \
|
||||
|
@ -62,16 +59,3 @@ mgcp_transcoding_test_LDADD = \
|
|||
$(LIBRARY_GSM) \
|
||||
-lm \
|
||||
$(NULL)
|
||||
|
||||
mgcpgw_client_test_SOURCES = \
|
||||
mgcpgw_client_test.c \
|
||||
$(NULL)
|
||||
|
||||
mgcpgw_client_test_LDADD = \
|
||||
$(top_builddir)/src/libosmo-legacy-mgcp/libosmo-legacy-mgcp.la \
|
||||
$(LIBOSMOCORE_LIBS) \
|
||||
$(LIBOSMOVTY_LIBS) \
|
||||
$(LIBRARY_DL) \
|
||||
$(LIBOSMONETIF_LIBS) \
|
||||
$(LIBRARY_GSM) \
|
||||
$(NULL)
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
AM_CPPFLAGS = \
|
||||
$(all_includes) \
|
||||
-I$(top_srcdir)/include \
|
||||
-I$(top_srcdir) \
|
||||
$(NULL)
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall \
|
||||
-ggdb3 \
|
||||
$(LIBOSMOCORE_CFLAGS) \
|
||||
$(LIBOSMONETIF_CFLAGS) \
|
||||
$(COVERAGE_CFLAGS) \
|
||||
$(NULL)
|
||||
|
||||
AM_LDFLAGS = \
|
||||
$(COVERAGE_LDFLAGS) \
|
||||
$(NULL)
|
||||
|
||||
EXTRA_DIST = \
|
||||
mgcpgw_client_test.ok \
|
||||
mgcpgw_client_test.err \
|
||||
$(NULL)
|
||||
|
||||
noinst_PROGRAMS = \
|
||||
mgcpgw_client_test \
|
||||
$(NULL)
|
||||
|
||||
mgcpgw_client_test_SOURCES = \
|
||||
mgcpgw_client_test.c \
|
||||
$(NULL)
|
||||
|
||||
mgcpgw_client_test_LDADD = \
|
||||
$(top_builddir)/src/libosmo-mgcp-client/libosmo-mgcp-client.la \
|
||||
$(LIBOSMOCORE_LIBS) \
|
||||
$(LIBOSMOVTY_LIBS) \
|
||||
$(LIBRARY_DL) \
|
||||
$(LIBOSMONETIF_LIBS) \
|
||||
$(NULL)
|
|
@ -23,8 +23,8 @@
|
|||
#include <osmocom/core/msgb.h>
|
||||
#include <osmocom/core/application.h>
|
||||
#include <osmocom/legacy_mgcp/mgcp.h>
|
||||
#include <osmocom/legacy_mgcp/mgcpgw_client.h>
|
||||
#include <osmocom/legacy_mgcp/mgcpgw_client_internal.h>
|
||||
#include <osmocom/mgcp_client/mgcpgw_client.h>
|
||||
#include <osmocom/mgcp_client/mgcpgw_client_internal.h>
|
||||
|
||||
void *ctx;
|
||||
|
|
@ -14,9 +14,9 @@ cat $abs_srcdir/legacy_mgcp/mgcp_transcoding_test.ok > expout
|
|||
AT_CHECK([$abs_top_builddir/tests/legacy_mgcp/mgcp_transcoding_test], [], [expout], [ignore])
|
||||
AT_CLEANUP
|
||||
|
||||
AT_SETUP([legacy_mgcpgw_client])
|
||||
AT_KEYWORDS([legacy_mgcpgw_client])
|
||||
cat $abs_srcdir/legacy_mgcp/mgcpgw_client_test.ok > expout
|
||||
cat $abs_srcdir/legacy_mgcp/mgcpgw_client_test.err > experr
|
||||
AT_CHECK([$abs_top_builddir/tests/legacy_mgcp/mgcpgw_client_test], [], [expout], [experr])
|
||||
AT_SETUP([mgcpgw_client])
|
||||
AT_KEYWORDS([mgcpgw_client])
|
||||
cat $abs_srcdir/mgcp_client/mgcpgw_client_test.ok > expout
|
||||
cat $abs_srcdir/mgcp_client/mgcpgw_client_test.err > experr
|
||||
AT_CHECK([$abs_top_builddir/tests/mgcp_client/mgcpgw_client_test], [], [expout], [experr])
|
||||
AT_CLEANUP
|
||||
|
|
Loading…
Reference in New Issue