[SCM] vlc/master: Use embedded copy of ffmpeg

sramacher at users.alioth.debian.org sramacher at users.alioth.debian.org
Sun Apr 17 22:25:09 UTC 2016


The following commit has been merged in the master branch:
commit eadbcefb570cc18b4eff809ac0683e86e30f5977
Author: Sebastian Ramacher <sramacher at debian.org>
Date:   Fri Mar 25 19:04:02 2016 +0100

    Use embedded copy of ffmpeg

diff --git a/debian/control b/debian/control
index 10ed91d..d806b48 100644
--- a/debian/control
+++ b/debian/control
@@ -22,8 +22,8 @@ Build-Depends: autopoint,
                libass-dev (>= 0.9.8),
                libavahi-client-dev,
                libavc1394-dev (>= 0.5.3) [linux-any],
-               libavcodec-dev (>= 6:9),
-               libavformat-dev (>= 4:0.6),
+#              libavcodec-dev (>= 6:9),
+#              libavformat-dev (>= 4:0.6),
                libbluray-dev (>= 1:0.3.0),
                libcaca-dev (>= 0.99.beta4),
                libcairo2-dev (>= 1.13.1),
@@ -69,7 +69,7 @@ Build-Depends: autopoint,
                libomxil-bellagio-dev [linux-any],
                libopus-dev (>= 1.0.3),
                libpng-dev,
-               libpostproc-dev (>= 4:0.6),
+#              libpostproc-dev (>= 4:0.6),
                libpulse-dev (>= 1.0),
                libqt5x11extras5-dev,
                libraw1394-dev (>= 2.0.1) [linux-any],
@@ -87,7 +87,7 @@ Build-Depends: autopoint,
                libspeex-dev (>= 1.0.5),
                libspeexdsp-dev (>= 1.0.5),
                libssh2-1-dev,
-               libswscale-dev (>= 4:0.6),
+#              libswscale-dev (>= 4:0.6),
                libtag1-dev (>= 1.9),
                libtheora-dev (>= 1.0),
                libtwolame-dev (>= 0.3.8),
@@ -120,7 +120,21 @@ Build-Depends: autopoint,
                python3,
                qtbase5-dev (>= 5.1),
                zlib1g-dev,
-               zsh
+               zsh,
+# for embedded ffmpeg
+               libbz2-dev,
+               libgme-dev,
+               libgsm1-dev,
+               liblzma-dev,
+               libmp3lame-dev,
+               libopenjpeg-dev,
+               libsnappy-dev,
+               libssh-gcrypt-dev,
+               libvpx-dev,
+               libwavpack-dev,
+               libwebp-dev,
+               libxvidcore-dev,
+               yasm
 Standards-Version: 3.9.8
 Homepage: http://www.videolan.org/vlc/
 Vcs-Git: https://anonscm.debian.org/git/pkg-multimedia/vlc.git
diff --git a/debian/rules b/debian/rules
index a7f2dde..75d149f 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,6 +1,6 @@
 #!/usr/bin/make -f
 
-export DEB_LDFLAGS_MAINT_APPEND=-Wl,--as-needed
+DEB_LDFLAGS_MAINT_APPEND=-Wl,--as-needed
 
 include /usr/share/dpkg/pkg-info.mk
 include /usr/share/dpkg/architecture.mk
@@ -232,17 +232,124 @@ DEB_CXXFLAGS_MAINT_APPEND += -mtune=8548
 endif
 endif
 
