diff options
author | wm4 <wm4@nowhere> | 2014-01-28 18:35:32 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-01-28 18:35:32 +0100 |
commit | 387bda3713f36d7a4040fd2991db7dee4ca67c39 (patch) | |
tree | e881cbff13b266dcddcb81cbf6730f0e3bf73eab | |
parent | d8d05baffe65713789c3c157e8c9b0c4dbfd68cc (diff) | |
parent | 3791b20eb0e90df52f17d85c8212760e308ab8ae (diff) | |
download | mpv-build-387bda3713f36d7a4040fd2991db7dee4ca67c39.tar.bz2 mpv-build-387bda3713f36d7a4040fd2991db7dee4ca67c39.tar.xz |
Merge remote-tracking branch 'origin/pr/17'
-rw-r--r-- | README.rst | 40 | ||||
-rw-r--r-- | debian/README.debian | 6 | ||||
-rw-r--r-- | debian/changelog | 20 | ||||
-rw-r--r-- | debian/compat | 1 | ||||
-rw-r--r-- | debian/control | 57 | ||||
-rw-r--r-- | debian/copyright | 7 | ||||
-rw-r--r-- | debian/dirs | 2 | ||||
-rw-r--r-- | debian/mime | 20 | ||||
-rwxr-xr-x | debian/rules | 50 | ||||
-rw-r--r-- | debian/source/format | 1 | ||||
-rw-r--r-- | debian/source/options | 2 | ||||
-rwxr-xr-x | scripts/fribidi-clean | 4 | ||||
-rwxr-xr-x | scripts/libass-clean | 4 |
13 files changed, 212 insertions, 2 deletions
@@ -5,6 +5,8 @@ This is a collection of scripts to make downloading and building mpv, ffmpeg and libass easier. ffmpeg and libass get special treatment, because they are essential, and distribution packages are often too old or too broken. +See below for instructions for building Debian packages. + If you are running Mac OSX and using homebrew we provide homebrew-mpv_, an up to date formula that compiles mpv with sensible dependencies and defaults for OSX. @@ -84,6 +86,44 @@ example, to enable some dependencies needed for encoding: (Do this in the mpv-build toplevel directory, the same that contains the build scripts and this readme file.) +Installing dependencies on Debian or Ubuntu +=========================================== + +On Debian or Ubuntu systems, you can try to run this command in the +mpv-build directory to install most of the required dependencies: + + sudo apt-get install devscripts equivs + + mk-build-deps -s sudo -i + +This will generate and install a dummy package with the required +dependencies. (mk-build-deps is part of devscripts.) + +If you don't want to use sudo, you can also try: + + mk-build-deps + + dpkg -i mpv-build-deps_1.0_all.deb + + apt-get install -f + +dpkg and apt-get will require root rights of course. + +Building a Debian package +========================= + +First make sure that you have the latest version of mpv and its +dependencies: + + ./update + +You can then build a full mpv Debian package with the following command: + + debuild -uc -us -b -j4 + +The .deb file will be created in the parent directory. (4 is the number +of jobs running in parallel - you can change it.) + Local changes to the git repositories ===================================== diff --git a/debian/README.debian b/debian/README.debian new file mode 100644 index 0000000..b3e2ac3 --- /dev/null +++ b/debian/README.debian @@ -0,0 +1,6 @@ +mpv for Debian +-------------- + + You can build the package using 'debuild -uc -us -b -j<number of jobs>'. + +-- Wessel Dankers <wsl@fruit.je>, Sun, 06 Jan 2013 13:44:11 +0100 diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..30fd4ef --- /dev/null +++ b/debian/changelog @@ -0,0 +1,20 @@ +mpv (1:0.3.3) UNRELEASED; urgency=low + + * reimagine for waf build system + * 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. + + -- Wessel Dankers <wsl@fruit.je> Sun, 06 Jan 2013 13:44:11 +0100 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..e929f4f --- /dev/null +++ b/debian/control @@ -0,0 +1,57 @@ +Source: mpv +Section: misc +Priority: optional +Maintainer: Wessel Dankers <wsl@fruit.je> +Standards-Version: 3.9.3 +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, + libfribidi-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 +Depends: ${shlibs:Depends},debconf +Description: mplayer/mplayer2 based video player + MPV is a versatile CLI movie player, based on mplayer and mplayer2. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..03a2b2c --- /dev/null +++ b/debian/copyright @@ -0,0 +1,7 @@ +This package was debianized by Wessel Dankers <wsl@fruit.je> on +Sun, 06 Jan 2013 13:44:11 +0100. + +Original source can be found at: https://github.com/mpv-player + +Copyrighted by various authors. Licensed under the terms of GNU GPL. +See /usr/share/common-licenses/GPL for details. diff --git a/debian/dirs b/debian/dirs new file mode 100644 index 0000000..98d1583 --- /dev/null +++ b/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 diff --git a/debian/mime b/debian/mime new file mode 100644 index 0000000..e405227 --- /dev/null +++ b/debian/mime @@ -0,0 +1,20 @@ +application/x-ogg; mpv %s; description="Ogg Stream" +application/ogg; mpv %s; description="Ogg Stream" +audio/mpeg; mpv %s; description="MPEG Audio" +audio/x-mpegurl; mpv %s; description="Icecast Playlist" +audio/x-ms-wax; mpv %s; description="Windows Media Audio" +audio/x-ms-wma; mpv %s; description="Windows Media Audio" +audio/x-pls; mpv %s; description="MP3 ShoutCast/IceCast Playlist" +audio/x-scpls; mpv %s; description="Shoutcast Playlist" +audio/x-wav; mpv %s; description="WAV Audio" +video/mpeg; mpv %s; description="MPEG Video"; +video/quicktime; mpv %s; description="Apple QuickTime Video"; +video/x-mpeg; mpv %s; description="MPEG Video"; +video/x-mpeg2; mpv %s; description="MPEG-2 Video"; +video/x-msvideo; mpv %s; description="MS Video (AVI)"; +video/x-ms-afs; mpv %s; description="Microsoft ASF Video"; +video/x-ms-asf; mpv %s; description="Microsoft ASF Video"; +video/x-ms-wma; mpv %s; description="Windows Media Audio"; +video/x-ms-wmv; mpv %s; description="Windows Media Video"; +video/x-ms-wmx; mpv %s; description="Windows Media Video"; +video/x-ms-wvx; mpv %s; description="Windows Media Video"; diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..5b28c4b --- /dev/null +++ b/debian/rules @@ -0,0 +1,50 @@ +#! /usr/bin/make -f + +# 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 +# Apparently, the above isn't enough because of the "%" target. Make the problematic targets explicit +clean: + exec dh $@ --parallel +build: + exec dh $@ --parallel +install: + exec dh $@ --parallel +# handle all other targets in the usual way +%: + 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 +ffmpeg_config: + scripts/ffmpeg-config +ffmpeg_build:ffmpeg_config + scripts/ffmpeg-build +libass_config: + scripts/libass-config +libass_build:libass_config + scripts/libass-build + +# 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 + 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 diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..89ae9db --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native) diff --git a/debian/source/options b/debian/source/options new file mode 100644 index 0000000..659f59c --- /dev/null +++ b/debian/source/options @@ -0,0 +1,2 @@ +compression = xz +compression-level = best diff --git a/scripts/fribidi-clean b/scripts/fribidi-clean index 20f7235..95f3225 100755 --- a/scripts/fribidi-clean +++ b/scripts/fribidi-clean @@ -1,3 +1,5 @@ #!/bin/sh -make -C fribidi distclean +if [ -f fribidi/Makefile ];then + make -C fribidi distclean +fi diff --git a/scripts/libass-clean b/scripts/libass-clean index 2a2efce..d2a431c 100755 --- a/scripts/libass-clean +++ b/scripts/libass-clean @@ -1,3 +1,5 @@ #!/bin/sh -make -C libass distclean +if [ -f libass/Makefile ];then + make -C libass distclean +fi |