diff --git a/chroot-buildpackages.sh b/chroot-buildpackages.sh index c2106c9e9..be214ddb9 100644 --- a/chroot-buildpackages.sh +++ b/chroot-buildpackages.sh @@ -141,7 +141,7 @@ chroot_build_packages() # check build condition if [[ $(type -t package_checkbuild) == function ]] && ! package_checkbuild; then - display_alert "Skipping building $package_name for $release $arch" + display_alert "Skipping building $package_name for" "$release $arch" continue fi @@ -186,6 +186,7 @@ chroot_build_packages() cd /root/build if [[ -n "$package_builddeps" ]]; then display_alert "Installing build dependencies" + # can be replaced with mk-build-deps deps=() installed=\$(dpkg-query -W -f '\${db:Status-Abbrev}|\${binary:Package}\n' '*' 2>/dev/null | grep '^ii' | awk -F '|' '{print \$2}' | cut -d ':' -f 1) for packet in $package_builddeps; do grep -q -x -e "\$packet" <<< "\$installed" || deps+=("\$packet"); done diff --git a/extras-buildpkgs/07-libass.conf b/extras-buildpkgs/07-libass.conf new file mode 100644 index 000000000..610db7325 --- /dev/null +++ b/extras-buildpkgs/07-libass.conf @@ -0,0 +1,22 @@ +# libass +# required for FFmpeg +# required for mpv +# needed only on Jessie +local package_name="libass" +local package_repo="https://github.com/libass/libass.git" +local package_ref="tag:0.13.2" +local package_upstream_version="0.13.2" +local package_builddeps="dh-autoreconf libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev yasm" +local package_install_chroot="libass5 libass-dev" +local package_install_target="libass5" +local package_component="${release}-desktop" + +package_checkbuild() +{ + [[ $arch == armhf && $release == jessie ]] +} + +package_checkinstall() +{ + [[ $LINUXFAMILY == sun*i && $BRANCH == default && $BUILD_DESKTOP == yes ]] +} diff --git a/extras-buildpkgs/09-ffmpeg.conf b/extras-buildpkgs/09-ffmpeg.conf index c3dff33bb..b22d4e9fe 100644 --- a/extras-buildpkgs/09-ffmpeg.conf +++ b/extras-buildpkgs/09-ffmpeg.conf @@ -1,4 +1,6 @@ # FFmpeg +# depends on libass on Jessie +# depends on libvdpau local package_name="FFmpeg" local package_repo="https://github.com/FFmpeg/FFmpeg.git" local package_ref="tag:n3.1.3" diff --git a/extras-buildpkgs/90-mpv.conf b/extras-buildpkgs/90-mpv.conf index c96cb4f40..8a4fda5e7 100644 --- a/extras-buildpkgs/90-mpv.conf +++ b/extras-buildpkgs/90-mpv.conf @@ -1,11 +1,12 @@ # mpv # depends on FFmpeg # depends on libvdpau +# depends on libass on Jessie local package_name="mpv" local package_repo="https://github.com/mpv-player/mpv.git" local package_ref="tag:v0.20.0" local package_upstream_version="0.20.0" -local package_builddeps="libasound2-dev libbluray-dev libcdio-paranoia-dev libdvdnav-dev libdvdread-dev libenca-dev libegl1-mesa-dev libgl1-mesa-dev libguess-dev libjpeg-dev liblcms2-dev liblua5.2-dev libpulse-dev librubberband-dev libsdl2-dev libsndio-dev libva-dev libvdpau-dev libx11-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxss-dev pkg-config python python-docutils" +local package_builddeps="libasound2-dev libass-dev libbluray-dev libcdio-paranoia-dev libdvdnav-dev libdvdread-dev libenca-dev libegl1-mesa-dev libgl1-mesa-dev libguess-dev libjpeg-dev liblcms2-dev liblua5.2-dev libpulse-dev librubberband-dev libsdl2-dev libsndio-dev libva-dev libvdpau-dev libx11-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxss-dev pkg-config python python-docutils" local package_install_target="libmpv1 mpv" local package_component="${release}-desktop" diff --git a/extras-buildpkgs/README.md b/extras-buildpkgs/README.md index 6e568cab6..06073dccb 100644 --- a/extras-buildpkgs/README.md +++ b/extras-buildpkgs/README.md @@ -2,11 +2,11 @@ * Xenial build host -* apt-cacher-ng enabled +* Extra 5GB of disk space # Limitations -* Using QEMU emulation in chroot, so compilation may take a long time (~10 hours) +* Compilation may take a long time (~6 hours) * Limited error checking, process is not aborted on single package building failure @@ -16,16 +16,22 @@ ### Process -* Switch from qemu to multiarch cross-compiling +* Switch from qemu & distcc to multiarch cross-compiling if possible + +* Investigate segfault of glxinfo with libglshim1 ### Package-specific: * libvdpau-sunxi: select branch (master or dev) -* mpv: test and add configuration file for direct framebuffer output - ## Notes libcedrus compiled without USE_UMP=1 requires access to /dev/ion libcedrus compiled with USE_UMP=1 caused segfault last time I tested video playback with mpv + +libmali-sunxi-r3p0 contains *.so symlinks (instead of libmali-sunxi-dev) to help searching libraries by SONAME for libMali.so + +libmali-sunxi-r3p0 is packaged differently for [Debian](https://www.debian.org/doc/debian-policy/ap-pkg-diversions.html) and [Ubuntu](https://wiki.ubuntu.com/X/EGLDriverPackagingHOWTO) + +libglshim1 is installed to private directory (`/usr/lib/arm-linux-gnueabihf/glshim`) and can be activated by using LD_LIBRARY_PATH diff --git a/extras-buildpkgs/libass/debian/changelog b/extras-buildpkgs/libass/debian/changelog new file mode 100644 index 000000000..d0e0fdb1b --- /dev/null +++ b/extras-buildpkgs/libass/debian/changelog @@ -0,0 +1,293 @@ +libass (0.13.1-1) unstable; urgency=medium + + * New upstream release. + - Added x32 support. + * debian/control: + - Drop libenca-dev from Build-Depends. No longer needed. + - Add yasm back to Build-Depends on x32. + * debian/rules: + - Re-enable yasm on x32. + - Explicitely disable CoreText and DirectWrite. + + -- Sebastian Ramacher Tue, 08 Dec 2015 12:23:40 +0100 + +libass (0.13.0-1) unstable; urgency=medium + + * New upstream release. + * debian/libass5.symbols: + - Add new symbol. + - Update version of ass_set_fonts. + * debian/copyright: + - Add new copyright holders. + - Update copyright years. + + -- Sebastian Ramacher Mon, 05 Oct 2015 20:55:19 +0200 + +libass (0.12.3-2) unstable; urgency=medium + + [ Thorsten Glaser ] + * Do not depend on yasm on x32 to disable asm. (Closes: #793754) + + [ Sebastian Ramacher ] + * debian/rules: Build with --disable-asm on x32. + + -- Sebastian Ramacher Mon, 27 Jul 2015 18:04:26 +0200 + +libass (0.12.3-1) unstable; urgency=medium + + * New upstream release. + + -- Sebastian Ramacher Sun, 12 Jul 2015 18:08:04 +0200 + +libass (0.12.2-1) unstable; urgency=medium + + * New upstream release. + + -- Sebastian Ramacher Mon, 11 May 2015 20:34:24 +0200 + +libass (0.12.1-2) unstable; urgency=medium + + * Upload to unstable. + + -- Sebastian Ramacher Sat, 25 Apr 2015 10:43:49 +0200 + +libass (0.12.1-1) experimental; urgency=medium + + * New upstream release. + * debian/control: Disable yasm on any-i386 to avoid non-PIC code. + + -- Sebastian Ramacher Fri, 09 Jan 2015 18:26:04 +0100 + +libass (0.12.0-1) experimental; urgency=medium + + * New upstream release. + * debian/control: + - Add myself to Uploaders. + - Update Homepage. + - Raise priority to optional. + - Bump Standards-Version, no changes required. + - Build-Depend on yasm. + * debian/*.dirs: Remove obsolete dirs files. + * debian/libass5.symbols: Add new symbols. + * debian/rules: + - Enable verbose build logs. + - Add -Wl,--as-needed to LDFLAGS. + * debian/watch: Fetch releases from GitHub. + * debian/copyright: + - Update copyright years. + - Update Source. + - Add myself. + + -- Sebastian Ramacher Tue, 11 Nov 2014 16:26:39 +0100 + +libass (0.10.2-3) unstable; urgency=medium + + * Upload to unstable. + + -- Alessio Treglia Wed, 02 Jul 2014 11:41:09 +0100 + +libass (0.10.2-2) experimental; urgency=low + + * libass-dev Depends on libharfbuzz-dev. (Closes: #752774) + + -- Alessio Treglia Tue, 01 Jul 2014 11:42:15 +0100 + +libass (0.10.2-1) experimental; urgency=low + + * Team upload. + * New upstream release. + * Bump SONAME. + * Refresh symbols. + * Depend on libharfbuzz-dev. + * Bump debhelper to 9. + * Switch to dh-autoreconf. + * Drop 05_as-needed.diff patch. + * Pass --as-needed to autoreconf. + + -- Alessio Treglia Wed, 16 Oct 2013 10:00:00 +0100 + +libass (0.10.1-3) unstable; urgency=low + + * Team upload. + * Use autotols-dev to update config.{guess,sub}. + Thanks to Colin Watson for the report and patch. (Closes: #726337) + + -- Alessio Treglia Tue, 15 Oct 2013 17:43:11 +0100 + +libass (0.10.1-2) unstable; urgency=low + + * Team upload. + * Upload to unstable. + * Update debian/copyright. + * Fix VCS urls. + * Bump Standards. + + -- Alessio Treglia Wed, 04 Sep 2013 09:59:35 +0100 + +libass (0.10.1-1) experimental; urgency=low + + * Team upload. + * New upstream release: + - Fix letter spacing + - Add \rSTYLENAME syntax support (GC #43) + - Fix border generation and border style reset (GC #56) + - Fix various issues with bug-for-bug compatibility of + transformations (\fax, \fay, etc.) to VSFilter (GC #46, GC #42) + - Fix drawing parsing (GC #47) + - Various fixes to shaper (GC #54, GC #55, GC#59) + - Fix change detection + - Add ass_set_line_position API to set a vertical subtitle offset + - Fix scaling of drawing baseline offset (\pbo) values + - Fix skipping of zero-width characters for FriBiDi shaper + - Use LTR text base direction by default, similar to VSFilter + * Refresh symbols. + * Fix watch file. + * Set compression to xz. + + -- Alessio Treglia Tue, 04 Dec 2012 01:48:10 +0000 + +libass (0.10.0-3) unstable; urgency=low + + * Team upload. + * Build with Multiarch support. + + -- Alessio Treglia Tue, 14 Feb 2012 02:03:01 +0100 + +libass (0.10.0-2) unstable; urgency=medium + + * Team upload. + * Add libfribidi-dev to libass-dev's Depends field (Closes: #646504). + + -- Alessio Treglia Fri, 16 Dec 2011 15:04:09 +0100 + +libass (0.10.0-1) unstable; urgency=low + + * Team upload. + * New upstream release (Closes: #645314). + * Build-depend on libfribidi-dev. + * Update symbols file. + + -- Alessio Treglia Tue, 18 Oct 2011 12:45:51 +0200 + +libass (0.9.13-1) unstable; urgency=low + + * Team upload. + * New upstream bugfix release (Closes: #636490): + - Fix critical problem with the outline preprocessor, fixes crash with + FreeType 2.4.6 + - Various small bugfixes. + + -- Alessio Treglia Thu, 04 Aug 2011 09:39:23 +0200 + +libass (0.9.12-1) unstable; urgency=low + + * Team upload. + * New upstream release: + - Switch to permissive (ISC) license + - Support \fs+ and \fs- syntax for modifying font size + - Fix word-wrapping + - Improved charmap fallback matching + - Handle a few more VSFilter quirks correctly + - Add a sensible default style + - Fix compilation against libpng 1.5 + * Rewrite debian/copyright + - License changed to ISC. + - Use a DEP-5-compliant format. + * Bump Standards. + + -- Alessio Treglia Tue, 21 Jun 2011 12:35:45 +0200 + +libass (0.9.11-1) unstable; urgency=low + + [ Christophe Mutricy ] + * New upstream release + + Refresh patch + + Add new symbols to symbol file + * Switch to format 3.0 (quilt) + * Use bzip2 tarball + * Bump Standards-Version to 3.9.1 (no changes required) + * Use googlecode.debian.net redirector + + [ Alessio Treglia ] + * debian/control: Correct team's name. + + -- Christophe Mutricy Wed, 18 Aug 2010 20:34:12 +0100 + +libass (0.9.9-1) unstable; urgency=low + + * New upstream release + * Bump standard version (no change needed) + * Add misc:Depends to libass-dev's depedencies to silence lintian + * Typo at ${misc:Depends} + * Inherit libass4's section from the source package + * Remove unused patch + * Use Copyright as well as (C) in debian/copyright + + -- Christophe Mutricy Wed, 17 Mar 2010 21:18:56 +0000 + +libass (0.9.8-1) unstable; urgency=low + + * New upstream release 0.9.8 + + -- Christophe Mutricy Mon, 19 Oct 2009 12:17:39 +0200 + +libass (0.9.7-3) unstable; urgency=low + + * Have libass-dev depends on libenca-dev, libfreetype6-dev and + libfontconfig1-dev + + -- Christophe Mutricy Sun, 20 Sep 2009 14:54:31 +0100 + +libass (0.9.7-2) unstable; urgency=low + + * Upload to unstable + + -- Christophe Mutricy Wed, 02 Sep 2009 18:19:35 +0200 + +libass (0.9.7-1) experimental; urgency=low + + * New upstream version 0.9.7 + + Closes: #538648 + + API break. Target experimental for now + + SONAME bump + + Update symbols file + + Build system has been fixed no need of extra "-lm" + + Reflect new home of the project (debian/{control,watch} + * Set policy to 3.8.3 + * Add -Wl,--as-needed to debian/rules and the necessary patch for + ltmain.sh + * No info page (and unlikely to be one) + * No need for maintainer mode + * No need of libpng-dev it's only for the test app + + -- Christophe Mutricy Sat, 22 Aug 2009 12:38:46 +0100 + +libass (0.9.6-1) unstable; urgency=low + + * New Upstream Version 0.9.6 + (Closes: #514311, #519578, #519607) + + SONAME bump + + Patch has been merged upstream + * Don't use dh_clean -k + * Use --enable-maintainer-mode + * Policy version 3.8.1 + * Remove autotools-dev from build-dep + * Point to the good version of the GPL + * Add a symbols file + * Add a configuration file for git-buildpackage + * Vcs-*: Reflect the move to git + + -- Christophe Mutricy Thu, 26 Mar 2009 20:59:14 +0100 + +libass (0.9.5-2) unstable; urgency=low + + * Don't install .la files + + -- Christophe Mutricy Thu, 06 Nov 2008 21:55:46 +0100 + +libass (0.9.5-1) unstable; urgency=low + + * Initial release (Closes: #496560) + + -- Christophe Mutricy Mon, 25 Aug 2008 17:17:14 +0100 + diff --git a/extras-buildpkgs/libass/debian/compat b/extras-buildpkgs/libass/debian/compat new file mode 100644 index 000000000..ec635144f --- /dev/null +++ b/extras-buildpkgs/libass/debian/compat @@ -0,0 +1 @@ +9 diff --git a/extras-buildpkgs/libass/debian/control b/extras-buildpkgs/libass/debian/control new file mode 100644 index 000000000..e28152854 --- /dev/null +++ b/extras-buildpkgs/libass/debian/control @@ -0,0 +1,51 @@ +Source: libass +Priority: optional +Maintainer: Debian Multimedia Maintainers +Uploaders: + Christophe Mutricy , + Sebastian Ramacher +Build-Depends: + debhelper (>= 9), + dh-autoreconf, + libfontconfig1-dev, + libfreetype6-dev, + libfribidi-dev, + libharfbuzz-dev, + yasm [any-amd64] +Standards-Version: 3.9.6 +Section: libs +Homepage: https://github.com/libass/libass +Vcs-Git: git://anonscm.debian.org/pkg-multimedia/libass.git +Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-multimedia/libass.git + +Package: libass-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: + libass5 (= ${binary:Version}), + libfontconfig1-dev, + libfreetype6-dev, + libfribidi-dev, + libharfbuzz-dev, + ${misc:Depends} +Description: development files for libass + SubStation Alpha (SSA) is a subtitle file format that allows more + advanced subtitles than the conventional SRT and similar formats. + . + This package contains the header files and static libraries needed to compile + applications or shared objects that use libass. + +Package: libass5 +Architecture: any +Multi-Arch: same +Pre-Depends: + ${misc:Pre-Depends} +Depends: + ${misc:Depends}, + ${shlibs:Depends} +Description: library for SSA/ASS subtitles rendering + SubStation Alpha (SSA) is a subtitle file format that allows more + advanced subtitles than the conventional SRT and similar formats. + . + This package contains the shared library for libass. diff --git a/extras-buildpkgs/libass/debian/copyright b/extras-buildpkgs/libass/debian/copyright new file mode 100644 index 000000000..5265ee903 --- /dev/null +++ b/extras-buildpkgs/libass/debian/copyright @@ -0,0 +1,72 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: libass +Upstream-Contact: Grigori Goronzy +Source: https://github.com/libass/libass + +Files: * +Copyright: + 2009-2011,2015 Grigori Goronzy + 2006 Evgeniy Stepanov + 2013 Rodger Combs + 2015 Oleg Oshmyan + 2015 Stephan Vedder + 2015 Vabishchevich Nikolay + 2011-2014 Yu Zhuohuang +License: ISC + +Files: libass/ass_strtod.c +Copyright: + 1994 Sun Microsystems, Inc + 1988-1993 The Regents of the University of California +License: other-1 + +Files: ltmain.sh +Copyright: + 1996-2008 Free Software Foundation, Inc +License: GPL-2+ + +Files: debian/* +Copyright: + 2011-2013 Alessio Treglia + 2008 Christophe Mutricy , + 2014-2015 Sebastian Ramacher +License: GPL-2+ + +License: ISC + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + . + THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +License: other-1 + Permission to use, copy, modify, and distribute this + software and its documentation for any purpose and without + fee is hereby granted, provided that the above copyright + notice appear in all copies. The University of California + makes no representations about the suitability of this + software for any purpose. It is provided "as is" without + express or implied warranty. + +License: GPL-2+ + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + On Debian systems, the complete text of the GNU General Public + License can be found in `/usr/share/common-licenses/GPL-2'. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . diff --git a/extras-buildpkgs/libass/debian/libass-dev.install b/extras-buildpkgs/libass/debian/libass-dev.install new file mode 100644 index 000000000..76f28fa26 --- /dev/null +++ b/extras-buildpkgs/libass/debian/libass-dev.install @@ -0,0 +1,4 @@ +usr/include/* +usr/lib/*/lib*.a +usr/lib/*/lib*.so +usr/lib/*/pkgconfig/* diff --git a/extras-buildpkgs/libass/debian/libass5.install b/extras-buildpkgs/libass/debian/libass5.install new file mode 100644 index 000000000..3ddde5841 --- /dev/null +++ b/extras-buildpkgs/libass/debian/libass5.install @@ -0,0 +1 @@ +usr/lib/*/lib*.so.* diff --git a/extras-buildpkgs/libass/debian/rules b/extras-buildpkgs/libass/debian/rules new file mode 100644 index 000000000..c994a47bb --- /dev/null +++ b/extras-buildpkgs/libass/debian/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f + +export DEB_LDFLAGS_MAINT_APPEND=-Wl,--as-needed + +%: + dh $@ --parallel --with autoreconf + +override_dh_auto_configure: + dh_auto_configure -- \ + --disable-directwrite \ + --disable-coretext diff --git a/extras-buildpkgs/libass/debian/source/format b/extras-buildpkgs/libass/debian/source/format new file mode 100644 index 000000000..163aaf8d8 --- /dev/null +++ b/extras-buildpkgs/libass/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/extras-buildpkgs/libglshim/debian/control b/extras-buildpkgs/libglshim/debian/control index 9d969746c..d08ce690b 100644 --- a/extras-buildpkgs/libglshim/debian/control +++ b/extras-buildpkgs/libglshim/debian/control @@ -15,7 +15,6 @@ Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} -Replaces: libgl1-mesa-glx Description: OpenGL 1.x shim to to OpenGL ES This is a shim providing OpenGL 1.x functionality to OpenGL ES accelerated cards. . diff --git a/extras-buildpkgs/libglshim/debian/rules b/extras-buildpkgs/libglshim/debian/rules index 69dd0068e..1c6fde0ff 100644 --- a/extras-buildpkgs/libglshim/debian/rules +++ b/extras-buildpkgs/libglshim/debian/rules @@ -3,7 +3,7 @@ #export DH_VERBOSE=1 override_dh_auto_configure: - dh_auto_configure -- -DCMAKE_VERBOSE_MAKEFILE=OFF + dh_auto_configure -- -DCMAKE_VERBOSE_MAKEFILE=OFF -DPRIVATEDIR=glshim override_dh_auto_build: dh_auto_build -- GL preload diff --git a/extras-buildpkgs/mpv/debian/control b/extras-buildpkgs/mpv/debian/control index f8cf127f4..d897a4c1a 100644 --- a/extras-buildpkgs/mpv/debian/control +++ b/extras-buildpkgs/mpv/debian/control @@ -6,6 +6,7 @@ Uploaders: Alessandro Ghedini , Reinhard Tartler Build-Depends: debhelper (>= 9), libasound2-dev [linux-any], + libass-dev (>= 0.12.1~), libavcodec-dev (>= 7:2.4~), libavdevice-dev (>= 7:2.4~), libavfilter-dev (>= 7:2.4~), diff --git a/extras-buildpkgs/mpv/debian/rules b/extras-buildpkgs/mpv/debian/rules index 4e6b8677f..d88d44ca0 100644 --- a/extras-buildpkgs/mpv/debian/rules +++ b/extras-buildpkgs/mpv/debian/rules @@ -13,9 +13,9 @@ override_dh_auto_configure: --zshdir=/usr/share/zsh/vendor-completions \ --enable-cdda --enable-sdl2 --enable-sndio \ --enable-zsh-comp --enable-libmpv-shared \ - --disable-build-date --disable-libass \ - --disable-jack --disable-gl --disable-wayland \ - --disable-xv --disable-vaapi + --disable-build-date --disable-jack \ + --disable-gl --disable-wayland --disable-xv \ + --disable-vaapi override_dh_auto_build: python ./waf build