diff mbox

[3/4] package/freeswitch_mod_bcg729: new package

Message ID 20170430201737.12821-3-bernd.kuhls@t-online.de
State Superseded
Headers show

Commit Message

Bernd Kuhls April 30, 2017, 8:17 p.m. UTC
This package is based on the bcg729 library from Belledonne
Communications which is wrapped into a freeswitch module to provide a
native G729.A codec.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 DEVELOPERS                                         |  1 +
 package/Config.in                                  |  1 +
 package/freeswitch_mod_bcg729/Config.in            |  9 +++++++
 .../freeswitch_mod_bcg729.hash                     |  2 ++
 .../freeswitch_mod_bcg729/freeswitch_mod_bcg729.mk | 30 ++++++++++++++++++++++
 5 files changed, 43 insertions(+)
 create mode 100644 package/freeswitch_mod_bcg729/Config.in
 create mode 100644 package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.hash
 create mode 100644 package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.mk

Comments

Thomas Petazzoni April 30, 2017, 8:55 p.m. UTC | #1
Hello,

On Sun, 30 Apr 2017 22:17:36 +0200, Bernd Kuhls wrote:

>  DEVELOPERS                                         |  1 +
>  package/Config.in                                  |  1 +
>  package/freeswitch_mod_bcg729/Config.in            |  9 +++++++
>  .../freeswitch_mod_bcg729.hash                     |  2 ++
>  .../freeswitch_mod_bcg729/freeswitch_mod_bcg729.mk | 30 ++++++++++++++++++++++

I think I'd prefer if the package was named freeswitch-mod-bcg729.
Indeed, we use - more frequently as the separator in package names
(python-*, lua-*, etc.).

Best regards,

Thomas
diff mbox

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index 28c8bf5da..29157b2e0 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -167,6 +167,7 @@  F:	package/eudev/
 F:	package/exim/
 F:	package/fetchmail/
 F:	package/freeswitch/
+F:	package/freeswitch_mod_bcg729/
 F:	package/ffmpeg/
 F:	package/ghostscript/
 F:	package/giflib/
diff --git a/package/Config.in b/package/Config.in
index 3f88582b0..f180b52e5 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1550,6 +1550,7 @@  menu "Networking applications"
 	source "package/fmc/Config.in"
 	source "package/fping/Config.in"
 	source "package/freeswitch/Config.in"
+	source "package/freeswitch_mod_bcg729/Config.in"
 	source "package/gesftpserver/Config.in"
 	source "package/gupnp-tools/Config.in"
 	source "package/gutenprint/Config.in"
diff --git a/package/freeswitch_mod_bcg729/Config.in b/package/freeswitch_mod_bcg729/Config.in
new file mode 100644
index 000000000..848d4ee67
--- /dev/null
+++ b/package/freeswitch_mod_bcg729/Config.in
@@ -0,0 +1,9 @@ 
+config BR2_PACKAGE_FREESWITCH_MOD_BCG729
+	bool "freeswitch-mod-bcg729"
+	depends on BR2_PACKAGE_FREESWITCH
+	select BR2_PACKAGE_LIBBCG729
+	help
+	  FreeSWITCH G.729A module using the opensource bcg729
+	  implementation by Belledonne Communications.
+
+	  https://github.com/xadhoom/mod_bcg729
diff --git a/package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.hash b/package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.hash
new file mode 100644
index 000000000..9e999ff79
--- /dev/null
+++ b/package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.hash
@@ -0,0 +1,2 @@ 
+# Locally computed
+sha256 0fda28ad72a1cd6a675f2ec231fb8fd1f01fc095b3ea45a4eca6d06ecdf5ca9c  freeswitch_mod_bcg729-803858c78e6f9ab7de42fdb452061d00255150c6.tar.gz
diff --git a/package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.mk b/package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.mk
new file mode 100644
index 000000000..42642720a
--- /dev/null
+++ b/package/freeswitch_mod_bcg729/freeswitch_mod_bcg729.mk
@@ -0,0 +1,30 @@ 
+################################################################################
+#
+# freeswitch_mod_bcg729
+#
+################################################################################
+
+FREESWITCH_MOD_BCG729_VERSION = 803858c78e6f9ab7de42fdb452061d00255150c6
+FREESWITCH_MOD_BCG729_SITE = $(call github,xadhoom,mod_bcg729,$(FREESWITCH_MOD_BCG729_VERSION))
+FREESWITCH_MOD_BCG729_LICENSE = MPL-1.1
+FREESWITCH_MOD_BCG729_LICENSE_FILES = LICENSE
+FREESWITCH_MOD_BCG729_DEPENDENCIES = freeswitch libbcg729
+
+# instead of patching the not cross-compile friendly Makefile from
+# upstream we issue the necessary build commands ourselves
+define FREESWITCH_MOD_BCG729_BUILD_CMDS
+	$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \
+		-I$(STAGING_DIR)/usr/include/freeswitch \
+		-fPIC -fomit-frame-pointer -fno-exceptions \
+		-c $(@D)/mod_bcg729.c -o $(@D)/mod_bcg729.o
+	$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \
+		-fPIC -fomit-frame-pointer -fno-exceptions \
+		-shared -Xlinker -x -lm -lbcg729 -Wl,-Bdynamic \
+		-o $(@D)/mod_bcg729.so $(@D)/mod_bcg729.o
+endef
+
+define FREESWITCH_MOD_BCG729_INSTALL_TARGET_CMDS
+	$(INSTALL) -m 0755 $(@D)/mod_bcg729.so $(TARGET_DIR)/usr/lib/freeswitch/mod/mod_bcg729.so
+endef
+
+$(eval $(generic-package))