[Buildroot] [NEXT v3 3/8] libpjsip: enable ffmpeg support
Adam Duskett
aduskett at gmail.com
Mon Nov 20 18:09:00 UTC 2017
--enable-video has no effect at all on Linux (only on Android and Darwin).
--disable-video has the effect of disabling SDL, FFmpeg, v4l2, openh264, and
libyuv. Since all of these are enabled/disabled explicitly already, there is no
need to specify --disable-video. To do so correctly is non-trivial when we want
to support e.g. FFmpeg OR v4l2.
Signed-off-by: Adam Duskett <aduskett at gmail.com>
---
Changes v1 -> v2:
- Remove the option to enable or disable FFmpeg support in favor of
just depending on FFmpeg if it's selected by the user.
- Add explination as to why with-ffmpeg is being passed to libpjsip (Arnout)
Changes v2 -> v3:
- Re-add the option to enable or disable support
- Add a better commit message (Arnout)
- Add a more thorough comment in the make file explaining why passing
--enable-ffmpeg actually disables it. (Arnout)
- Remove the =$(STAGING_DIR)/usr from --with-ffmpeg (Arnout)
package/libpjsip/Config.in | 9 +++++++++
package/libpjsip/libpjsip.mk | 14 +++++++++++---
2 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/package/libpjsip/Config.in b/package/libpjsip/Config.in
index 4d4777a..a1676aa 100644
--- a/package/libpjsip/Config.in
+++ b/package/libpjsip/Config.in
@@ -25,6 +25,15 @@ config BR2_PACKAGE_LIBPJSIP_PORTAUDIO
# disable sound, which would be useless.
select BR2_PACKAGE_LIBPJSIP_ALSA
+comment "video"
+
+config BR2_PACKAGE_LIBPJSIP_FFMPEG
+ bool "ffmpeg support"
+ depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
+ select BR2_PACKAGE_FFMPEG
+ help
+ Enable ffmpeg support
+
endif #BR2_PACKAGE_LIBPJSIP
comment "libpjsip needs a toolchain w/ C++, threads"
diff --git a/package/libpjsip/libpjsip.mk b/package/libpjsip/libpjsip.mk
index 850b3c0..d3d00f1 100644
--- a/package/libpjsip/libpjsip.mk
+++ b/package/libpjsip/libpjsip.mk
@@ -29,7 +29,6 @@ LIBPJSIP_CONF_OPTS = \
--disable-speex-codec \
--disable-speex-aec \
--disable-resample \
- --disable-video \
--disable-opencore-amr \
--disable-g7221-codec \
--disable-ilbc-codec \
@@ -42,7 +41,6 @@ LIBPJSIP_CONF_OPTS = \
--disable-g722-codec \
--disable-libsamplerate \
--disable-sdl \
- --disable-ffmpeg \
--disable-v4l2 \
--disable-openh264 \
--disable-libyuv \
@@ -81,6 +79,16 @@ else
LIBPJSIP_CONF_OPTS += --without-external-pa
endif
-
+# When --enable-ffmpeg is given, the code to enable FFmpeg is not executed.
+# Also, when cross-compiling and no --with-ffmpeg option is given, FFmpeg is
+# disabled. Therefore, a --with-ffmpeg option needs to be given. Normally it
+# is used to pass the path to the directory where FFmpeg is installed, but
+# since we install it directly under sysroot we can pass it empty.
+ifeq ($(BR2_PACKAGE_LIBPJSIP_FFMPEG),y)
+LIBPJSIP_DEPENDENCIES += ffmpeg
+LIBPJSIP_CONF_OPTS += --with-ffmpeg
+else
+LIBPJSIP_CONF_OPTS += --disable-ffmpeg
+endif
$(eval $(autotools-package))
--
2.13.6
More information about the buildroot
mailing list