Source: @GST_PKGNAME@
Section: libs
Priority: optional
Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org>
Uploaders: Loic Minier <lool@dooz.org>,
           Sebastien Bacher <seb128@debian.org>,
           Sebastian Dröge <slomo@debian.org>,
           Sjoerd Simons <sjoerd@debian.org>
Build-Depends: debhelper (>= 8.1.3~),
               cdbs (>= 0.4.93~),
               gnome-pkg-tools (>= 0.7),
               autotools-dev,
               dh-autoreconf,
               autopoint,
               libxml2-dev (>= 2.6.0),
               zlib1g-dev (>= 1:1.1.4),
               libglib2.0-dev (>= 2.26),
               libgmp3-dev,
               libgsl0-dev,
               pkg-config (>= 0.11.0),
               bison (>= 1.875),
               flex (>= 2.5.34),
               dpkg-dev (>= 1.15.1),
               perl-doc,
               libgirepository1.0-dev (>= 0.9.12-4~),
               gobject-introspection (>= 0.9.12-4~),
               gir1.2-glib-2.0,
               gir1.2-freedesktop
Build-Depends-Indep: python (>= 2.2),
                     gtk-doc-tools (>= 0.7),
                     jade (>= 1.2.1),
                     transfig (>= 3.2.3.c),
                     docbook-utils (>= 0.6.9),
                     docbook-xml,
                     docbook-xsl,
                     xsltproc (>= 1.0.21),
                     ghostscript,
                     xmlto,
                     netpbm,
                     libxml2-doc,
                     libglib2.0-doc
Standards-Version: 3.8.4
Homepage: http://gstreamer.freedesktop.org

Package: @GST_LIB@
Architecture: any
Multi-Arch: same
Section: libs
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends},
         ${misc:Depends}
Suggests: @GST_PKGNAME@-tools,
          @GST_PKGNAME@-plugins-base
Description: Core GStreamer libraries and elements
 GStreamer is a streaming media framework, based on graphs of filters
 which operate on media data.  Applications using this library can do
 anything from real-time sound processing to playing videos, and just
 about anything else media-related.  Its plugin-based architecture means
 that new data types or processing capabilities can be added simply by
 installing new plug-ins.
 .
 This package contains the core library and elements.

Package: @GST_LIB@-dbg
Architecture: any
Multi-Arch: same
Section: debug
Priority: extra
Depends: @GST_LIB@ (= ${binary:Version}),
         ${misc:Depends}
Description: Core GStreamer libraries and elements
 GStreamer is a streaming media framework, based on graphs of filters
 which operate on media data.  Applications using this library can do
 anything from real-time sound processing to playing videos, and just
 about anything else media-related.  Its plugin-based architecture means
 that new data types or processing capabilities can be added simply by
 installing new plug-ins.
 .
 This package contains unstripped shared libraries. It is provided primarily
 to provide a backtrace with names in a debugger, this makes it somewhat
 easier to interpret core dumps. The libraries are installed in
 /usr/lib/debug and are automatically used by gdb.

Package: @GST_LIB_DEV@
Architecture: any
Section: libdevel
Depends: @GST_LIB@ (= ${binary:Version}),
         libc6-dev | libc-dev,
         pkg-config,
         libglib2.0-dev,
         libxml2-dev,
         ${shlibs:Depends},
         ${misc:Depends},
         gir1.2-gstreamer-@GST_ABI@ (= ${binary:Version})
Recommends: debhelper
Suggests: @GST_PKGNAME@-doc
Description: GStreamer core development files
 GStreamer is a streaming media framework, based on graphs of filters
 which operate on media data.  Applications using this library can do
 anything from real-time sound processing to playing videos, and just
 about anything else media-related.  Its plugin-based architecture means
 that new data types or processing capabilities can be added simply by
 installing new plug-ins.
 .
 This package contains development files for the core library and
 elements.

Package: @GST_PKGNAME@-doc
Architecture: all
Section: doc
Depends: ${misc:Depends},
         libxml2-doc,
         libglib2.0-doc
Recommends: @GST_LIB_DEV@ (= ${source:Version})
Description: GStreamer core documentation and manuals
 GStreamer is a streaming media framework, based on graphs of filters
 which operate on media data.  Applications using this library can do
 anything from real-time sound processing to playing videos, and just
 about anything else media-related.  Its plugin-based architecture means
 that new data types or processing capabilities can be added simply by
 installing new plug-ins.
 .
 This package contains documentation for core libraries and elements as
 well as:
  * the GStreamer Manual
  * the GStreamer Plugin Writers Guide
  * Various API docs

Package: @GST_PKGNAME@-tools
Architecture: any
Section: utils
Depends: ${shlibs:Depends},
         ${misc:Depends},
         pkg-config,
         @GST_LIB@ (>= @GST_VERSION@)
Suggests: @GST_PKGNAME@-plugins-base
Description: Tools for use with GStreamer
 GStreamer is a streaming media framework, based on graphs of filters
 which operate on media data.  Applications using this library can do
 anything from real-time sound processing to playing videos, and just
 about anything else media-related.  Its plugin-based architecture means
 that new data types or processing capabilities can be added simply by
 installing new plug-ins.
 .
 This package contains versioned command-line tools for GStreamer.

Package: gir1.2-gstreamer-@GST_ABI@
Section: introspection
Architecture: any
Depends: ${gir:Depends},
         ${shlibs:Depends},
         ${misc:Depends},
         ${gir:Depends}
Description: Description: GObject introspection data for the GStreamer library
 This package contains introspection data for the GStreamer streaming media
 framework.
 .
 GStreamer is a streaming media framework, based on graphs of filters
 which operate on media data.  Applications using this library can do
 anything from real-time sound processing to playing videos, and just
 about anything else media-related.  Its plugin-based architecture means
 that new data types or processing capabilities can be added simply by
 installing new plug-ins.
 .
 It can be used by packages using the GIRepository format to generate
 dynamic bindings.

