summaryrefslogtreecommitdiffstats
path: root/debian
diff options
context:
space:
mode:
authorKevin Mitchell <kevmitch@math.sfu.ca>2014-01-28 01:46:27 -0800
committerKevin Mitchell <kevmitch@math.sfu.ca>2014-01-28 06:58:45 -0800
commitfa14d6a40ba542282a745a49be90586d2e57948a (patch)
treea82512825ddf31efaaefe945965252e0bcfebeaa /debian
parent6c279b73c4a42b772a63780de408733b042a87ed (diff)
downloadmpv-build-fa14d6a40ba542282a745a49be90586d2e57948a.tar.bz2
mpv-build-fa14d6a40ba542282a745a49be90586d2e57948a.tar.xz
build more features in debian package including custom-built fribidi
* build fribidi for the debian package * add dependencies to debian package taking cues from the official debian version enable everything except: + libsdl2 (not available in wheezy or precise) + libmpeg123 (build error on precise due to old version) + caca, radio interface, openal output, portaudio output, rsound/libroar/sndio input/output, sdl1, joystick, videoio.h/libpt * additional ffmpeg features (and dependencies) are still to be handled manually by the builder using the ffmpeg_options file as described in README.rst * adjust debian/changelog so building works on both debian and ubuntu (tested on saucy,precise,wheezy,sid amd64) * tweak debian parts of README.rst
Diffstat (limited to 'debian')
-rw-r--r--debian/changelog16
-rw-r--r--debian/control46
-rwxr-xr-xdebian/rules31
3 files changed, 88 insertions, 5 deletions
diff --git a/debian/changelog b/debian/changelog
index 927c2cf..b8dd102 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,19 @@
+mpv (1:0.3.3) UNRELEASED; urgency=low
+
+ * reimagine for waf build system
+ * build fribidi for the debian package
+ * test building on saucy,precise,stable,sid amd64
+ * enable as many mpv features as possible except:
+ + libsdl2 (not available in wheezy or precise)
+ + libmpeg123 (build error on precise due to old version)
+ + caca, radio interface, openal output, portaudio output,
+ rsound/libroar/sndio input/output, sdl1, joystick, videoio.h/libpt
+ * additional ffmpeg features (and dependencies) are still to be handled
+ manually by the builder using the ffmpeg_options file as described
+ in README.rst
+
+ -- Kevin Mitchell <kevmitch@gmail.com> Tue, 28 Jan 2014 04:59:52 -0800
+
mpv (1.0git) stable; urgency=low
* Initial package.
diff --git a/debian/control b/debian/control
index d1bf49a..ddc54af 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,51 @@ Section: misc
Priority: optional
Maintainer: Wessel Dankers <wsl@fruit.je>
Standards-Version: 3.9.3
-Build-Depends: c-compiler, libjpeg-dev, libvdpau-dev, zlib1g-dev, x11proto-core-dev, libx11-dev, libxext-dev, libxinerama-dev, libxv-dev, libfreetype6-dev, libfribidi-dev, libfontconfig1-dev, libgl1-mesa-dev, debhelper (>= 7), autoconf, automake, libtool, yasm, libpulse-dev, libasound2-dev, libbluray-dev, python3-docutils, libdvdread-dev
+Build-Depends:
+ autoconf,
+ automake,
+ c-compiler,
+ debhelper (>= 7),
+ gcc-4.8 [powerpc powerpcspe sparc],
+ ladspa-sdk,
+ libasound2-dev [linux-any],
+ libbluray-dev,
+ libbs2b-dev,
+ libcdio-paranoia-dev,
+ libdvdnav-dev,
+ libdvdread-dev,
+ libegl1-mesa-dev [linux-any],
+ libenca-dev,
+ libfontconfig-dev,
+ libfreetype6-dev,
+ libgl1-mesa-dev,
+ libguess-dev,
+ libjack-dev,
+ libjpeg-dev,
+ liblcms2-dev,
+ liblircclient-dev,
+ liblua5.1-0-dev,
+ libncurses5-dev,
+ libncursesw5-dev,
+ libpulse-dev,
+ libquvi-dev,
+ libsmbclient-dev,
+ libtool,
+ libv4l-dev,
+ libva-dev,
+ libvdpau-dev,
+ libwayland-dev [linux-any],
+ libx11-dev,
+ libxext-dev,
+ libxinerama-dev,
+ libxss-dev,
+ libxv-dev,
+ pkg-config,
+ python,
+ python-docutils,
+ x11proto-core-dev,
+ yasm,
+ zlib1g-dev
Package: mpv
Architecture: any
diff --git a/debian/rules b/debian/rules
index 2bff34f..3e62800 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,5 +1,17 @@
#! /usr/bin/make -f
+# This alters the return value of dpkg-buildflags for CFLAGS and friends.
+# It is necessary to build fribidi which has an insecure print(stringvar)
+# statement. I believe there is something equivalent going on in the
+# libfribidi0=0.19.6-1 package source which is far less obvious. There
+# should probably be a patch for fribidi to fix this if possible.
+export DEB_BUILD_MAINT_OPTIONS=hardening=-format
+
+# from official debian package: testing welcome!
+ifeq ($(DEB_HOST_ARCH_CPU),$(filter $(DEB_HOST_ARCH_CPU),powerpc sparc))
+ export CC=gcc-4.8 # fixes #73363
+endif
+
# make .PHONY all the targets that have name collisions with the scripts
# see http://www.debian.org/doc/manuals/maint-guide/dreq.en.html#rules
.PHONY: clean build install
@@ -14,26 +26,37 @@ install:
%:
exec dh $@ --parallel
+# this should really create multiple shared object debian packages but
+# this will do for now
+
+# the dependencies must be built before mpv is configured
+fribidi_config:
+ scripts/fribidi-config
+fribidi_build:fribidi_config
+ scripts/fribidi-build
ffmpeg_config:
scripts/ffmpeg-config
ffmpeg_build:ffmpeg_config
scripts/ffmpeg-build
-libass_config:
+libass_config:fribidi_build
scripts/libass-config
libass_build:libass_config
scripts/libass-build
-# the dependencies must be built before mpv is configured
-override_dh_auto_configure:ffmpeg_build libass_build
- scripts/mpv-config --prefix=/usr --confdir=/etc/mpv
+# put the config in the right place and drop the local/ since it's package managed now
+override_dh_auto_configure:ffmpeg_build libass_build fribidi_build
+ scripts/mpv-config --prefix=/usr --confdir=/etc/mpv
override_dh_auto_build:
scripts/mpv-build
+# call waf to install to the debian packageing dir
override_dh_auto_install:
(cd mpv;python ./waf -v install --destdir=../debian/mpv)
+#call all the cleans
override_dh_auto_clean:
scripts/mpv-clean
scripts/ffmpeg-clean
scripts/libass-clean
+ scripts/fribidi-clean