package/freeswitch: new package
v9 cover package/freeswitch: new package
Hi,
this patch series splits my previous patch into smaller chunks for easier review as requested by Luca and Thomas. I also removed all options from Config.in.
Instead of enabling or disabling modules in the upstream modules.conf I decided to delete that file in the first patch to provide a minimal build for easier review, please keep in mind that I never did a run-time test with this minimal version. A lot of modules, desired as a default set, are added with the second patch - all of them have no external dependencies. The rest of the patch series consists of modules having some form of dependency, added module by module for easier review.
Regards, Bernd
v9: - added comment about bundled 3rd-party libraries (Romain)
- renamed some POST_PATCH_HOOKS into PRE_CONFIGURE_HOOKS (Romain)
- replaced autoreconf fix for spandsp (added in v6) with upstream commit, removed dependency to host-autoconf-archive
v8: - rebased against branch next
v7: - removed all Kconfig suboptions
- squashed zrtp patch into main patch
- updated platform support checks for zrtp and mod_isac
- renamed zrtp patch to 0002-zrtp.patch and updated it to fix PPC
- enabled missing modules:
mod_g723_1, mod_g729, mod_loopback and mod_say_*
v6: - bumped to version 1.6.6
- fixed autoreconf bug in libs/spandsp/ introduced by version bump
- added hint for dynamic libs to comment in Config.in (Ricardo)
- changed dependency from libjpeg to jpeg (Ricardo)
- fixed -Werror bug using FREESWITCH_CONF_ENV,
removed 0001-cross_git.patch (Ricardo)
- re-numbered patches
v5: - bumped to version 1.6.5
- split patch into smaller chunks (Luca, Thomas)
- removed most of the options from Config.in
- added several new modules
- compilation with uClibc-ng is fixed
v4: - bumped to version 1.6.2
v3: - bumped to version 1.6.0, added hash
- to compile with uClibc-NG this patch is needed:
http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?h=1.0&id=5a167e319ca2bee566d330d1c901d76dc53deea7
http://thread.gmane.org/gmane.comp.lib.uclibc.buildroot/126450/focus=127191
- removed python module, cross compiling to 32bit on 64bit host is broken:
http://lists.busybox.net/pipermail/buildroot/2011-August/045039.html
- added reverse dependencies from vlc
- added comment to 0002-jpeg.patch
v2: - addressed various comments (Thomas)
Bernd Kuhls (28):
package/freeswitch: new package
package/freeswitch: enable optional modules package/freeswitch: add optional dependency to libuuid package/freeswitch: add optional dependency to libedit package/freeswitch: enable mod_enum, add optional dependency to
libldns
package/freeswitch: add optional dependency to libpng package/freeswitch: add optional dependency to unixodbc package/freeswitch: add optional dependency to freetype package/freeswitch: enable mod_yaml, add optional dependency to
libyaml
package/freeswitch: enable mod_lua, add optional dependency to lua package/freeswitch: enable mod_fsv, add optional dependencies to
libvpx & libyuv
package/freeswitch: enable mod_av, add optional dependencies to
ffmpeg, libvpx & libyuv
package/freeswitch: enable mod_vpx, add optional dependency to libvpx package/freeswitch: enable mod_bv, add optional dependency to
libbroadvoice
package/freeswitch: enable mod_codec2, add optional dependency to
libcodec2
package/freeswitch: add optional dependency to libg7221 package/freeswitch: enable mod_ilbc, add optional dependency to
libilbc
package/freeswitch: enable mod_isac
package/freeswitch: enable mod_opus, add optional dependency to opus package/freeswitch: enable mod_portaudio, add optional dependency to
portaudio
package/freeswitch: enable mod_silk, add optional dependency to
libsilk
package/freeswitch: enable mod_sndfile, add optional dependency to
libsndfile
package/freeswitch: enable mod_alsa, add optional dependency to
alsa-lib
package/freeswitch: enable mod_soundtouch, add optional dependency to
libsoundtouch
package/freeswitch: enable mod_xml_rpc
package/freeswitch: enable mod_imagick, add optional dependencies to
imagemagick, libvpx & libyuv
package/freeswitch: enable mod_memcache, add optional dependency to
libmemcached
package/freeswitch: add optional dependency to xz
package/Config.in | 1 + package/freeswitch/0001-jpeg.patch | 31 +++ package/freeswitch/0002-zrtp.patch | 33 +++ ...olve-Missing-MEMMOVE-macro-in-spandsp-aut.patch | 71 +++++ package/freeswitch/Config.in | 28 ++ package/freeswitch/freeswitch.hash | 2 + package/freeswitch/freeswitch.mk | 291 +++++++++++++++++++++ 7 files changed, 457 insertions(+) create mode 100644 package/freeswitch/0001-jpeg.patch create mode 100644 package/freeswitch/0002-zrtp.patch create mode 100644 package/freeswitch/0003-FS-8736-resolve-Missing-MEMMOVE-macro-in-spandsp-aut.patch create mode 100644 package/freeswitch/Config.in create mode 100644 package/freeswitch/freeswitch.hash create mode 100644 package/freeswitch/freeswitch.mk
Signature · 1 line
2.7.0
PATCH v9 1/28 package/freeswitch: new package
This commit adds freeswitch without any configured modules and with a minimal set of non-optional dependencies. All other dependencies and modules will be added by further patches in this series.
PLease note that freeswitch source repo bundles some libraries which are also available as buildroot packages. The freeswitch build system does not allow to use system libraries in these cases:
apr, apr-util, libsrtp, sofia-sip, tiff
The reason are patches to these packages by the freeswitch project which are not yet upstream. There is an open JIRA report for this situation:
https://freeswitch.org/jira/si/jira.issueviews:issue-html/FS-353/FS-353.html
More historic infos can be found here:
http://article.gmane.org/gmane.comp.telephony.freeswitch.devel/2715
https://freeswitch.org/the-missing-link/
--- package/Config.in | 1 + package/freeswitch/0001-jpeg.patch | 31 ++++++++ package/freeswitch/0002-zrtp.patch | 33 +++++++++ ...olve-Missing-MEMMOVE-macro-in-spandsp-aut.patch | 71 ++++++++++++++++++ package/freeswitch/Config.in | 24 ++++++ package/freeswitch/freeswitch.hash | 2 + package/freeswitch/freeswitch.mk | 85 ++++++++++++++++++++++ 7 files changed, 247 insertions(+) create mode 100644 package/freeswitch/0001-jpeg.patch create mode 100644 package/freeswitch/0002-zrtp.patch create mode 100644 package/freeswitch/0003-FS-8736-resolve-Missing-MEMMOVE-macro-in-spandsp-aut.patch create mode 100644 package/freeswitch/Config.in create mode 100644 package/freeswitch/freeswitch.hash create mode 100644 package/freeswitch/freeswitch.mk
package/Config.in +1 -0
@@ -1361,6 +1361,7 @@ endif source "package/fmc/Config.in" source "package/foomatic-filters/Config.in" source "package/fping/Config.in" + source "package/freeswitch/Config.in" source "package/gesftpserver/Config.in" source "package/gutenprint/Config.in" source "package/hans/Config.in"
package/freeswitch/0001-jpeg.patch new file +31 -0
@@ -0,0 +1,31 @@ +Fix jpeg detection + +libyuv has an optional jpeg dependency, freeswitch configure misses -ljpeg +when searching for libyuv and therefore assumes libyuv is missing. When +freeswitch first searches for libjpeg, -ljpeg will be added to +PKG_CHECK_MODULES([YUV]. + +Patch sent upstream: https://freeswitch.org/jira/browse/FS-8745 + +Signed-off-by: Bernd Kuhls <[email protected]> + +diff -uNr freeswitch_video2-b8b6acf33efe64aebbd939dd7281d6b6cd8fc2f4.org/configure.ac freeswitch_video2-b8b6acf33efe64aebbd939dd7281d6b6cd8fc2f4/configure.ac +--- freeswitch_video2-b8b6acf33efe64aebbd939dd7281d6b6cd8fc2f4.org/configure.ac 2015-05-23 05:18:56.000000000 +0200 ++++ freeswitch_video2-b8b6acf33efe64aebbd939dd7281d6b6cd8fc2f4/configure.ac 2015-05-25 14:15:20.360156247 +0200 +@@ -783,6 +783,8 @@ + APR_ADDTO([PLATFORM_CORE_LIBS], [-lz]) + fi + ++AC_CHECK_LIB(jpeg, jpeg_std_error,, AC_MSG_ERROR([no usable libjpeg; please install libjpeg devel package or equivalent])) ++ + PKG_CHECK_MODULES([YUV], [libyuv >= 0.0.1280], + [AC_MSG_RESULT([yes]);AM_CONDITIONAL([HAVE_YUV],[true])], + [AC_MSG_RESULT([no]);AM_CONDITIONAL([HAVE_YUV],[false])]) +@@ -797,7 +799,6 @@ + + save_LIBS="$LIBS" + LIBS= +-AC_CHECK_LIB(jpeg, jpeg_std_error,, AC_MSG_ERROR([no usable libjpeg; please install libjpeg devel package or equivalent])) + + AC_CHECK_LIB(jbig, jbg_enc_out, have_libjbig=yes, have_libjbig=no) + if test "x$have_libjbig" = "xyes" ; then
package/freeswitch/0002-zrtp.patch new file +33 -0
@@ -0,0 +1,33 @@ +Fix PowerPC detection (needs __linux__) and add aarch64 support. + +Patch sent upstream: https://freeswitch.org/jira/browse/FS-8746 + +Signed-off-by: Bernd Kuhls <[email protected]> + +diff -uNr freeswitch-1.6.6.org/libs/libzrtp/include/zrtp_config.h freeswitch-1.6.6/libs/libzrtp/include/zrtp_config.h +--- freeswitch-1.6.6.org/libs/libzrtp/include/zrtp_config.h 2016-01-12 17:32:36.000000000 +0100 ++++ freeswitch-1.6.6/libs/libzrtp/include/zrtp_config.h 2016-01-16 14:09:17.830860603 +0100 +@@ -21,7 +21,7 @@ + # define ZRTP_PLATFORM ZP_ANDROID + # elif defined(__FreeBSD__) + # define ZRTP_PLATFORM ZP_BSD +-# elif defined(linux) || defined(__linux) ++# elif defined(linux) || defined(__linux__) + # include <linux/version.h> + # define ZRTP_PLATFORM ZP_LINUX + # elif defined(__MACOSX__) || defined (__APPLE__) || defined (__MACH__) +@@ -88,7 +88,13 @@ + */ + #define ZRTP_BYTE_ORDER ZBO_BIG_ENDIAN + +-#elif defined(ARM) || defined(_ARM_) || defined(ARMV4) || defined(__arm__) ++#elif defined(__AARCH64EB__) ++/* ++ * aarch64, big endian ++ */ ++#define ZRTP_BYTE_ORDER ZBO_BIG_ENDIAN ++ ++#elif defined(ARM) || defined(_ARM_) || defined(ARMV4) || defined(__arm__) || defined(__AARCH64EL__) + /* + * ARM, default to little endian + */
package/freeswitch/0003-FS-8736-resolve-Missing-MEMMOVE-macro-in-spandsp-aut.patch new file +71 -0
71 lines not on this page · raw message
package/freeswitch/Config.in new file +24 -0
@@ -0,0 +1,24 @@ +config BR2_PACKAGE_FREESWITCH + bool "freeswitch" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # apr, included in freeswitch source + depends on !BR2_STATIC_LIBS # apr, included in freeswitch source + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_PCRE + select BR2_PACKAGE_SPEEX + select BR2_PACKAGE_SQLITE + select BR2_PACKAGE_ZLIB + help + FreeSWITCH is a scalable open source cross-platform telephony + platform designed to route and interconnect popular communication + protocols using audio, video, text or any other form of media. + + https://www.freeswitch.org + +comment "freeswitch needs a toolchain w/ C++, dynamic library, threads" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_STATIC_LIBS
package/freeswitch/freeswitch.hash new file +2 -0
@@ -0,0 +1,2 @@ +# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.6.6.tar.xz.sha256 +sha256 397b9c63c2c1f7008a2cc269f2e0e9a935d862b3fb074a6044819bcaea02ebc0 freeswitch-1.6.6.tar.xz
package/freeswitch/freeswitch.mk new file +85 -0
85 lines not on this page · raw message
Signature · 1 line
2.7.0
PATCH v9 1/28 package/freeswitch: new package
Dear Bernd Kuhls,
Quoted 8 lines · Bernd Kuhls
This commit adds freeswitch without any configured modules and with a minimal set of non-optional dependencies. All other dependencies and modules will be added by further patches in this series.
PLease note that freeswitch source repo bundles some libraries which are also available as buildroot packages. The freeswitch build system does not allow to use system libraries in these cases:
Quoted 5 lines
apr, apr-util, libsrtp, sofia-sip, tiff
The reason are patches to these packages by the freeswitch project which are not yet upstream. There is an open JIRA report for this situation:
https://freeswitch.org/jira/si/jira.issueviews:issue-html/FS-353/FS-353.html
The number of libs they bundle is quite unfortunate. But well, there's no much you can about this besides following this bug report.
Quoted 6 lines
More historic infos can be found here:
http://article.gmane.org/gmane.comp.telephony.freeswitch.devel/2715
https://freeswitch.org/the-missing-link/Signed-off-by Bernd Kuhls <[email protected]>
This patch unfortunately does not build here. With the following defconfig:
BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2015.11-rc1-71-g90d1299.tar.bz2" BR2_TOOLCHAIN_EXTERNAL_GCC_4_7=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y
BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_FREESWITCH=y
# BR2_TARGET_ROOTFS_TAR is not set
I get:
CCLD fs_ivrd
libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function `lbnMemWipe':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/libzrtp/third_party/bnlib/lbnmem.c:69: undefined reference to zrtp_memset' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function lbnMemAlloc':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/libzrtp/third_party/bnlib/lbnmem.c:78: undefined reference to zrtp_sys_alloc' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function lbnMemFree':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/libzrtp/third_party/bnlib/lbnmem.c:87: undefined reference to `zrtp_sys_free'
collect2: error: ld returned 1 exit status
Makefile:1462: recipe for target 'fs_cli' failed
make[4]: *** [fs_cli] Error 1
make[4]: *** Waiting for unfinished jobs....
libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function `lbnMemWipe':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/libzrtp/third_party/bnlib/lbnmem.c:69: undefined reference to zrtp_memset' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function lbnMemAlloc':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/libzrtp/third_party/bnlib/lbnmem.c:78: undefined reference to zrtp_sys_alloc' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function lbnMemFree':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/libzrtp/third_party/bnlib/lbnmem.c:87: undefined reference to `zrtp_sys_free'
collect2: error: ld returned 1 exit status
Makefile:1470: recipe for target 'fs_ivrd' failed
make[4]: *** [fs_ivrd] Error 1
*** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libzrtp/libzrtp.a is not portable!
Quoted 6 lines
package/freeswitch/0001-jpeg.patch new file +0
-0
package/freeswitch/0001-jpeg.patch line 8
Quoted 8 lines
package/freeswitch/0001-jpeg.patch new file +8
-0@@ -0,0 +1,31 @@ +Fix jpeg detection + +libyuv has an optional jpeg dependency, freeswitch configure misses -ljpeg +when searching for libyuv and therefore assumes libyuv is missing. When +freeswitch first searches for libjpeg, -ljpeg will be added to +PKG_CHECK_MODULES([YUV]. + +Patch sent upstream: https://freeswitch.org/jira/browse/FS-8745
Can you follow-up on this bug report by doing a pull request, as they suggested?
package/freeswitch/0002-zrtp.patch line 3
Quoted 9 lines
package/freeswitch/0002-zrtp.patch new file +3
-0@@ -0,0 +1,33 @@ +Fix PowerPC detection (needs __linux__) and add aarch64 support. + +Patch sent upstream: https://freeswitch.org/jira/browse/FS-8746
Ditto.
(Note that I find it weird to fix a bug and add support for a new architecture in the same patch. Two separate patches would have definitely been better here.)
package/freeswitch/0003-FS-8736-resolve-Missing-MEMMOVE-macro-in-spandsp-aut.patch line 5
Quoted 11 lines
package/freeswitch/0003-FS-8736-resolve-Missing-MEMMOVE-macro-in-spandsp-aut.patch new file +5
-0@@ -0,0 +1,71 @@ +From 10df60039322b3903e62b001971c195d5ce48943 Mon Sep 17 00:00:00 2001 +From: Anthony Minessale <[email protected]> +Date: Fri, 15 Jan 2016 13:14:07 -0600 +Subject: [PATCH 05/99] FS-8736 #resolve [Missing MEMMOVE macro in spandsp + autoconf]
Not sure why there is a 05/99 here.
Quoted 6 lines
package/freeswitch/freeswitch.mk new file +0
-0
package/freeswitch/freeswitch.mk line 10
Quoted 10 lines
package/freeswitch/freeswitch.mk new file +10
-0@@ -0,0 +1,85 @@ +################################################################################ +# +# freeswitch +# +################################################################################ + +FREESWITCH_VERSION = 1.6.6 +FREESWITCH_SOURCE = freeswitch-$(FREESWITCH_VERSION).tar.xz +FREESWITCH_SITE = http://files.freeswitch.org/freeswitch-releases +FREESWITCH_LICENSE = MPL v1.1
This should be MPLv1.1
package/freeswitch/freeswitch.mk line 22
Quoted 12 lines
package/freeswitch/freeswitch.mk new file +12
-0+FREESWITCH_LICENSE_FILES = COPYING + +# required dependencies +FREESWITCH_DEPENDENCIES = \ + host-autoconf host-automake host-libtool host-pkgconf jpeg \ + libcurl openssl pcre speex sqlite zlib + +# remove an unneeded script which scans /usr/lib/freeswitch/mod +define FREESWITCH_REMOVE_MODCHECK + $(SED) "/modcheck.sh/d" $(@D)/build/Makefile.am +endef +FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_REMOVE_MODCHECK
Shouldn't this hook be rather handled by a patch ?
package/freeswitch/freeswitch.mk line 25
Quoted 3 lines
package/freeswitch/freeswitch.mk new file +3
-0+ +# autoreconf now is necessary to avoid broken autoreconf after configure +# we also patch configure.ac twice
What do you mean by "patch configure.ac twice" ? Do you mean that there are two patches touching it.
You should also explain in a comment why the normal FREESWITCH_AUTORECONF = YES incantation doesn't work.
Other than that looks good. I would probably have applied if I didn't encounter the build failure :-)
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v9 1/28 package/freeswitch: new package
Am Mon, 29 Feb 2016 22:21:27 +0100 schrieb Thomas Petazzoni:
Quoted 6 lines
This patch unfortunately does not build here. With the following defconfig:
BR2_arm=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/
tarballs/br-arm-full-2015.11-rc1-71-g90d1299.tar.bz2"
Quoted 7 lines
BR2_TOOLCHAIN_EXTERNAL_GCC_4_7=y BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y BR2_TOOLCHAIN_EXTERNAL_LOCALE=y #
BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUGis not set BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y BR2_TOOLCHAIN_EXTERNAL_CXX=y BR2_INIT_NONE=y BR2_SYSTEM_BIN_SH_NONE=y #BR2_PACKAGE_BUSYBOXis not set BR2_PACKAGE_FREESWITCH=y #BR2_TARGET_ROOTFS_TARis not set
Quoted 6 lines
I get:
CCLD
fs_ivrd
libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function `lbnMemWipe':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/
libzrtp/third_party/bnlib/lbnmem.c:69:
Quoted 4 lines
undefined reference to
zrtp_memset' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In functionlbnMemAlloc':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/
libzrtp/third_party/bnlib/lbnmem.c:78:
Quoted 4 lines
undefined reference to
zrtp_sys_alloc' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In functionlbnMemFree':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/
libzrtp/third_party/bnlib/lbnmem.c:87:
Quoted 6 lines
undefined reference to `zrtp_sys_free' collect2: error: ld returned 1 exit status Makefile:1462: recipe for target '
fs_cli' failed make[4]:
*** [fs_cli] Error 1 make[4]: *** Waiting for unfinished jobs.... libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In function `lbnMemWipe':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/
libzrtp/third_party/bnlib/lbnmem.c:69:
Quoted 4 lines
undefined reference to
zrtp_memset' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In functionlbnMemAlloc':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/
libzrtp/third_party/bnlib/lbnmem.c:78:
Quoted 4 lines
undefined reference to
zrtp_sys_alloc' libs/libzrtp/third_party/bnlib/libbn.a(lbnmem.o): In functionlbnMemFree':/home/thomas/projets/buildroot/output/build/freeswitch-1.6.6/libs/
libzrtp/third_party/bnlib/lbnmem.c:87:
Quoted 6 lines
undefined reference to `zrtp_sys_free' collect2: error: ld returned 1 exit status Makefile:1470: recipe for target '
fs_ivrd' failed make[4]:
*** [fs_ivrd] Error 1*** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libzrtp/libzrtp.a is not portable!
Hi Thomas,
this is weird, using the same defconfig I can compile freeswitch without problems. Could you please pastebin your whole freeswitch configure log so I can compare it with mine?
Regards, Bernd
PATCH v9 1/28 package/freeswitch: new package
Bernd,
Quoted 3 lines · Bernd Kuhls
this is weird, using the same defconfig I can compile freeswitch without problems. Could you please pastebin your whole freeswitch configure log so I can compare it with mine?
Are you testing with all freeswitch patches applied or just patch 01/28 ? I am testing with just patch 01/28 applied, which can be a difference from your testing scenario.
I did the test again, with PATCH 01/28 applied on top of the current next branch. You can find the exact commit I've tested at
http://git.free-electrons.com/users/thomas-petazzoni/buildroot/log/?h=freeswitch.
And I still get the same build failure (with the defconfig I provided yesterday). The entire build log can be found at:
http://free-electrons.com/~thomas/pub/freeswitch.log
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v9 1/28 package/freeswitch: new package
Am Tue, 01 Mar 2016 10:18:58 +0100 schrieb Thomas Petazzoni:
Quoted 11 lines
Bernd,
Quoted 3 lines · Bernd Kuhls
this is weird, using the same defconfig I can compile freeswitch without problems. Could you please pastebin your whole freeswitch configure log so I can compare it with mine?
Are you testing with all freeswitch patches applied or just patch 01/28 ? I am testing with just patch 01/28 applied, which can be a difference from your testing scenario.
Hi Thomas,
ok, with 01/28 I can reproduce the bug with your defconfig. Further including only 02/28 and 03/28 (libuuid) fixes the bug, hm. Using only 01/28 and manually adding libuuid from util-linux also fixes the bug, wt*? Libuuid has nothing to do with libzrtp...
Adding this patch to freeswitch fixes the problem here:
Makefile.am +1 -1
@@ -238,7 +238,7 @@ ZRTP_LIBS = -lbn -lzrtp libfreeswitch_la_LDFLAGS += $(ZRTP_LDFLAGS) libfreeswitch_la_LIBADD += $(ZRTP_LIBS) CORE_LIBS += libs/libzrtp/libzrtp.a -LIBS += libs/libzrtp/third_party/bnlib/libbn.a +LIBS += libs/libzrtp/third_party/bnlib/libbn.a libs/libzrtp/libzrtp.a endif library_includedir = $(includedir)
I will send v10 of my series in a few minutes. Could you please test with v10 whether the bug is fixed for you or not? If it is fixed, I will send the patch upstream.
Regards, Bernd
PATCH v9 2/28 package/freeswitch: enable optional modules
In reply to Bernd KuhlsAll these modules have no external dependencies.
--- package/freeswitch/freeswitch.mk | 76 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+)
package/freeswitch/freeswitch.mk +76 -0
@@ -82,4 +82,80 @@ else FREESWITCH_CONF_OPTS += --disable-zrtp endif +# Enable more optional modules +FREESWITCH_ENABLED_MODULES += \ + applications/mod_avmd \ + applications/mod_blacklist \ + applications/mod_callcenter \ + applications/mod_commands \ + applications/mod_conference \ + applications/mod_curl \ + applications/mod_db \ + applications/mod_directory \ + applications/mod_dptools \ + applications/mod_easyroute \ + applications/mod_esf \ + applications/mod_esl \ + applications/mod_expr \ + applications/mod_fifo \ + applications/mod_fsk \ + applications/mod_hash \ + applications/mod_httapi \ + applications/mod_lcr \ + applications/mod_sms \ + applications/mod_snom \ + applications/mod_spandsp \ + applications/mod_spy \ + applications/mod_valet_parking \ + applications/mod_voicemail \ + codecs/mod_g723_1 \ + codecs/mod_g729 \ + dialplans/mod_dialplan_asterisk \ + dialplans/mod_dialplan_xml \ + endpoints/mod_loopback \ + endpoints/mod_rtc \ + endpoints/mod_rtmp \ + endpoints/mod_sofia \ + endpoints/mod_verto \ + event_handlers/mod_cdr_csv \ + event_handlers/mod_cdr_sqlite \ + event_handlers/mod_event_socket \ + formats/mod_local_stream \ + formats/mod_native_file \ + formats/mod_tone_stream \ + loggers/mod_console \ + loggers/mod_logfile \ + loggers/mod_syslog \ + say/mod_say_de \ + say/mod_say_en \ + say/mod_say_es \ + say/mod_say_es_ar \ + say/mod_say_fa \ + say/mod_say_fr \ + say/mod_say_he \ + say/mod_say_hr \ + say/mod_say_hu \ + say/mod_say_it \ + say/mod_say_ja \ + say/mod_say_nl \ + say/mod_say_pl \ + say/mod_say_pt \ + say/mod_say_ru \ + say/mod_say_sv \ + say/mod_say_th \ + say/mod_say_zh \ + xml_int/mod_xml_cdr \ + xml_int/mod_xml_scgi + +define FREESWITCH_ENABLE_MODULE # (option, file) + echo '$(1)' >> $(2) +endef + +define FREESWITCH_ENABLE_MODULES + $(foreach mod,$(FREESWITCH_ENABLED_MODULES),\ + $(call FREESWITCH_ENABLE_MODULE,$(mod),$(@D)/modules.conf)$(sep)) +endef + +FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_ENABLE_MODULES + $(eval $(autotools-package))
Signature · 1 line
2.7.0
PATCH v9 3/28 package/freeswitch: add optional dependency to libuuid
In reply to Bernd Kuhls--- package/freeswitch/Config.in | 4 ++++ package/freeswitch/freeswitch.mk | 4 ++++ 2 files changed, 8 insertions(+)
package/freeswitch/Config.in +4 -0
@@ -10,6 +10,10 @@ config BR2_PACKAGE_FREESWITCH select BR2_PACKAGE_PCRE select BR2_PACKAGE_SPEEX select BR2_PACKAGE_SQLITE + # "libuuid development package highly recommended!" + # https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/build/config/uuid.m4#9 + select BR2_PACKAGE_UTIL_LINUX if BR2_USE_WCHAR + select BR2_PACKAGE_UTIL_LINUX_LIBUUID if BR2_USE_WCHAR select BR2_PACKAGE_ZLIB help FreeSWITCH is a scalable open source cross-platform telephony
package/freeswitch/freeswitch.mk +4 -0
@@ -158,4 +158,8 @@ endef FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_ENABLE_MODULES +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) +FREESWITCH_DEPENDENCIES += util-linux +endif + $(eval $(autotools-package))
Signature · 1 line
2.7.0
PATCH v9 4/28 package/freeswitch: add optional dependency to libedit
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
package/freeswitch/freeswitch.mk +7 -1
@@ -67,7 +67,6 @@ FREESWITCH_CONF_ENV += \ ac_cv_gcc_supports_w_no_unused_result=no FREESWITCH_CONF_OPTS = \ - --disable-core-libedit-support \ --disable-core-odbc-support \ --without-erlang \ --enable-fhs \
@@ -158,6 +157,13 @@ endef FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_ENABLE_MODULES +ifeq ($(BR2_PACKAGE_LIBEDIT),y) +FREESWITCH_DEPENDENCIES += libedit +FREESWITCH_CONF_OPTS += --enable-core-libedit-support +else +FREESWITCH_CONF_OPTS += --disable-core-libedit-support +endif + ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) FREESWITCH_DEPENDENCIES += util-linux endif
Signature · 1 line
2.7.0
PATCH v9 5/28 package/freeswitch: enable mod_enum, add optional dependency to libldns
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -164,6 +164,11 @@ else FREESWITCH_CONF_OPTS += --disable-core-libedit-support endif +ifeq ($(BR2_PACKAGE_LIBLDNS),y) +FREESWITCH_DEPENDENCIES += libldns +FREESWITCH_ENABLED_MODULES += applications/mod_enum +endif + ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) FREESWITCH_DEPENDENCIES += util-linux endif
Signature · 1 line
2.7.0
PATCH v9 6/28 package/freeswitch: add optional dependency to libpng
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -169,6 +169,11 @@ FREESWITCH_DEPENDENCIES += libldns FREESWITCH_ENABLED_MODULES += applications/mod_enum endif +ifeq ($(BR2_PACKAGE_LIBPNG),y) +FREESWITCH_DEPENDENCIES += libpng +FREESWITCH_ENABLED_MODULES += formats/mod_png +endif + ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) FREESWITCH_DEPENDENCIES += util-linux endif
Signature · 1 line
2.7.0
PATCH v9 7/28 package/freeswitch: add optional dependency to unixodbc
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)
package/freeswitch/freeswitch.mk +9 -1
@@ -67,7 +67,6 @@ FREESWITCH_CONF_ENV += \ ac_cv_gcc_supports_w_no_unused_result=no FREESWITCH_CONF_OPTS = \ - --disable-core-odbc-support \ --without-erlang \ --enable-fhs \ --without-python \
@@ -174,6 +173,15 @@ FREESWITCH_DEPENDENCIES += libpng FREESWITCH_ENABLED_MODULES += formats/mod_png endif +ifeq ($(BR2_PACKAGE_UNIXODBC),y) +FREESWITCH_DEPENDENCIES += unixodbc +FREESWITCH_CONF_OPTS += \ + --enable-core-odbc-support \ + --with-odbc=$(STAGING_DIR)/usr +else +FREESWITCH_CONF_OPTS += --disable-core-odbc-support +endif + ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) FREESWITCH_DEPENDENCIES += util-linux endif
Signature · 1 line
2.7.0
PATCH v9 8/28 package/freeswitch: add optional dependency to freetype
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 4 ++++ 1 file changed, 4 insertions(+)
package/freeswitch/freeswitch.mk +4 -0
@@ -156,6 +156,10 @@ endef FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_ENABLE_MODULES +ifeq ($(BR2_PACKAGE_FREETYPE),y) +FREESWITCH_DEPENDENCIES += freetype +endif + ifeq ($(BR2_PACKAGE_LIBEDIT),y) FREESWITCH_DEPENDENCIES += libedit FREESWITCH_CONF_OPTS += --enable-core-libedit-support
Signature · 1 line
2.7.0
PATCH v9 9/28 package/freeswitch: enable mod_yaml, add optional dependency to libyaml
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -177,6 +177,11 @@ FREESWITCH_DEPENDENCIES += libpng FREESWITCH_ENABLED_MODULES += formats/mod_png endif +ifeq ($(BR2_PACKAGE_LIBYAML),y) +FREESWITCH_DEPENDENCIES += libyaml +FREESWITCH_ENABLED_MODULES += languages/mod_yaml +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 10/28 package/freeswitch: enable mod_lua, add optional dependency to lua
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -182,6 +182,11 @@ FREESWITCH_DEPENDENCIES += libyaml FREESWITCH_ENABLED_MODULES += languages/mod_yaml endif +ifeq ($(BR2_PACKAGE_LUA),y) +FREESWITCH_DEPENDENCIES += lua +FREESWITCH_ENABLED_MODULES += languages/mod_lua +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 11/28 package/freeswitch: enable mod_fsv, add optional dependencies to libvpx & libyuv
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -182,6 +182,11 @@ FREESWITCH_DEPENDENCIES += libyaml FREESWITCH_ENABLED_MODULES += languages/mod_yaml endif +ifeq ($(BR2_PACKAGE_LIBVPX)$(BR2_PACKAGE_LIBYUV),yy) +FREESWITCH_DEPENDENCIES += libvpx libyuv +FREESWITCH_ENABLED_MODULES += applications/mod_fsv +endif + ifeq ($(BR2_PACKAGE_LUA),y) FREESWITCH_DEPENDENCIES += lua FREESWITCH_ENABLED_MODULES += languages/mod_lua
Signature · 1 line
2.7.0
PATCH v9 12/28 package/freeswitch: enable mod_av, add optional dependencies to ffmpeg, libvpx & libyuv
In reply to Bernd Kuhlsmod_av delivers native support for these video codecs:
codec,H263 Video,mod_av
codec,H263+ Video,mod_av
codec,H264 Video,mod_av
--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -156,6 +156,11 @@ endef FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_ENABLE_MODULES +ifeq ($(BR2_PACKAGE_FFMPEG_AVRESAMPLE)$(BR2_PACKAGE_FFMPEG_SWSCALE)$(BR2_PACKAGE_LIBVPX)$(BR2_PACKAGE_LIBYUV),yyyy) +FREESWITCH_DEPENDENCIES += ffmpeg libvpx libyuv +FREESWITCH_ENABLED_MODULES += applications/mod_av +endif + ifeq ($(BR2_PACKAGE_FREETYPE),y) FREESWITCH_DEPENDENCIES += freetype endif
Signature · 1 line
2.7.0
PATCH v9 13/28 package/freeswitch: enable mod_vpx, add optional dependency to libvpx
In reply to Bernd Kuhlsmod_vpx delivers native support for these video codecs:
codec,VP8 Video,mod_vpx
codec,VP9 Video,mod_vpx
--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -187,6 +187,11 @@ FREESWITCH_DEPENDENCIES += libyaml FREESWITCH_ENABLED_MODULES += languages/mod_yaml endif +ifeq ($(BR2_PACKAGE_LIBVPX),y) +FREESWITCH_DEPENDENCIES += libvpx +FREESWITCH_ENABLED_MODULES += codecs/mod_vpx +endif + ifeq ($(BR2_PACKAGE_LIBVPX)$(BR2_PACKAGE_LIBYUV),yy) FREESWITCH_DEPENDENCIES += libvpx libyuv FREESWITCH_ENABLED_MODULES += applications/mod_fsv
Signature · 1 line
2.7.0
PATCH v9 14/28 package/freeswitch: enable mod_bv, add optional dependency to libbroadvoice
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -165,6 +165,11 @@ ifeq ($(BR2_PACKAGE_FREETYPE),y) FREESWITCH_DEPENDENCIES += freetype endif +ifeq ($(BR2_PACKAGE_LIBBROADVOICE),y) +FREESWITCH_DEPENDENCIES += libbroadvoice +FREESWITCH_ENABLED_MODULES += codecs/mod_bv +endif + ifeq ($(BR2_PACKAGE_LIBEDIT),y) FREESWITCH_DEPENDENCIES += libedit FREESWITCH_CONF_OPTS += --enable-core-libedit-support
Signature · 1 line
2.7.0
PATCH v9 15/28 package/freeswitch: enable mod_codec2, add optional dependency to libcodec2
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -170,6 +170,11 @@ FREESWITCH_DEPENDENCIES += libbroadvoice FREESWITCH_ENABLED_MODULES += codecs/mod_bv endif +ifeq ($(BR2_PACKAGE_LIBCODEC2),y) +FREESWITCH_DEPENDENCIES += libcodec2 +FREESWITCH_ENABLED_MODULES += codecs/mod_codec2 +endif + ifeq ($(BR2_PACKAGE_LIBEDIT),y) FREESWITCH_DEPENDENCIES += libedit FREESWITCH_CONF_OPTS += --enable-core-libedit-support
Signature · 1 line
2.7.0
PATCH v9 16/28 package/freeswitch: add optional dependency to libg7221
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 4 ++++ 1 file changed, 4 insertions(+)
package/freeswitch/freeswitch.mk +4 -0
@@ -182,6 +182,10 @@ else FREESWITCH_CONF_OPTS += --disable-core-libedit-support endif +ifeq ($(BR2_PACKAGE_LIBG7221),y) +FREESWITCH_DEPENDENCIES += libg7221 +endif + ifeq ($(BR2_PACKAGE_LIBLDNS),y) FREESWITCH_DEPENDENCIES += libldns FREESWITCH_ENABLED_MODULES += applications/mod_enum
Signature · 1 line
2.7.0
PATCH v9 17/28 package/freeswitch: enable mod_ilbc, add optional dependency to libilbc
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -186,6 +186,11 @@ ifeq ($(BR2_PACKAGE_LIBG7221),y) FREESWITCH_DEPENDENCIES += libg7221 endif +ifeq ($(BR2_PACKAGE_LIBILBC),y) +FREESWITCH_DEPENDENCIES += libilbc +FREESWITCH_ENABLED_MODULES += codecs/mod_ilbc +endif + ifeq ($(BR2_PACKAGE_LIBLDNS),y) FREESWITCH_DEPENDENCIES += libldns FREESWITCH_ENABLED_MODULES += applications/mod_enum
Signature · 1 line
2.7.0
PATCH v9 18/28 package/freeswitch: enable mod_isac
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 6 ++++++ 1 file changed, 6 insertions(+)
package/freeswitch/freeswitch.mk +6 -0
@@ -156,6 +156,12 @@ endef FREESWITCH_PRE_CONFIGURE_HOOKS += FREESWITCH_ENABLE_MODULES +# mod_isac supports a limited set of archs +# src/mod/codecs/mod_isac/typedefs.h +ifeq ($(BR2_i386)$(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el)$(BR2_x86_64),y) +FREESWITCH_ENABLED_MODULES += codecs/mod_isac +endif + ifeq ($(BR2_PACKAGE_FFMPEG_AVRESAMPLE)$(BR2_PACKAGE_FFMPEG_SWSCALE)$(BR2_PACKAGE_LIBVPX)$(BR2_PACKAGE_LIBYUV),yyyy) FREESWITCH_DEPENDENCIES += ffmpeg libvpx libyuv FREESWITCH_ENABLED_MODULES += applications/mod_av
Signature · 1 line
2.7.0
PATCH v9 19/28 package/freeswitch: enable mod_opus, add optional dependency to opus
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -227,6 +227,11 @@ FREESWITCH_DEPENDENCIES += lua FREESWITCH_ENABLED_MODULES += languages/mod_lua endif +ifeq ($(BR2_PACKAGE_OPUS),y) +FREESWITCH_DEPENDENCIES += opus +FREESWITCH_ENABLED_MODULES += codecs/mod_opus +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 20/28 package/freeswitch: enable mod_portaudio, add optional dependency to portaudio
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -232,6 +232,11 @@ FREESWITCH_DEPENDENCIES += opus FREESWITCH_ENABLED_MODULES += codecs/mod_opus endif +ifeq ($(BR2_PACKAGE_PORTAUDIO),y) +FREESWITCH_DEPENDENCIES += portaudio +FREESWITCH_ENABLED_MODULES += endpoints/mod_portaudio +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 21/28 package/freeswitch: enable mod_silk, add optional dependency to libsilk
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -237,6 +237,11 @@ FREESWITCH_DEPENDENCIES += portaudio FREESWITCH_ENABLED_MODULES += endpoints/mod_portaudio endif +ifeq ($(BR2_PACKAGE_LIBSILK),y) +FREESWITCH_DEPENDENCIES += libsilk +FREESWITCH_ENABLED_MODULES += codecs/mod_silk +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 22/28 package/freeswitch: enable mod_sndfile, add optional dependency to libsndfile
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -242,6 +242,11 @@ FREESWITCH_DEPENDENCIES += libsilk FREESWITCH_ENABLED_MODULES += codecs/mod_silk endif +ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) +FREESWITCH_DEPENDENCIES += libsndfile +FREESWITCH_ENABLED_MODULES += formats/mod_sndfile +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 23/28 package/freeswitch: enable mod_alsa, add optional dependency to alsa-lib
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -162,6 +162,11 @@ ifeq ($(BR2_i386)$(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el)$(BR2_x86_6 FREESWITCH_ENABLED_MODULES += codecs/mod_isac endif +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +FREESWITCH_DEPENDENCIES += alsa-lib +FREESWITCH_ENABLED_MODULES += endpoints/mod_alsa +endif + ifeq ($(BR2_PACKAGE_FFMPEG_AVRESAMPLE)$(BR2_PACKAGE_FFMPEG_SWSCALE)$(BR2_PACKAGE_LIBVPX)$(BR2_PACKAGE_LIBYUV),yyyy) FREESWITCH_DEPENDENCIES += ffmpeg libvpx libyuv FREESWITCH_ENABLED_MODULES += applications/mod_av
Signature · 1 line
2.7.0
PATCH v9 24/28 package/freeswitch: enable mod_soundtouch, add optional dependency to libsoundtouch
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -252,6 +252,11 @@ FREESWITCH_DEPENDENCIES += libsndfile FREESWITCH_ENABLED_MODULES += formats/mod_sndfile endif +ifeq ($(BR2_PACKAGE_LIBSOUNDTOUCH),y) +FREESWITCH_DEPENDENCIES += libsoundtouch +FREESWITCH_ENABLED_MODULES += applications/mod_soundtouch +endif + ifeq ($(BR2_PACKAGE_UNIXODBC),y) FREESWITCH_DEPENDENCIES += unixodbc FREESWITCH_CONF_OPTS += \
Signature · 1 line
2.7.0
PATCH v9 25/28 package/freeswitch: enable mod_xml_rpc
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 4 ++++ 1 file changed, 4 insertions(+)
package/freeswitch/freeswitch.mk +4 -0
@@ -162,6 +162,10 @@ ifeq ($(BR2_i386)$(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el)$(BR2_x86_6 FREESWITCH_ENABLED_MODULES += codecs/mod_isac endif +ifeq ($(BR2_USE_WCHAR),y) +FREESWITCH_ENABLED_MODULES += xml_int/mod_xml_rpc +endif + ifeq ($(BR2_PACKAGE_ALSA_LIB),y) FREESWITCH_DEPENDENCIES += alsa-lib FREESWITCH_ENABLED_MODULES += endpoints/mod_alsa
Signature · 1 line
2.7.0
PATCH v9 26/28 package/freeswitch: enable mod_imagick, add optional dependencies to imagemagick, libvpx & libyuv
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -180,6 +180,11 @@ ifeq ($(BR2_PACKAGE_FREETYPE),y) FREESWITCH_DEPENDENCIES += freetype endif +ifeq ($(BR2_PACKAGE_IMAGEMAGICK)$(BR2_PACKAGE_LIBVPX)$(BR2_PACKAGE_LIBYUV),yyy) +FREESWITCH_DEPENDENCIES += imagemagick libvpx libyuv +FREESWITCH_ENABLED_MODULES += formats/mod_imagick +endif + ifeq ($(BR2_PACKAGE_LIBBROADVOICE),y) FREESWITCH_DEPENDENCIES += libbroadvoice FREESWITCH_ENABLED_MODULES += codecs/mod_bv
Signature · 1 line
2.7.0
PATCH v9 26/28 package/freeswitch: enable mod_imagick, add optional dependencies to imagemagick, libvpx & libyuv
Bernd,
Quoted 5 lines · Bernd Kuhls
Signed-off-by Bernd Kuhls <[email protected]>--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
Small typo in the commit log: "enable mod_imagick" -> "enable mod_imagemagick".
The commit title is slightly too long. Ideally for such commits, it should be:
"""
package/freeswitch: enable mod_imagemagick
This commit enables mod_imagemagick, which requires imagemagick, libvpx and libyux as optional dependencies.
"""
(There is the same issue in other patches in your series, though this is really a minor nit)
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v9 26/28 package/freeswitch: enable mod_imagick, add optional dependencies to imagemagick, libvpx & libyuv
Hello Thomas,
Am Mon, 29 Feb 2016 22:31:22 +0100 schrieb Thomas Petazzoni:
Quoted 2 lines
Small typo in the commit log: "enable
mod_imagick" -> "enablemod_imagemagick".
thanks, updated in v10.
Quoted 5 lines
The commit title is slightly too long. Ideally for such commits, it should be:
"""
package/freeswitch: enablemod_imagemagick
thanks, updated in v10.
Quoted 2 lines
This commit enables
mod_imagemagick, which requires imagemagick, libvpx and libyux as optional dependencies.
Let's start nitpicking ;)
I think this last part of text is misleading, mod_imagemagick is not enabled by this patch, only added to the package ;) The module is only enabled if the packages imagemagick, libvpx and libyuv are enabled. These packages itself are optional dependencies for the core functions of freeswitch, but they are required dependencies for mod_imagemagick. To require an optional dependency is an oxymoron ;)
Shall I explain this as detailed as I have written here or shall I just remove the ", add optional dependency to *" part of the patch subjects without adding further text? I think the code speaks for itself:
http://patchwork.ozlabs.org/patch/589401/
ifeq ($(BR2_PACKAGE_IMAGEMAGICK)$(BR2_PACKAGE_LIBVPX) $(BR2_PACKAGE_LIBYUV),yyy) FREESWITCH_DEPENDENCIES += imagemagick libvpx libyuv FREESWITCH_ENABLED_MODULES += formats/mod_imagick endif
This means: You get mod_imagick only if you have enabled imagemagick, libvpx & libyuv.
Regards, Bernd
PATCH v9 27/28 package/freeswitch: enable mod_memcache, add optional dependency to libmemcached
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/freeswitch/freeswitch.mk +5 -0
@@ -216,6 +216,11 @@ FREESWITCH_DEPENDENCIES += libldns FREESWITCH_ENABLED_MODULES += applications/mod_enum endif +ifeq ($(BR2_PACKAGE_LIBMEMCACHED),y) +FREESWITCH_DEPENDENCIES += libmemcached +FREESWITCH_ENABLED_MODULES += applications/mod_memcache +endif + ifeq ($(BR2_PACKAGE_LIBPNG),y) FREESWITCH_DEPENDENCIES += libpng FREESWITCH_ENABLED_MODULES += formats/mod_png
Signature · 1 line
2.7.0
PATCH v9 28/28 package/freeswitch: add optional dependency to xz
In reply to Bernd Kuhls--- package/freeswitch/freeswitch.mk | 4 ++++ 1 file changed, 4 insertions(+)
package/freeswitch/freeswitch.mk +4 -0
@@ -284,4 +284,8 @@ ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) FREESWITCH_DEPENDENCIES += util-linux endif +ifeq ($(BR2_PACKAGE_XZ),y) +FREESWITCH_DEPENDENCIES += xz +endif + $(eval $(autotools-package))
Signature · 1 line
2.7.0
v9 cover package/freeswitch: new package
In reply to Bernd KuhlsBernd,
Quoted 11 lines · Bernd Kuhls
this patch series splits my previous patch into smaller chunks for easier review as requested by Luca and Thomas. I also removed all options from Config.in.
Instead of enabling or disabling modules in the upstream modules.conf I decided to delete that file in the first patch to provide a minimal build for easier review, please keep in mind that I never did a run-time test with this minimal version. A lot of modules, desired as a default set, are added with the second patch - all of them have no external dependencies. The rest of the patch series consists of modules having some form of dependency, added module by module for easier review.
Thanks for this patch series. Besides my build issue and minor comments on PATCH 01/28, it looks fine. I've looked at all other patches, and despite a really minor nit on PATCH 26/28, I think we'll be able to apply this once the PATCH 01/28 problems are fixed.
The fact that you did split the package addition in a minimal package and then trivial additions of optional dependencies really made the whole thing a lot easier to look at and review, so thanks for having done that!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
v9 cover package/freeswitch: new package
Hi Bernd, Thomas, All,
Le 29/02/2016 22:33, Thomas Petazzoni a ?crit :
Quoted 21 lines
Bernd,
Quoted 11 lines · Bernd Kuhls
this patch series splits my previous patch into smaller chunks for easier review as requested by Luca and Thomas. I also removed all options from Config.in.
Instead of enabling or disabling modules in the upstream modules.conf I decided to delete that file in the first patch to provide a minimal build for easier review, please keep in mind that I never did a run-time test with this minimal version. A lot of modules, desired as a default set, are added with the second patch - all of them have no external dependencies. The rest of the patch series consists of modules having some form of dependency, added module by module for easier review.
Thanks for this patch series. Besides my build issue and minor comments on PATCH 01/28, it looks fine. I've looked at all other patches, and despite a really minor nit on PATCH 26/28, I think we'll be able to apply this once the PATCH 01/28 problems are fixed.
Quoted 4 lines
The fact that you did split the package addition in a minimal package and then trivial additions of optional dependencies really made the whole thing a lot easier to look at and review, so thanks for having done that!
+1
Also, I tried to force the build system to use apr and apr-util libraries provided by Buildroot packages, but It's not easy without deep modifications and breaking a lot of stuff :-(
Let's hope that the further release will have a better build system...
Best regards,
Romain
Quoted 3 lines
Thomas