+# configuration for embedded ffmpeg
+ffmpegprefix = $(CURDIR)/ffmpeg/install
+ffmpegbuild = $(CURDIR)/ffmpeg/build
+
+ffmpegflags = \
+	--prefix=$(ffmpegprefix) \
+	--enable-pic \
+	--disable-stripping \
+	--enable-static \
+	--disable-shared
+
+# mostly based on contrib/src/ffmpeg/rules.mak
+ffmpegflags += \
+	--disable-doc \
+	--disable-avdevice \
+	--disable-devices \
+	--disable-avfilter \
+	--disable-avresample \
+	--disable-swresample \
+	--disable-programs \
+	--disable-filters \
+	--disable-bsfs \
+	--disable-protocol=concat
+
+# from ffmpeg 7:2.8.6-1 debian/rules and contrib/src/ffmpeg/rules.mak
+ffmpegflags += \
+	--enable-gpl \
+	--disable-decoder=libopenjpeg \
+	--disable-decoder=libschroedinger \
+	--enable-gnutls \
+	--disable-libass \
+	--enable-libbluray \
+	--disable-libbs2b \
+	--disable-libcaca \
+	--disable-libcdio \
+	--disable-libflite \
+	--disable-libfontconfig \
+	--disable-libfreetype \
+	--disable-libfribidi \
+	--enable-libgme \
+	--enable-libgsm \
+	--enable-libmodplug \
+	--enable-libmp3lame \
+	--enable-libopenjpeg \
+	--enable-libopus \
+	--enable-librtmp \
+	--enable-libschroedinger \
+	--enable-libshine \
+	--enable-libsnappy \
+	--enable-libsoxr \
+	--enable-libspeex \
+	--enable-libssh \
+	--enable-libtheora \
+	--enable-libtwolame \
+	--enable-libvorbis \
+	--enable-libvpx \
+	--enable-libwavpack \
+	--enable-libwebp \
+	--enable-libx265 \
+	--enable-libxvid \
+	--enable-libzvbi \
+	--disable-openal \
+	--disable-opengl \
+	--disable-x11grab
+
+# Disable i686 optimizations on i386, because they are not always available on
+# this architecture.
+ifneq (,$(filter $(DEB_HOST_ARCH),i386 hurd-i386))
+ffmpegflags += --disable-i686
+endif
+
+# Disable altivec optimizations on powerpc, because they are not always
+# available on this architecture.
+ifeq ($(DEB_HOST_ARCH),powerpc)
+ffmpegflags += --disable-altivec
+endif
+
+# Disable assembly optimizations on x32, because they don't work (yet).
+ifneq (,$(filter $(DEB_HOST_ARCH),x32))
+ffmpegflags += --disable-asm
+endif
+
+# Disable optimizations on mips(el) and some on mips64(el), because they are not
+# always available on these architectures.
+ifneq (,$(filter $(DEB_HOST_ARCH),mips mipsel mips64 mips64el))
+ffmpegflags += --disable-mipsdspr1 \
+	--disable-mipsdspr2 \
+	--disable-loongson3
+endif
+ifneq (,$(filter $(DEB_HOST_ARCH),mips mipsel))
+ffmpegflags += --disable-mipsfpu
+endif
+
+# merge ffmpeg based plugins to reduce installation size
+confflags += --enable-merge-ffmpeg
+
 export DEB_CFLAGS_MAINT_APPEND
 export DEB_CXXFLAGS_MAINT_APPEND
+export DEB_LDFLAGS_MAINT_APPEND
 export removeplugins
 
 %:
 	dh $@ --parallel --with autoreconf
 
+override_dh_auto_clean:
+	rm -rf $(ffmpegprefix) $(ffmpegbuild)
+	dh_auto_clean
+
 override_dh_autoreconf:
 	dh_autoreconf --as-needed
 
 override_dh_auto_configure:
+	mkdir -p $(ffmpegbuild) $(ffmpegprefix)
+	cd $(ffmpegbuild) && \
+		$(CURDIR)/ffmpeg-2-8-6/configure $(ffmpegflags)
+	dh_auto_build --sourcedirectory $(ffmpegbuild) -- V=1
+	$(MAKE) -C $(ffmpegbuild) install-libs install-headers V=1
+	PKG_CONFIG_PATH=$(ffmpegprefix)/lib/pkgconfig \
 	dh_auto_configure -- $(confflags)
 
 override_dh_auto_build:
diff --git a/debian/vlc-nox.install b/debian/vlc-nox.install
index 1b9adf2..225671c 100755
--- a/debian/vlc-nox.install
+++ b/debian/vlc-nox.install
@@ -13,7 +13,6 @@ usr/lib/vlc/plugins/access/libaccess_mtp_plugin.so
 usr/lib/vlc/plugins/access/libaccess_oss_plugin.so [oss]
 usr/lib/vlc/plugins/access/libaccess_realrtsp_plugin.so
 usr/lib/vlc/plugins/access/libattachment_plugin.so
-usr/lib/vlc/plugins/access/libavio_plugin.so
 usr/lib/vlc/plugins/access/libcdda_plugin.so [cdda]
 usr/lib/vlc/plugins/access/libdc1394_plugin.so [dc1394]
 usr/lib/vlc/plugins/access/libdtv_plugin.so [dtv]
diff --git a/debian/watch b/debian/watch
index a4e9c9c..623c9fb 100644
--- a/debian/watch
+++ b/debian/watch
@@ -1,3 +1,5 @@
 version=4
 opts=pgpsigurlmangle=s/$/.asc/ \
-http://download.videolan.org/pub/videolan/vlc/([\d][\d\.]+[a-z]?)/vlc-([\d][\d\.]+[a-z]?)\.tar\.xz
+http://download.videolan.org/pub/videolan/vlc/([\d][\d\.]+[a-z]?)/vlc-([\d][\d\.]+[a-z]?)\.tar\.xz debian
+opts=component=ffmpeg-2-8-6 \
+https://ffmpeg.org/releases/ffmpeg-2\.8\.([0-9.]+)\.tar\.xz 2.8.6

-- 
VLC media player packaging



More information about the pkg-multimedia-commits mailing list