Control: tags 668751 + patch Control: tags 668751 + pending Control: tags 786026 + patch Control: tags 786026 + pending Control: tags 802055 + patch Control: tags 802055 + pending Dear maintainer, I've prepared an NMU for liquidsoap (versioned as 1.1.1-7.1) and uploaded it to DELAYED/2. Please feel free to tell me if I should delay it longer. Also, I attached `git am`-able patches of what I used to prepare it, maybe you can consider importing them in the git repository. Regards. -- regards, Mattia Rizzolo GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`. more about me: http://mapreri.org : :' : Launchpad user: https://launchpad.net/~mapreri `. `'` Debian QA page: https://qa.debian.org/developer.php?login=mattia `-
diffstat for liquidsoap-1.1.1 liquidsoap-1.1.1 changelog | 12 control | 398 ++++++------- liguidsoap.install | 4 liquidsoap.dirs | 2 liquidsoap.postrm | 11 patches/0001-Stop-tracking-files-generated-by-camlp4.patch | 77 ++ patches/series | 1 rules | 4 8 files changed, 311 insertions(+), 198 deletions(-) diff -Nru liquidsoap-1.1.1/debian/changelog liquidsoap-1.1.1/debian/changelog --- liquidsoap-1.1.1/debian/changelog 2014-08-12 01:16:04.000000000 +0000 +++ liquidsoap-1.1.1/debian/changelog 2016-01-10 13:23:25.000000000 +0000 @@ -1,3 +1,15 @@ +liquidsoap (1.1.1-7.1) unstable; urgency=medium + + * Non-maintainer upload. + * Build-Depend and Recommend fonts-liberation instead of the transitive + ttf-liberation. + * Add patch from upstream to fix FTBFS. Closes: #802055 + * Run wrap-and-sort. + * Build using dh-python2 instead of python-support. Closes: #786026 + * Remove /usr/share/liquidsoap on purge if it's empty. Closes: #668751 + + -- Mattia Rizzolo <mattia@debian.org> Sun, 10 Jan 2016 13:11:54 +0000 + liquidsoap (1.1.1-7) unstable; urgency=medium * Patch shine encoder to adapt to new ABI. diff -Nru liquidsoap-1.1.1/debian/control liquidsoap-1.1.1/debian/control --- liquidsoap-1.1.1/debian/control 2014-08-12 01:16:04.000000000 +0000 +++ liquidsoap-1.1.1/debian/control 2016-01-10 13:09:26.000000000 +0000 @@ -2,61 +2,63 @@ Section: sound Priority: optional Maintainer: Debian OCaml Maintainers <debian-ocaml-maint@lists.debian.org> -Uploaders: Romain Beauxis <toots@rastageeks.org>, Samuel Mimram <smimram@debian.org> +Uploaders: + Romain Beauxis <toots@rastageeks.org>, + Samuel Mimram <smimram@debian.org> Build-Depends: cdbs (>= 0.4.85~), debhelper (>= 7.0.1), - ocaml-nox, - dh-ocaml (>= 1.0.1), dh-autoreconf, - ocaml-findlib, - libcry-ocaml-dev (>= 0.2.2), - libogg-ocaml-dev (>= 0.4.5), - libvorbis-ocaml-dev (>= 0.6.1-3), - libmad-ocaml-dev (>= 0.4.3), - libdtools-ocaml-dev (>= 0.3.1), - libtaglib-ocaml-dev (>= 0.3.1), - libcamomile-ocaml-dev (>= 0.8), + dh-ocaml (>= 1.0.1), + dh-python, festival, - libxml-dom-perl, - python-gtk2-dev, - python, - python-support (>= 0.3), + fonts-liberation, + libalsa-ocaml-dev (>= 0.2.1) [linux-any], libao-ocaml-dev (>= 0.2.0), + libbjack-ocaml-dev (>= 0.1.4), + libcamlimages-ocaml-dev (>= 4.0.1-6), + libcamomile-ocaml-dev (>= 0.8), + libcry-ocaml-dev (>= 0.2.2), + libdssi-ocaml-dev (>= 0.1.1), + libdtools-ocaml-dev (>= 0.3.1), libduppy-ocaml-dev (>= 0.5.1), - libalsa-ocaml-dev (>= 0.2.1) [linux-any], - libpcre-ocaml-dev, - libladspa-ocaml-dev (>= 0.1.4), - sox, - libsoundtouch-ocaml-dev (>= 0.1.7), + libfaad-ocaml-dev (>= 0.3.2), + libflac-ocaml-dev (>= 0.1.1-3), + libfrei0r-ocaml-dev, + libgavl-ocaml-dev (>= 0.1.5), + libgd-ocaml-dev | libgd-gd2-noxpm-ocaml-dev, + libgstreamer-ocaml-dev (>= 0.2.0), libinotify-ocaml-dev [linux-any], + libladspa-ocaml-dev (>= 0.1.4), liblastfm-ocaml-dev (>= 0.3.0), - libspeex-ocaml-dev (>= 0.2.0-3), - libgavl-ocaml-dev (>= 0.1.5), - libtheora-ocaml-dev (>= 0.3.0-3), + liblo-ocaml-dev, + libmad-ocaml-dev (>= 0.4.3), + libmagic-ocaml-dev (>= 0.3.6), + libmm-ocaml-dev (>= 0.2.1), + libmp3lame-ocaml-dev (>= 0.3.2), + libogg-ocaml-dev (>= 0.4.5), + libopus-ocaml-dev, + libpcre-ocaml-dev, libportaudio-ocaml-dev (>= 0.2.0), libpulse-ocaml-dev (>= 0.1.2), libsamplerate-ocaml-dev (>= 0.1.2), - libxmlplaylist-ocaml-dev (>= 0.1.3), - libmagic-ocaml-dev (>= 0.3.6), - libbjack-ocaml-dev (>= 0.1.4), - libsdl-ocaml-dev, - libfaad-ocaml-dev (>= 0.3.2), - libmm-ocaml-dev (>= 0.2.1), - libflac-ocaml-dev (>= 0.1.1-3), libschroedinger-ocaml-dev (>= 0.1.0-3), - libopus-ocaml-dev, - libfrei0r-ocaml-dev, + libsdl-ocaml-dev, libshine-ocaml-dev, + libsoundtouch-ocaml-dev (>= 0.1.7), + libspeex-ocaml-dev (>= 0.2.0-3), + libtaglib-ocaml-dev (>= 0.3.1), + libtheora-ocaml-dev (>= 0.3.0-3), libvoaacenc-ocaml-dev, - libmp3lame-ocaml-dev (>= 0.3.2), - libdssi-ocaml-dev (>= 0.1.1), - liblo-ocaml-dev, - libcamlimages-ocaml-dev (>= 4.0.1-6), + libvorbis-ocaml-dev (>= 0.6.1-3), + libxml-dom-perl, + libxmlplaylist-ocaml-dev (>= 0.1.3), libyojson-ocaml-dev, - libgstreamer-ocaml-dev (>= 0.2.0), - libgd-ocaml-dev | libgd-gd2-noxpm-ocaml-dev, - ttf-liberation + ocaml-findlib, + ocaml-nox, + python, + python-gtk2-dev, + sox Standards-Version: 3.9.4 Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/liquidsoap.git Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/liquidsoap.git @@ -65,35 +67,35 @@ Package: liquidsoap Architecture: any Depends: - ${shlibs:Depends}, + adduser, + libcamomile-ocaml-data (>= 0.8), + sox, + wget, ${misc:Depends}, ${ocaml:Depends}, ${perl:Depends}, - libcamomile-ocaml-data (>= 0.8), - wget, - sox, - adduser + ${shlibs:Depends} Recommends: - logrotate, - mp3gain, - vorbisgain, - vorbis-tools, - liquidsoap-plugin-mad, + liquidsoap-plugin-faad, + liquidsoap-plugin-flac, + liquidsoap-plugin-icecast, liquidsoap-plugin-lame, + liquidsoap-plugin-mad, + liquidsoap-plugin-pulseaudio, liquidsoap-plugin-taglib, - liquidsoap-plugin-vorbis, - liquidsoap-plugin-flac, liquidsoap-plugin-voaacenc, - liquidsoap-plugin-icecast, - liquidsoap-plugin-faad, - liquidsoap-plugin-pulseaudio + liquidsoap-plugin-vorbis, + logrotate, + mp3gain, + vorbis-tools, + vorbisgain Suggests: - icecast2, festival, - mplayer, + icecast2, liguidsoap, liquidsoap-plugin-samplerate, - liquidsoap-plugin-xmlplaylist + liquidsoap-plugin-xmlplaylist, + mplayer Provides: ${ocaml:Provides} Description: audio streaming language @@ -115,7 +117,6 @@ Package: liquidsoap-plugin-all Architecture: any Depends: - ${misc:Depends}, liquidsoap (= ${binary:Version}), liquidsoap-plugin-alsa [linux-any], liquidsoap-plugin-ao, @@ -150,7 +151,8 @@ liquidsoap-plugin-theora, liquidsoap-plugin-voaacenc, liquidsoap-plugin-vorbis, - liquidsoap-plugin-xmlplaylist + liquidsoap-plugin-xmlplaylist, + ${misc:Depends} Description: audio streaming language -- all plugins Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -164,10 +166,10 @@ Package: liquidsoap-plugin-alsa Architecture: linux-any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- ALSA plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -181,10 +183,10 @@ Package: liquidsoap-plugin-ao Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- AO plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -198,10 +200,10 @@ Package: liquidsoap-plugin-camlimages Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Camlimages plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -216,11 +218,11 @@ Package: liquidsoap-plugin-dssi Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, - ${misc:Depends}, liquidsoap (= ${binary:Version}), - liquidsoap-plugin-ladspa (= ${binary:Version}) + liquidsoap-plugin-ladspa (= ${binary:Version}), + ${misc:Depends}, + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- DSSI plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -234,10 +236,10 @@ Package: liquidsoap-plugin-faad Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- FAAD plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -251,11 +253,11 @@ Package: liquidsoap-plugin-flac Architecture: any Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- FLAC plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -269,11 +271,11 @@ Package: liquidsoap-plugin-gavl Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Gavl plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -287,11 +289,12 @@ Package: liquidsoap-plugin-gd Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) -Recommends: ttf-liberation + ${ocaml:Depends}, + ${shlibs:Depends} +Recommends: + fonts-liberation Description: audio streaming language -- libgd plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -306,11 +309,11 @@ Package: liquidsoap-plugin-graphics Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Graphics plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -324,28 +327,28 @@ Package: liquidsoap-plugin-gstreamer Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- GStreamer plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). . It consists of a simple script language, in which you can create, combine and transform audio sources. Its design makes liquidsoap flexible and easily - extensible. + extensible. . This package provides support for operators using GStreamer. Package: liquidsoap-plugin-frei0r Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Frei0r plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -359,10 +362,10 @@ Package: liquidsoap-plugin-icecast Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Icecast plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -376,10 +379,10 @@ Package: liquidsoap-plugin-jack Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- JACK plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -392,11 +395,11 @@ Package: liquidsoap-plugin-ladspa Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- LADSPA plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -410,10 +413,10 @@ Package: liquidsoap-plugin-lame Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Lame plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -426,12 +429,12 @@ Package: liquidsoap-plugin-lastfm Architecture: any -Depends: +Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-xmlplaylist (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Lastfm plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -446,10 +449,10 @@ Package: liquidsoap-plugin-lo Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- LO plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -462,11 +465,11 @@ Package: liquidsoap-plugin-mad Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Mad plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -479,11 +482,11 @@ Package: liquidsoap-plugin-ogg Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Ogg plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -492,18 +495,18 @@ transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for Ogg stream decoding and encoding in + This package provides support for Ogg stream decoding and encoding in Liquidsoap. This plugin is only useful when used with one of vorbis, speex, flac, theora or schroedinger plugin. Package: liquidsoap-plugin-opus Architecture: any Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Opus plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -518,10 +521,10 @@ Package: liquidsoap-plugin-oss Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- OSS plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -534,11 +537,11 @@ Package: liquidsoap-plugin-portaudio Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Portaudio plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -551,11 +554,11 @@ Package: liquidsoap-plugin-pulseaudio Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Pulseaudio plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -568,11 +571,11 @@ Package: liquidsoap-plugin-samplerate Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Samplerate plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -581,16 +584,16 @@ transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for audio samplerate conversion using + This package provides support for audio samplerate conversion using libsamplerate in Liquidsoap. Package: liquidsoap-plugin-schroedinger Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Schroedinger plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -605,11 +608,12 @@ Package: liquidsoap-plugin-sdl Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) -Recommends: ttf-liberation + ${ocaml:Depends}, + ${shlibs:Depends} +Recommends: + fonts-liberation Description: audio streaming language -- SDL plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -623,10 +627,10 @@ Package: liquidsoap-plugin-shine Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Shine plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -640,11 +644,11 @@ Package: liquidsoap-plugin-soundtouch Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Soundtouch plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -653,17 +657,17 @@ transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for audio manipulation using libsoundtouch + This package provides support for audio manipulation using libsoundtouch in Liquidsoap. Package: liquidsoap-plugin-speex Architecture: any Depends: - liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), + liquidsoap-plugin-ogg (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Speex plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -677,11 +681,11 @@ Package: liquidsoap-plugin-taglib Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Taglib plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -690,17 +694,17 @@ transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for file metadata reading using taglib in + This package provides support for file metadata reading using taglib in Liquidsoap. Package: liquidsoap-plugin-theora Architecture: any -Depends: +Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Theora plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -709,16 +713,16 @@ transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for ogg/theora video decoding and encoding + This package provides support for ogg/theora video decoding and encoding in Liquidsoap. Package: liquidsoap-plugin-voaacenc Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Voaacenc plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -731,12 +735,12 @@ Package: liquidsoap-plugin-vorbis Architecture: any -Depends: +Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Vorbis plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -745,16 +749,16 @@ transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for ogg/vorbis audio decoding and encoding + This package provides support for ogg/vorbis audio decoding and encoding in Liquidsoap. Package: liquidsoap-plugin-xmlplaylist Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Xmlplaylist plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -767,8 +771,12 @@ Package: liguidsoap Architecture: all -Depends: ${python:Depends}, ${misc:Depends}, python-gtk2 -Recommends: liquidsoap (= ${binary:Version}) +Depends: + python-gtk2, + ${misc:Depends}, + ${python:Depends} +Recommends: + liquidsoap (= ${binary:Version}) Description: control GUI for liquidsoap Liguidsoap is a GUI for controlling liquidsoap, using pyGTK. . @@ -780,11 +788,13 @@ . It can control a running instance of liquidsoap or launch its own instance. - Package: liquidsoap-mode Architecture: all -Depends: ${misc:Depends}, emacsen-common -Suggests: liquidsoap +Depends: + emacsen-common, + ${misc:Depends} +Suggests: + liquidsoap Section: editors Description: Emacs mode for editing Liquidsoap code Liquidsoap is a powerful tool for building complex audio streaming systems, diff -Nru liquidsoap-1.1.1/debian/liguidsoap.install liquidsoap-1.1.1/debian/liguidsoap.install --- liquidsoap-1.1.1/debian/liguidsoap.install 2014-08-12 01:16:04.000000000 +0000 +++ liquidsoap-1.1.1/debian/liguidsoap.install 2016-01-10 11:10:14.000000000 +0000 @@ -1,4 +1,4 @@ -debian/tmp/usr/bin/liguidsoap -debian/tmp/usr/lib/python*/site-packages/liquidsoap/* var/lib/liguidsoap debian/icons/* usr/share/pixmaps debian/liguidsoap.desktop usr/share/applications +debian/tmp/usr/bin/liguidsoap +debian/tmp/usr/lib/python*/site-packages/liquidsoap/* var/lib/liguidsoap diff -Nru liquidsoap-1.1.1/debian/liquidsoap.dirs liquidsoap-1.1.1/debian/liquidsoap.dirs --- liquidsoap-1.1.1/debian/liquidsoap.dirs 2014-08-12 01:16:04.000000000 +0000 +++ liquidsoap-1.1.1/debian/liquidsoap.dirs 2016-01-10 11:10:14.000000000 +0000 @@ -1,3 +1,3 @@ -usr/bin etc/init.d +usr/bin var/log/liquidsoap diff -Nru liquidsoap-1.1.1/debian/liquidsoap.postrm liquidsoap-1.1.1/debian/liquidsoap.postrm --- liquidsoap-1.1.1/debian/liquidsoap.postrm 1970-01-01 00:00:00.000000000 +0000 +++ liquidsoap-1.1.1/debian/liquidsoap.postrm 2016-01-10 13:39:48.000000000 +0000 @@ -0,0 +1,11 @@ +#! /bin/sh +# postrm script for liquidsoap +set -e + +if [ "$1" = "purge" ] && [ -d /usr/share/liquidsoap ]; then + if ! rmdir /usr/share/liquidsoap; then + echo "leaving /usr/share/liquidsoap in place" + fi +fi + +#DEBHELPER# diff -Nru liquidsoap-1.1.1/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch liquidsoap-1.1.1/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch --- liquidsoap-1.1.1/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch 1970-01-01 00:00:00.000000000 +0000 +++ liquidsoap-1.1.1/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch 2016-01-10 10:57:36.000000000 +0000 @@ -0,0 +1,77 @@ +Description: Fix FTBFS + Stop tracking files generated by camlp4 + . + This repeatedly caused trouble. Untracking them, and generating + them unconditionally, also allowed to simplify the Makefile. +Origin: upstream, https://github.com/savonet/liquidsoap/commit/74d344da2ec6a5c30e621996798fa3aa16506890 +Author: David Baelde <david.baelde@ens-lyon.org> +Date: Fri, 28 Aug 2015 21:18:16 +0200 + +diff --git a/Makefile.rules b/Makefile.rules +index 89cf6a0..0367725 100644 +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -77,15 +77,11 @@ _OCAML_LFLAGS=$($(PROG)_ocamllflags) + + -include $(PROG)_depend + +-ifdef CAMLP4O +- camlp4_ml=$($(PROG)_camlp4_files:.camlp4=.camlp4.ml) +-endif +- + # Include plugin sources for dependencies computation.. + plugins_sources= + $(foreach plug,$($(PROG)_PLUGINS),$(eval plugins_sources+=$($(plug)_sources))) + +-$(PROG)_depend: $($(PROG)_sources) $(camlp4_ml) $($(PROG)_headers) $(plugins_sources) ++$(PROG)_depend: $($(PROG)_sources) $($(PROG)_headers) $(plugins_sources) + $(V)echo OCAMLDEP + $(V)$(OCAMLDEP) $(_DEP_OPTS) $(DEP_OPTS) \ + $($(PROG)_sources) $($(PROG)_headers) $(plugins_sources) > $@ +@@ -179,13 +175,9 @@ plugins/dllliquidsoap_%.so: + $(V)echo OCAMLMKLIB -o plugins/dllliquidsoap_$*.so + $(V)$(OCAMLMKLIB) -o plugins/liquidsoap_$* $($*_c_sources:.c=.o) + +-# The keyword %.ml is already used for +-# .mll files. +-%.camlp4.ml: %.camlp4 +- @echo $(@:.camlp4=.camlp4.ml) >> auto_clean ++%.ml: %.camlp4 + $(V)echo CAMLP4O $< + $(V)$(CAMLP4O) -printer Camlp4OCamlPrinter -impl $< > $@ +- $(V)cat < $@ > $(<:.camlp4=.ml) + + %.ml: %.mll + @echo $(@:.ml=.mli) $(@:.mli=.ml) >> auto_clean +diff --git a/src/Makefile b/src/Makefile +index fd30e24..d3f25a6 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -18,9 +18,7 @@ include $(top_srcdir)/Makefile.defs + # $1: name of the make variable where the file should go if compiled builtin. + # $2: the $W_FOO variable + # $3: path to the file +-# $4: type of source: empty for .ml sources, +-# c_ for c sources and camlp4_ for camlp4 sources. +-# (Camlp4 sources are not supported yet..) ++# $4: type of source: empty for .ml sources and c_ for c sources. + # + # For now, the old style Makefile has been converted to + # this new style by replacing $(if $(W_FOO),..) by +@@ -39,17 +37,6 @@ liquidsoap_c_files = tools/locale_c.c + # Add conditional files.. + $(call conditional_compilation,liquidsoap_c_files,$(W_OSS),io/oss_io_c.c,c_) + +-# Camlp4 compilation works as follow: +-# both .camlp4 and .ml files are present in the +-# source tree. +-# If camlp4o is detected, then a .camlp4.ml target +-# is executed for each .camlp4. This target creates a .camlp4.ml +-# file that is not used and regenerate the .ml files used for compilation. +-liquidsoap_camlp4_files = \ +- $(if $(W_DUPPY_SYNTAX),outputs/harbor_output.camlp4) \ +- $(if $(W_DUPPY_SYNTAX),tools/server.camlp4) \ +- $(if $(W_DUPPY_SYNTAX),tools/harbor.camlp4) +- + # This variable contains only conditional files.. + ogg_demuxer = diff -Nru liquidsoap-1.1.1/debian/patches/series liquidsoap-1.1.1/debian/patches/series --- liquidsoap-1.1.1/debian/patches/series 2014-08-12 01:19:37.000000000 +0000 +++ liquidsoap-1.1.1/debian/patches/series 2016-01-10 10:51:34.000000000 +0000 @@ -1,2 +1,3 @@ fdkaad-dynlink.patch shine_abi_3 +0001-Stop-tracking-files-generated-by-camlp4.patch diff -Nru liquidsoap-1.1.1/debian/rules liquidsoap-1.1.1/debian/rules --- liquidsoap-1.1.1/debian/rules 2014-08-12 01:16:04.000000000 +0000 +++ liquidsoap-1.1.1/debian/rules 2016-01-10 12:56:35.000000000 +0000 @@ -4,6 +4,8 @@ include /usr/share/cdbs/1/class/autotools.mk include /usr/share/cdbs/1/rules/ocaml.mk +DEB_PYTHON2_MODULE_PACKAGES := liguidsoap + DEFAULT_FONT := /usr/share/fonts/truetype/ttf-liberation/LiberationSans-Regular.ttf DEB_CONFIGURE_EXTRA_FLAGS := \ @@ -73,7 +75,7 @@ binary-install/liguidsoap:: sed -e s#/usr/lib/python.*/site-packages/liquidsoap#/var/lib/liguidsoap#g -i $(CURDIR)/debian/liguidsoap/usr/bin/liguidsoap - dh_pysupport /var/lib/liguidsoap + dh_python2 /var/lib/liguidsoap clean:: dh_autoreconf_clean
From fc70b1e0c695ad12aa145e603189c04706bb00b4 Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 10:50:44 +0000 Subject: [PATCH 1/7] debian/control: Build-Depend and Recommend fonts-liberation instead of transitive ttf-liberation --- debian/control | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/debian/control b/debian/control index 762e012..e48135b 100644 --- a/debian/control +++ b/debian/control @@ -56,7 +56,7 @@ Build-Depends: libyojson-ocaml-dev, libgstreamer-ocaml-dev (>= 0.2.0), libgd-ocaml-dev | libgd-gd2-noxpm-ocaml-dev, - ttf-liberation + fonts-liberation Standards-Version: 3.9.4 Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/liquidsoap.git Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/liquidsoap.git @@ -291,7 +291,7 @@ Depends: ${ocaml:Depends}, ${misc:Depends}, liquidsoap (= ${binary:Version}) -Recommends: ttf-liberation +Recommends: fonts-liberation Description: audio streaming language -- libgd plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -609,7 +609,7 @@ Depends: ${ocaml:Depends}, ${misc:Depends}, liquidsoap (= ${binary:Version}) -Recommends: ttf-liberation +Recommends: fonts-liberation Description: audio streaming language -- SDL plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). -- 2.7.0.rc3
From 0d2c39413578cae322390e637f6ff098da244c65 Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 10:54:40 +0000 Subject: [PATCH 2/7] unapply patches --- Makefile.defs.in | 1 - configure.ac | 9 -- src/Makefile | 5 +- src/encoder/fdkaac_encoder.ml | 220 +++++++++++++--------------------- src/encoder/fdkaac_encoder_builtin.ml | 28 ----- src/encoder/fdkaac_encoder_dynlink.ml | 50 -------- src/encoder/shine_encoder.ml | 2 +- src/tools/fdkaac_dynlink.ml | 50 -------- src/tools/fdkaac_dynlink.mli | 48 -------- 9 files changed, 87 insertions(+), 326 deletions(-) delete mode 100644 src/encoder/fdkaac_encoder_builtin.ml delete mode 100644 src/encoder/fdkaac_encoder_dynlink.ml delete mode 100644 src/tools/fdkaac_dynlink.ml delete mode 100644 src/tools/fdkaac_dynlink.mli diff --git a/Makefile.defs.in b/Makefile.defs.in index f221ad0..9135d41 100644 --- a/Makefile.defs.in +++ b/Makefile.defs.in @@ -79,7 +79,6 @@ W_AACPLUS=@W_AACPLUS@ W_AACPLUS_DYN=@W_AACPLUS_DYN@ W_VOAACENC=@W_VOAACENC@ W_FDKAAC=@W_FDKAAC@ -W_FDKAAC_DYN=@W_FDKAAC_DYN@ W_ALSA=@W_ALSA@ W_BJACK=@W_BJACK@ W_AO=@W_AO@ diff --git a/configure.ac b/configure.ac index 60a16a8..f35b1e9 100644 --- a/configure.ac +++ b/configure.ac @@ -484,15 +484,6 @@ AC_CHECK_OCAML_BINDING([voaacenc],[0.1.0]) # AC_CHECK_OCAML_BINDING([fdkaac],[0.1.0]) -if test -z "${W_FDKAAC}"; then - if test -n "${W_DYNLINK}"; then - if test -n "${OCAML_HAS_FIRST_CLASS_MODULES}"; then - W_FDKAAC_DYN=yes - w_FDKAAC="detected at runtime" - fi - fi -fi -AC_SUBST(W_FDKAAC_DYN) # # Theora diff --git a/src/Makefile b/src/Makefile index e9af43d..b6851fb 100644 --- a/src/Makefile +++ b/src/Makefile @@ -156,11 +156,9 @@ analyze = analyze/analyze_rms.ml encoders = \ encoder/wav_encoder.ml \ encoder/lame_encoder.ml \ - encoder/fdkaac_encoder.ml \ encoder/aacplus_encoder.ml \ $(if ($(OS_TYPE):Win32=),encoder/external_encoder.ml) \ $(if $(W_LAME_DYN),encoder/lame_encoder_dynlink.ml) \ - $(if $(W_FDKAAC_DYN),encoder/fdkaac_encoder_dynlink.ml) \ $(if $(W_AACPLUS_DYN),encoder/aacplus_encoder_dynlink.ml) $(call conditional_compilation,encoders,$(W_SHINE),encoder/shine_encoder.ml) @@ -168,7 +166,7 @@ $(call conditional_compilation,encoders,$(W_LAME),encoder/lame_encoder_builtin.m $(call conditional_compilation,encoders,$(W_FLAC),encoder/flac_encoder.ml) $(call conditional_compilation,encoders,$(W_AACPLUS),encoder/aacplus_encoder_builtin.ml) $(call conditional_compilation,encoders,$(W_VOAACENC),encoder/voaacenc_encoder.ml) -$(call conditional_compilation,encoders,$(W_FDKAAC),encoder/fdkaac_encoder_builtin.ml) +$(call conditional_compilation,encoders,$(W_FDKAAC),encoder/fdkaac_encoder.ml) $(call conditional_compilation,encoders,$(W_TAGLIB),encoder/taglib_id3v2.ml) outputs = outputs/output.ml \ @@ -190,7 +188,6 @@ tools = tools/stdlib.ml tools/doc.ml tools/plug.ml tools/utils.ml \ $(if $(W_DYNLINK),tools/dyntools.ml) \ tools/rqueue.ml \ $(if $(W_LAME_DYN),tools/lame_dynlink.ml) \ - $(if $(W_FDKAAC_DYN),tools/fdkaac_dynlink.ml) \ $(if $(W_AACPLUS_DYN),tools/aacplus_dynlink.ml) \ tools/wav.ml tools/tutils.ml \ tools/file_watcher.ml tools/file_watcher_mtime.ml \ diff --git a/src/encoder/fdkaac_encoder.ml b/src/encoder/fdkaac_encoder.ml index 8580906..11b6363 100644 --- a/src/encoder/fdkaac_encoder.ml +++ b/src/encoder/fdkaac_encoder.ml @@ -1,156 +1,106 @@ (***************************************************************************** - + Liquidsoap, a programmable audio stream generator. Copyright 2003-2013 Savonet team - + This program 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 program 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, fully stated in the COPYING file at the root of the liquidsoap distribution. - + You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - + *****************************************************************************) - + (** FDK-AAC encoder *) -module type Fdkaac_t = - sig - module Encoder : - sig - exception Invalid_handle - exception Unsupported_parameter - exception Invalid_config - exception Error of int - exception End_of_file - exception Unknown of int - val string_of_exception : exn -> string option - type t - type mpeg2_aac = [ `AAC_LC | `HE_AAC | `HE_AAC_v2 ] - type mpeg4_aac = - [ `AAC_ELD | `AAC_LC | `AAC_LD | `HE_AAC | `HE_AAC_v2 ] - type aot = [ `Mpeg_2 of mpeg2_aac | `Mpeg_4 of mpeg4_aac ] - type bitrate_mode = [ `Constant | `Full_bitreservoir ] - type transmux = - [ `Adif | `Adts | `Latm | `Latm_out_of_band | `Loas | `Raw ] - type param_name = - [ `Afterburner - | `Aot - | `Bandwidth - | `Bitrate - | `Bitrate_mode - | `Granule_length - | `Samplerate - | `Sbr_mode - | `Transmux ] - type param = - [ `Afterburner of bool - | `Aot of aot - | `Bandwidth of bool - | `Bitrate of int - | `Bitrate_mode of bitrate_mode - | `Granule_length of int - | `Samplerate of int - | `Sbr_mode of bool - | `Transmux of transmux ] - val create : int -> t - val set : t -> param -> unit - val get : t -> param_name -> param - val encode : t -> string -> int -> int -> string - val flush : t -> string - end - end - -module Register(Fdkaac : Fdkaac_t) = -struct - module G = Generator.Generator - - let create_encoder params = - let encoder = - Fdkaac.Encoder.create params.Encoder.FdkAacEnc.channels - in - let params = [ - `Aot params.Encoder.FdkAacEnc.aot; - `Bitrate (params.Encoder.FdkAacEnc.bitrate*1000); - `Samplerate params.Encoder.FdkAacEnc.samplerate; - `Transmux params.Encoder.FdkAacEnc.transmux ] @ ( - if params.Encoder.FdkAacEnc.aot = `Mpeg_4 `AAC_ELD then - [`Sbr_mode params.Encoder.FdkAacEnc.sbr_mode] - else []) - in - List.iter (Fdkaac.Encoder.set encoder) params; - encoder - - let encoder aac = - let enc = create_encoder aac in - let channels = aac.Encoder.FdkAacEnc.channels in - let samplerate = aac.Encoder.FdkAacEnc.samplerate in - let samplerate_converter = - Audio_converter.Samplerate.create channels +module G = Generator.Generator + +let create_encoder params = + let encoder = + Fdkaac.Encoder.create params.Encoder.FdkAacEnc.channels + in + let params = [ + `Aot params.Encoder.FdkAacEnc.aot; + `Bitrate (params.Encoder.FdkAacEnc.bitrate*1000); + `Samplerate params.Encoder.FdkAacEnc.samplerate; + `Transmux params.Encoder.FdkAacEnc.transmux ] @ ( + if params.Encoder.FdkAacEnc.aot = `Mpeg_4 `AAC_ELD then + [`Sbr_mode params.Encoder.FdkAacEnc.sbr_mode] + else []) + in + List.iter (Fdkaac.Encoder.set encoder) params; + encoder + +let encoder aac = + let enc = create_encoder aac in + let channels = aac.Encoder.FdkAacEnc.channels in + let samplerate = aac.Encoder.FdkAacEnc.samplerate in + let samplerate_converter = + Audio_converter.Samplerate.create channels + in + let src_freq = float (Frame.audio_of_seconds 1.) in + let dst_freq = float samplerate in + let n = 1024 in + let buf = Buffer.create n in + let encode frame start len = + let start = Frame.audio_of_master start in + let b = AFrame.content_of_type ~channels frame start in + let len = Frame.audio_of_master len in + let b,start,len = + if src_freq <> dst_freq then + let b = Audio_converter.Samplerate.resample + samplerate_converter (dst_freq /. src_freq) + b start len + in + b,0,Array.length b.(0) + else + b,start,len in - let src_freq = float (Frame.audio_of_seconds 1.) in - let dst_freq = float samplerate in - let n = 1024 in - let buf = Buffer.create n in - let encode frame start len = - let start = Frame.audio_of_master start in - let b = AFrame.content_of_type ~channels frame start in - let len = Frame.audio_of_master len in - let b,start,len = - if src_freq <> dst_freq then - let b = Audio_converter.Samplerate.resample - samplerate_converter (dst_freq /. src_freq) - b start len - in - b,0,Array.length b.(0) - else - b,start,len - in - let encoded = Buffer.create n in - Buffer.add_string buf (Audio.S16LE.make b start len); - let len = Buffer.length buf in - let rec f start = - if start+n > len then - begin - Utils.buffer_drop buf start; - Buffer.contents encoded - end - else - begin - let data = Buffer.sub buf start n in - Buffer.add_string encoded - (Fdkaac.Encoder.encode enc data 0 n); - f (start+n) - end - in - f 0 + let encoded = Buffer.create n in + Buffer.add_string buf (Audio.S16LE.make b start len); + let len = Buffer.length buf in + let rec f start = + if start+n > len then + begin + Utils.buffer_drop buf start; + Buffer.contents encoded + end + else + begin + let data = Buffer.sub buf start n in + Buffer.add_string encoded + (Fdkaac.Encoder.encode enc data 0 n); + f (start+n) + end in - let stop () = - let rem = Buffer.contents buf in - let s = - Fdkaac.Encoder.encode enc rem 0 (String.length rem) - in - s ^ (Fdkaac.Encoder.flush enc) + f 0 + in + let stop () = + let rem = Buffer.contents buf in + let s = + Fdkaac.Encoder.encode enc rem 0 (String.length rem) in - { - Encoder. - insert_metadata = (fun m -> ()) ; - header = None ; - encode = encode ; - stop = stop - } - - let register_encoder name = - Encoder.plug#register name - (function - | Encoder.FdkAacEnc m -> Some (fun _ _ -> encoder m) - | _ -> None) -end + s ^ (Fdkaac.Encoder.flush enc) + in + { + Encoder. + insert_metadata = (fun m -> ()) ; + header = None ; + encode = encode ; + stop = stop + } + +let () = + Encoder.plug#register "AAC" + (function + | Encoder.FdkAacEnc m -> Some (fun _ _ -> encoder m) + | _ -> None) diff --git a/src/encoder/fdkaac_encoder_builtin.ml b/src/encoder/fdkaac_encoder_builtin.ml deleted file mode 100644 index 62fa319..0000000 --- a/src/encoder/fdkaac_encoder_builtin.ml +++ /dev/null @@ -1,28 +0,0 @@ -(***************************************************************************** - - Liquidsoap, a programmable audio stream generator. - Copyright 2003-2013 Savonet team - - This program 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 program 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, fully stated in the COPYING - file at the root of the liquidsoap distribution. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - *****************************************************************************) - -(** Builtin Fdkaac encoder *) - -module Register = Fdkaac_encoder.Register(Fdkaac) - -let () = - Register.register_encoder "AAC/fdkaac/builtin" diff --git a/src/encoder/fdkaac_encoder_dynlink.ml b/src/encoder/fdkaac_encoder_dynlink.ml deleted file mode 100644 index f979afd..0000000 --- a/src/encoder/fdkaac_encoder_dynlink.ml +++ /dev/null @@ -1,50 +0,0 @@ -(***************************************************************************** - - Liquidsoap, a programmable audio stream generator. - Copyright 2003-2013 Savonet team - - This program 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 program 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, fully stated in the COPYING - file at the root of the liquidsoap distribution. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - *****************************************************************************) - -(** Dynamic Fdkaac encoder *) - -let path = - try - [Sys.getenv "FDKAAC_DYN_PATH"] - with - | Not_found -> - List.fold_left - (fun l x -> (x ^ "/fdkaac") :: l) - Configure.findlib_path Configure.findlib_path - -open Fdkaac_dynlink - -let () = - let load () = - match handler.fdkaac_module with - | Some m -> - let module Fdkaac = (val m : Fdkaac_dynlink.Fdkaac_t) in - let module Register = Fdkaac_encoder.Register(Fdkaac) in - Register.register_encoder "AAC/fdkaac/dynlink" - | None -> assert false - in - Hashtbl.add Dyntools.dynlink_list - "fdkaac encoder" - { Dyntools. - path = path; - files = ["fdkaac";"fdkaac_loader"]; - load = load } diff --git a/src/encoder/shine_encoder.ml b/src/encoder/shine_encoder.ml index b3499db..56c414f 100644 --- a/src/encoder/shine_encoder.ml +++ b/src/encoder/shine_encoder.ml @@ -45,7 +45,7 @@ let encoder shine = let src_freq = float (Frame.audio_of_seconds 1.) in let dst_freq = float samplerate in (* Shine accepts data of a fixed length.. *) - let samples = Shine.samples_per_pass enc in + let samples = Shine.samples_per_frame in let data = Audio.create channels samples in let buf = G.create () in let encoded = Buffer.create 1024 in diff --git a/src/tools/fdkaac_dynlink.ml b/src/tools/fdkaac_dynlink.ml deleted file mode 100644 index d1b9078..0000000 --- a/src/tools/fdkaac_dynlink.ml +++ /dev/null @@ -1,50 +0,0 @@ -module type Fdkaac_t = -sig - module Encoder : - sig - exception Invalid_handle - exception Unsupported_parameter - exception Invalid_config - exception Error of int - exception End_of_file - exception Unknown of int - val string_of_exception : exn -> string option - type t - type mpeg2_aac = [ `AAC_LC | `HE_AAC | `HE_AAC_v2 ] - type mpeg4_aac = - [ `AAC_ELD | `AAC_LC | `AAC_LD | `HE_AAC | `HE_AAC_v2 ] - type aot = [ `Mpeg_2 of mpeg2_aac | `Mpeg_4 of mpeg4_aac ] - type bitrate_mode = [ `Constant | `Full_bitreservoir ] - type transmux = - [ `Adif | `Adts | `Latm | `Latm_out_of_band | `Loas | `Raw ] - type param_name = - [ `Afterburner - | `Aot - | `Bandwidth - | `Bitrate - | `Bitrate_mode - | `Granule_length - | `Samplerate - | `Sbr_mode - | `Transmux ] - type param = - [ `Afterburner of bool - | `Aot of aot - | `Bandwidth of bool - | `Bitrate of int - | `Bitrate_mode of bitrate_mode - | `Granule_length of int - | `Samplerate of int - | `Sbr_mode of bool - | `Transmux of transmux ] - val create : int -> t - val set : t -> param -> unit - val get : t -> param_name -> param - val encode : t -> string -> int -> int -> string - val flush : t -> string - end -end - -type handler = { mutable fdkaac_module : (module Fdkaac_t) option } - -let handler = {fdkaac_module = None } diff --git a/src/tools/fdkaac_dynlink.mli b/src/tools/fdkaac_dynlink.mli deleted file mode 100644 index a4aa46d..0000000 --- a/src/tools/fdkaac_dynlink.mli +++ /dev/null @@ -1,48 +0,0 @@ -module type Fdkaac_t = - sig - module Encoder : - sig - exception Invalid_handle - exception Unsupported_parameter - exception Invalid_config - exception Error of int - exception End_of_file - exception Unknown of int - val string_of_exception : exn -> string option - type t - type mpeg2_aac = [ `AAC_LC | `HE_AAC | `HE_AAC_v2 ] - type mpeg4_aac = - [ `AAC_ELD | `AAC_LC | `AAC_LD | `HE_AAC | `HE_AAC_v2 ] - type aot = [ `Mpeg_2 of mpeg2_aac | `Mpeg_4 of mpeg4_aac ] - type bitrate_mode = [ `Constant | `Full_bitreservoir ] - type transmux = - [ `Adif | `Adts | `Latm | `Latm_out_of_band | `Loas | `Raw ] - type param_name = - [ `Afterburner - | `Aot - | `Bandwidth - | `Bitrate - | `Bitrate_mode - | `Granule_length - | `Samplerate - | `Sbr_mode - | `Transmux ] - type param = - [ `Afterburner of bool - | `Aot of aot - | `Bandwidth of bool - | `Bitrate of int - | `Bitrate_mode of bitrate_mode - | `Granule_length of int - | `Samplerate of int - | `Sbr_mode of bool - | `Transmux of transmux ] - val create : int -> t - val set : t -> param -> unit - val get : t -> param_name -> param - val encode : t -> string -> int -> int -> string - val flush : t -> string - end - end -type handler = { mutable fdkaac_module : (module Fdkaac_t) option; } -val handler : handler -- 2.7.0.rc3
From 313e2f7bccaefc6ede9bf1093bf91b597c74211c Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 10:55:14 +0000 Subject: [PATCH 3/7] add patch from upstream to fix FTBFS Closes: #802055 --- ...1-Stop-tracking-files-generated-by-camlp4.patch | 77 ++++++++++++++++++++++ debian/patches/series | 1 + 2 files changed, 78 insertions(+) create mode 100644 debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch diff --git a/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch b/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch new file mode 100644 index 0000000..446db9d --- /dev/null +++ b/debian/patches/0001-Stop-tracking-files-generated-by-camlp4.patch @@ -0,0 +1,77 @@ +Description: Fix FTBFS + Stop tracking files generated by camlp4 + . + This repeatedly caused trouble. Untracking them, and generating + them unconditionally, also allowed to simplify the Makefile. +Origin: upstream, https://github.com/savonet/liquidsoap/commit/74d344da2ec6a5c30e621996798fa3aa16506890 +Author: David Baelde <david.baelde@ens-lyon.org> +Date: Fri, 28 Aug 2015 21:18:16 +0200 + +diff --git a/Makefile.rules b/Makefile.rules +index 89cf6a0..0367725 100644 +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -77,15 +77,11 @@ _OCAML_LFLAGS=$($(PROG)_ocamllflags) + + -include $(PROG)_depend + +-ifdef CAMLP4O +- camlp4_ml=$($(PROG)_camlp4_files:.camlp4=.camlp4.ml) +-endif +- + # Include plugin sources for dependencies computation.. + plugins_sources= + $(foreach plug,$($(PROG)_PLUGINS),$(eval plugins_sources+=$($(plug)_sources))) + +-$(PROG)_depend: $($(PROG)_sources) $(camlp4_ml) $($(PROG)_headers) $(plugins_sources) ++$(PROG)_depend: $($(PROG)_sources) $($(PROG)_headers) $(plugins_sources) + $(V)echo OCAMLDEP + $(V)$(OCAMLDEP) $(_DEP_OPTS) $(DEP_OPTS) \ + $($(PROG)_sources) $($(PROG)_headers) $(plugins_sources) > $@ +@@ -179,13 +175,9 @@ plugins/dllliquidsoap_%.so: + $(V)echo OCAMLMKLIB -o plugins/dllliquidsoap_$*.so + $(V)$(OCAMLMKLIB) -o plugins/liquidsoap_$* $($*_c_sources:.c=.o) + +-# The keyword %.ml is already used for +-# .mll files. +-%.camlp4.ml: %.camlp4 +- @echo $(@:.camlp4=.camlp4.ml) >> auto_clean ++%.ml: %.camlp4 + $(V)echo CAMLP4O $< + $(V)$(CAMLP4O) -printer Camlp4OCamlPrinter -impl $< > $@ +- $(V)cat < $@ > $(<:.camlp4=.ml) + + %.ml: %.mll + @echo $(@:.ml=.mli) $(@:.mli=.ml) >> auto_clean +diff --git a/src/Makefile b/src/Makefile +index fd30e24..d3f25a6 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -18,9 +18,7 @@ include $(top_srcdir)/Makefile.defs + # $1: name of the make variable where the file should go if compiled builtin. + # $2: the $W_FOO variable + # $3: path to the file +-# $4: type of source: empty for .ml sources, +-# c_ for c sources and camlp4_ for camlp4 sources. +-# (Camlp4 sources are not supported yet..) ++# $4: type of source: empty for .ml sources and c_ for c sources. + # + # For now, the old style Makefile has been converted to + # this new style by replacing $(if $(W_FOO),..) by +@@ -39,17 +37,6 @@ liquidsoap_c_files = tools/locale_c.c + # Add conditional files.. + $(call conditional_compilation,liquidsoap_c_files,$(W_OSS),io/oss_io_c.c,c_) + +-# Camlp4 compilation works as follow: +-# both .camlp4 and .ml files are present in the +-# source tree. +-# If camlp4o is detected, then a .camlp4.ml target +-# is executed for each .camlp4. This target creates a .camlp4.ml +-# file that is not used and regenerate the .ml files used for compilation. +-liquidsoap_camlp4_files = \ +- $(if $(W_DUPPY_SYNTAX),outputs/harbor_output.camlp4) \ +- $(if $(W_DUPPY_SYNTAX),tools/server.camlp4) \ +- $(if $(W_DUPPY_SYNTAX),tools/harbor.camlp4) +- + # This variable contains only conditional files.. + ogg_demuxer = diff --git a/debian/patches/series b/debian/patches/series index 60cd0b2..7576e8e 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ fdkaad-dynlink.patch shine_abi_3 +0001-Stop-tracking-files-generated-by-camlp4.patch -- 2.7.0.rc3
From 2cbf401ae59a1ee18a00590796a8b2662313032e Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 11:00:09 +0000 Subject: [PATCH 4/7] run wrap-and-sort --- debian/control | 398 ++++++++++++++++++++++++---------------------- debian/liguidsoap.install | 4 +- debian/liquidsoap.dirs | 2 +- 3 files changed, 207 insertions(+), 197 deletions(-) diff --git a/debian/control b/debian/control index e48135b..1b07662 100644 --- a/debian/control +++ b/debian/control @@ -2,61 +2,63 @@ Source: liquidsoap Section: sound Priority: optional Maintainer: Debian OCaml Maintainers <debian-ocaml-maint@lists.debian.org> -Uploaders: Romain Beauxis <toots@rastageeks.org>, Samuel Mimram <smimram@debian.org> +Uploaders: + Romain Beauxis <toots@rastageeks.org>, + Samuel Mimram <smimram@debian.org> Build-Depends: cdbs (>= 0.4.85~), debhelper (>= 7.0.1), - ocaml-nox, - dh-ocaml (>= 1.0.1), dh-autoreconf, - ocaml-findlib, - libcry-ocaml-dev (>= 0.2.2), - libogg-ocaml-dev (>= 0.4.5), - libvorbis-ocaml-dev (>= 0.6.1-3), - libmad-ocaml-dev (>= 0.4.3), - libdtools-ocaml-dev (>= 0.3.1), - libtaglib-ocaml-dev (>= 0.3.1), - libcamomile-ocaml-dev (>= 0.8), + dh-ocaml (>= 1.0.1), festival, - libxml-dom-perl, - python-gtk2-dev, - python, - python-support (>= 0.3), + fonts-liberation, + libalsa-ocaml-dev (>= 0.2.1) [linux-any], libao-ocaml-dev (>= 0.2.0), + libbjack-ocaml-dev (>= 0.1.4), + libcamlimages-ocaml-dev (>= 4.0.1-6), + libcamomile-ocaml-dev (>= 0.8), + libcry-ocaml-dev (>= 0.2.2), + libdssi-ocaml-dev (>= 0.1.1), + libdtools-ocaml-dev (>= 0.3.1), libduppy-ocaml-dev (>= 0.5.1), - libalsa-ocaml-dev (>= 0.2.1) [linux-any], - libpcre-ocaml-dev, - libladspa-ocaml-dev (>= 0.1.4), - sox, - libsoundtouch-ocaml-dev (>= 0.1.7), + libfaad-ocaml-dev (>= 0.3.2), + libflac-ocaml-dev (>= 0.1.1-3), + libfrei0r-ocaml-dev, + libgavl-ocaml-dev (>= 0.1.5), + libgd-ocaml-dev | libgd-gd2-noxpm-ocaml-dev, + libgstreamer-ocaml-dev (>= 0.2.0), libinotify-ocaml-dev [linux-any], + libladspa-ocaml-dev (>= 0.1.4), liblastfm-ocaml-dev (>= 0.3.0), - libspeex-ocaml-dev (>= 0.2.0-3), - libgavl-ocaml-dev (>= 0.1.5), - libtheora-ocaml-dev (>= 0.3.0-3), + liblo-ocaml-dev, + libmad-ocaml-dev (>= 0.4.3), + libmagic-ocaml-dev (>= 0.3.6), + libmm-ocaml-dev (>= 0.2.1), + libmp3lame-ocaml-dev (>= 0.3.2), + libogg-ocaml-dev (>= 0.4.5), + libopus-ocaml-dev, + libpcre-ocaml-dev, libportaudio-ocaml-dev (>= 0.2.0), libpulse-ocaml-dev (>= 0.1.2), libsamplerate-ocaml-dev (>= 0.1.2), - libxmlplaylist-ocaml-dev (>= 0.1.3), - libmagic-ocaml-dev (>= 0.3.6), - libbjack-ocaml-dev (>= 0.1.4), - libsdl-ocaml-dev, - libfaad-ocaml-dev (>= 0.3.2), - libmm-ocaml-dev (>= 0.2.1), - libflac-ocaml-dev (>= 0.1.1-3), libschroedinger-ocaml-dev (>= 0.1.0-3), - libopus-ocaml-dev, - libfrei0r-ocaml-dev, + libsdl-ocaml-dev, libshine-ocaml-dev, + libsoundtouch-ocaml-dev (>= 0.1.7), + libspeex-ocaml-dev (>= 0.2.0-3), + libtaglib-ocaml-dev (>= 0.3.1), + libtheora-ocaml-dev (>= 0.3.0-3), libvoaacenc-ocaml-dev, - libmp3lame-ocaml-dev (>= 0.3.2), - libdssi-ocaml-dev (>= 0.1.1), - liblo-ocaml-dev, - libcamlimages-ocaml-dev (>= 4.0.1-6), + libvorbis-ocaml-dev (>= 0.6.1-3), + libxml-dom-perl, + libxmlplaylist-ocaml-dev (>= 0.1.3), libyojson-ocaml-dev, - libgstreamer-ocaml-dev (>= 0.2.0), - libgd-ocaml-dev | libgd-gd2-noxpm-ocaml-dev, - fonts-liberation + ocaml-findlib, + ocaml-nox, + python, + python-gtk2-dev, + python-support (>= 0.3), + sox Standards-Version: 3.9.4 Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/liquidsoap.git Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/liquidsoap.git @@ -65,35 +67,35 @@ Homepage: http://savonet.sourceforge.net/ Package: liquidsoap Architecture: any Depends: - ${shlibs:Depends}, + adduser, + libcamomile-ocaml-data (>= 0.8), + sox, + wget, ${misc:Depends}, ${ocaml:Depends}, ${perl:Depends}, - libcamomile-ocaml-data (>= 0.8), - wget, - sox, - adduser + ${shlibs:Depends} Recommends: - logrotate, - mp3gain, - vorbisgain, - vorbis-tools, - liquidsoap-plugin-mad, + liquidsoap-plugin-faad, + liquidsoap-plugin-flac, + liquidsoap-plugin-icecast, liquidsoap-plugin-lame, + liquidsoap-plugin-mad, + liquidsoap-plugin-pulseaudio, liquidsoap-plugin-taglib, - liquidsoap-plugin-vorbis, - liquidsoap-plugin-flac, liquidsoap-plugin-voaacenc, - liquidsoap-plugin-icecast, - liquidsoap-plugin-faad, - liquidsoap-plugin-pulseaudio + liquidsoap-plugin-vorbis, + logrotate, + mp3gain, + vorbis-tools, + vorbisgain Suggests: - icecast2, festival, - mplayer, + icecast2, liguidsoap, liquidsoap-plugin-samplerate, - liquidsoap-plugin-xmlplaylist + liquidsoap-plugin-xmlplaylist, + mplayer Provides: ${ocaml:Provides} Description: audio streaming language @@ -115,7 +117,6 @@ Description: audio streaming language Package: liquidsoap-plugin-all Architecture: any Depends: - ${misc:Depends}, liquidsoap (= ${binary:Version}), liquidsoap-plugin-alsa [linux-any], liquidsoap-plugin-ao, @@ -150,7 +151,8 @@ Depends: liquidsoap-plugin-theora, liquidsoap-plugin-voaacenc, liquidsoap-plugin-vorbis, - liquidsoap-plugin-xmlplaylist + liquidsoap-plugin-xmlplaylist, + ${misc:Depends} Description: audio streaming language -- all plugins Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -164,10 +166,10 @@ Description: audio streaming language -- all plugins Package: liquidsoap-plugin-alsa Architecture: linux-any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- ALSA plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -181,10 +183,10 @@ Description: audio streaming language -- ALSA plugin Package: liquidsoap-plugin-ao Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- AO plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -198,10 +200,10 @@ Description: audio streaming language -- AO plugin Package: liquidsoap-plugin-camlimages Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Camlimages plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -216,11 +218,11 @@ Description: audio streaming language -- Camlimages plugin Package: liquidsoap-plugin-dssi Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, - ${misc:Depends}, liquidsoap (= ${binary:Version}), - liquidsoap-plugin-ladspa (= ${binary:Version}) + liquidsoap-plugin-ladspa (= ${binary:Version}), + ${misc:Depends}, + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- DSSI plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -234,10 +236,10 @@ Description: audio streaming language -- DSSI plugin Package: liquidsoap-plugin-faad Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- FAAD plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -251,11 +253,11 @@ Description: audio streaming language -- FAAD plugin Package: liquidsoap-plugin-flac Architecture: any Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- FLAC plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -269,11 +271,11 @@ Description: audio streaming language -- FLAC plugin Package: liquidsoap-plugin-gavl Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Gavl plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -287,11 +289,12 @@ Description: audio streaming language -- Gavl plugin Package: liquidsoap-plugin-gd Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) -Recommends: fonts-liberation + ${ocaml:Depends}, + ${shlibs:Depends} +Recommends: + fonts-liberation Description: audio streaming language -- libgd plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -306,11 +309,11 @@ Description: audio streaming language -- libgd plugin Package: liquidsoap-plugin-graphics Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Graphics plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -324,28 +327,28 @@ Description: audio streaming language -- Graphics plugin Package: liquidsoap-plugin-gstreamer Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- GStreamer plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). . It consists of a simple script language, in which you can create, combine and transform audio sources. Its design makes liquidsoap flexible and easily - extensible. + extensible. . This package provides support for operators using GStreamer. Package: liquidsoap-plugin-frei0r Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Frei0r plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -359,10 +362,10 @@ Description: audio streaming language -- Frei0r plugin Package: liquidsoap-plugin-icecast Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Icecast plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -376,10 +379,10 @@ Description: audio streaming language -- Icecast plugin Package: liquidsoap-plugin-jack Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- JACK plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -392,11 +395,11 @@ Description: audio streaming language -- JACK plugin Package: liquidsoap-plugin-ladspa Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- LADSPA plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -410,10 +413,10 @@ Description: audio streaming language -- LADSPA plugin Package: liquidsoap-plugin-lame Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Lame plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -426,12 +429,12 @@ Description: audio streaming language -- Lame plugin Package: liquidsoap-plugin-lastfm Architecture: any -Depends: +Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-xmlplaylist (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Lastfm plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -446,10 +449,10 @@ Description: audio streaming language -- Lastfm plugin Package: liquidsoap-plugin-lo Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- LO plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -462,11 +465,11 @@ Description: audio streaming language -- LO plugin Package: liquidsoap-plugin-mad Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Mad plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -479,11 +482,11 @@ Description: audio streaming language -- Mad plugin Package: liquidsoap-plugin-ogg Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Ogg plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -492,18 +495,18 @@ Description: audio streaming language -- Ogg plugin transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for Ogg stream decoding and encoding in + This package provides support for Ogg stream decoding and encoding in Liquidsoap. This plugin is only useful when used with one of vorbis, speex, flac, theora or schroedinger plugin. Package: liquidsoap-plugin-opus Architecture: any Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Opus plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -518,10 +521,10 @@ Description: audio streaming language -- Opus plugin Package: liquidsoap-plugin-oss Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- OSS plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -534,11 +537,11 @@ Description: audio streaming language -- OSS plugin Package: liquidsoap-plugin-portaudio Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Portaudio plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -551,11 +554,11 @@ Description: audio streaming language -- Portaudio plugin Package: liquidsoap-plugin-pulseaudio Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Pulseaudio plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -568,11 +571,11 @@ Description: audio streaming language -- Pulseaudio plugin Package: liquidsoap-plugin-samplerate Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Samplerate plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -581,16 +584,16 @@ Description: audio streaming language -- Samplerate plugin transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for audio samplerate conversion using + This package provides support for audio samplerate conversion using libsamplerate in Liquidsoap. Package: liquidsoap-plugin-schroedinger Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Schroedinger plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -605,11 +608,12 @@ Description: audio streaming language -- Schroedinger plugin Package: liquidsoap-plugin-sdl Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) -Recommends: fonts-liberation + ${ocaml:Depends}, + ${shlibs:Depends} +Recommends: + fonts-liberation Description: audio streaming language -- SDL plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -623,10 +627,10 @@ Description: audio streaming language -- SDL plugin Package: liquidsoap-plugin-shine Architecture: any Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Shine plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -640,11 +644,11 @@ Description: audio streaming language -- Shine plugin Package: liquidsoap-plugin-soundtouch Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Soundtouch plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -653,17 +657,17 @@ Description: audio streaming language -- Soundtouch plugin transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for audio manipulation using libsoundtouch + This package provides support for audio manipulation using libsoundtouch in Liquidsoap. Package: liquidsoap-plugin-speex Architecture: any Depends: - liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, + liquidsoap (= ${binary:Version}), + liquidsoap-plugin-ogg (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Speex plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -677,11 +681,11 @@ Description: audio streaming language -- Speex plugin Package: liquidsoap-plugin-taglib Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Taglib plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -690,17 +694,17 @@ Description: audio streaming language -- Taglib plugin transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for file metadata reading using taglib in + This package provides support for file metadata reading using taglib in Liquidsoap. Package: liquidsoap-plugin-theora Architecture: any -Depends: +Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Theora plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -709,16 +713,16 @@ Description: audio streaming language -- Theora plugin transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for ogg/theora video decoding and encoding + This package provides support for ogg/theora video decoding and encoding in Liquidsoap. Package: liquidsoap-plugin-voaacenc Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Voaacenc plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -731,12 +735,12 @@ Description: audio streaming language -- Voaacenc plugin Package: liquidsoap-plugin-vorbis Architecture: any -Depends: +Depends: + liquidsoap (= ${binary:Version}), liquidsoap-plugin-ogg (= ${binary:Version}), - ${shlibs:Depends}, - ${ocaml:Depends}, ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Vorbis plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -745,16 +749,16 @@ Description: audio streaming language -- Vorbis plugin transform audio sources. Its design makes liquidsoap flexible and easily extensible. . - This package provides support for ogg/vorbis audio decoding and encoding + This package provides support for ogg/vorbis audio decoding and encoding in Liquidsoap. Package: liquidsoap-plugin-xmlplaylist Architecture: any -Depends: - ${shlibs:Depends}, - ${ocaml:Depends}, +Depends: + liquidsoap (= ${binary:Version}), ${misc:Depends}, - liquidsoap (= ${binary:Version}) + ${ocaml:Depends}, + ${shlibs:Depends} Description: audio streaming language -- Xmlplaylist plugin Liquidsoap is a powerful tool for building complex audio streaming systems, typically targeting internet radios (e.g. icecast streams). @@ -767,8 +771,12 @@ Description: audio streaming language -- Xmlplaylist plugin Package: liguidsoap Architecture: all -Depends: ${python:Depends}, ${misc:Depends}, python-gtk2 -Recommends: liquidsoap (= ${binary:Version}) +Depends: + python-gtk2, + ${misc:Depends}, + ${python:Depends} +Recommends: + liquidsoap (= ${binary:Version}) Description: control GUI for liquidsoap Liguidsoap is a GUI for controlling liquidsoap, using pyGTK. . @@ -780,11 +788,13 @@ Description: control GUI for liquidsoap . It can control a running instance of liquidsoap or launch its own instance. - Package: liquidsoap-mode Architecture: all -Depends: ${misc:Depends}, emacsen-common -Suggests: liquidsoap +Depends: + emacsen-common, + ${misc:Depends} +Suggests: + liquidsoap Section: editors Description: Emacs mode for editing Liquidsoap code Liquidsoap is a powerful tool for building complex audio streaming systems, diff --git a/debian/liguidsoap.install b/debian/liguidsoap.install index 1fde12d..50eb892 100644 --- a/debian/liguidsoap.install +++ b/debian/liguidsoap.install @@ -1,4 +1,4 @@ -debian/tmp/usr/bin/liguidsoap -debian/tmp/usr/lib/python*/site-packages/liquidsoap/* var/lib/liguidsoap debian/icons/* usr/share/pixmaps debian/liguidsoap.desktop usr/share/applications +debian/tmp/usr/bin/liguidsoap +debian/tmp/usr/lib/python*/site-packages/liquidsoap/* var/lib/liguidsoap diff --git a/debian/liquidsoap.dirs b/debian/liquidsoap.dirs index 4727b97..ef51ca1 100644 --- a/debian/liquidsoap.dirs +++ b/debian/liquidsoap.dirs @@ -1,3 +1,3 @@ -usr/bin etc/init.d +usr/bin var/log/liquidsoap -- 2.7.0.rc3
From e1104457bfaa5e1ae3e3e7f5dd29526408dc0ac8 Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 13:07:43 +0000 Subject: [PATCH 5/7] Build using dh-python2 instead of python-support Closes: #786026 --- debian/control | 2 +- debian/rules | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/debian/control b/debian/control index 1b07662..968daa6 100644 --- a/debian/control +++ b/debian/control @@ -10,6 +10,7 @@ Build-Depends: debhelper (>= 7.0.1), dh-autoreconf, dh-ocaml (>= 1.0.1), + dh-python, festival, fonts-liberation, libalsa-ocaml-dev (>= 0.2.1) [linux-any], @@ -57,7 +58,6 @@ Build-Depends: ocaml-nox, python, python-gtk2-dev, - python-support (>= 0.3), sox Standards-Version: 3.9.4 Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/liquidsoap.git diff --git a/debian/rules b/debian/rules index 740ac5b..077b32c 100755 --- a/debian/rules +++ b/debian/rules @@ -4,6 +4,8 @@ include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/class/autotools.mk include /usr/share/cdbs/1/rules/ocaml.mk +DEB_PYTHON2_MODULE_PACKAGES := liguidsoap + DEFAULT_FONT := /usr/share/fonts/truetype/ttf-liberation/LiberationSans-Regular.ttf DEB_CONFIGURE_EXTRA_FLAGS := \ @@ -73,7 +75,7 @@ binary-install/liquidsoap:: binary-install/liguidsoap:: sed -e s#/usr/lib/python.*/site-packages/liquidsoap#/var/lib/liguidsoap#g -i $(CURDIR)/debian/liguidsoap/usr/bin/liguidsoap - dh_pysupport /var/lib/liguidsoap + dh_python2 /var/lib/liguidsoap clean:: dh_autoreconf_clean -- 2.7.0.rc3
From f489205d271a733c290038e28b36cd14aa54960b Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 13:12:35 +0000 Subject: [PATCH 6/7] changelog for 1.1.1-7.1 --- debian/changelog | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/debian/changelog b/debian/changelog index 5a50fb8..e989207 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,14 @@ +liquidsoap (1.1.1-7.1) unstable; urgency=medium + + * Non-maintainer upload. + * Build-Depend and Recommend fonts-liberation instead of the transitive + ttf-liberation. + * Add patch from upstream to fix FTBFS. Closes: #802055 + * Run wrap-and-sort. + * Build using dh-python2 instead of python-support. Closes: #786026 + + -- Mattia Rizzolo <mattia@debian.org> Sun, 10 Jan 2016 13:11:54 +0000 + liquidsoap (1.1.1-7) unstable; urgency=medium * Patch shine encoder to adapt to new ABI. -- 2.7.0.rc3
From 406e56bafcbd8c911ef22c4b8d077d455e9f4176 Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo <mattia@debian.org> Date: Sun, 10 Jan 2016 13:23:32 +0000 Subject: [PATCH 7/7] remove /usr/share/liquidsoap on purge if it's empty. Closes: #668751 --- debian/changelog | 1 + debian/liquidsoap.postrm | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 debian/liquidsoap.postrm diff --git a/debian/changelog b/debian/changelog index e989207..1f89a3e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,7 @@ liquidsoap (1.1.1-7.1) unstable; urgency=medium * Add patch from upstream to fix FTBFS. Closes: #802055 * Run wrap-and-sort. * Build using dh-python2 instead of python-support. Closes: #786026 + * Remove /usr/share/liquidsoap on purge if it's empty. Closes: #668751 -- Mattia Rizzolo <mattia@debian.org> Sun, 10 Jan 2016 13:11:54 +0000 diff --git a/debian/liquidsoap.postrm b/debian/liquidsoap.postrm new file mode 100644 index 0000000..585b9d4 --- /dev/null +++ b/debian/liquidsoap.postrm @@ -0,0 +1,11 @@ +#! /bin/sh +# postrm script for liquidsoap +set -e + +if [ "$1" = "purge" ] && [ -d /usr/share/liquidsoap ]; then + if ! rmdir /usr/share/liquidsoap; then + echo "leaving /usr/share/liquidsoap in place" + fi +fi + +#DEBHELPER# -- 2.7.0.rc3
Attachment:
signature.asc
Description: PGP signature