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 (>= 7),
               cdbs (>= 0.4.20),
               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.22),
               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
Section: libs
Depends: ${shlibs:Depends},
         ${misc:Depends}
Suggests: @GST_PKGNAME@-tools,
          @GST_PKGNAME@-plugins-base
Conflicts: libgstreamer-plugins-base0.10-0 (<< 0.10.11cvs20070110-0ubuntu5),
           gstreamer0.10-plugins-base (<< 0.10.25.2)
Replaces: gobject-introspection-repository (<< 0.6.5-2)
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
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})
Replaces: gstreamer-tools (<< 0.10.20-2),
          gobject-introspection-repository (<< 0.6.5-2)
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: gstreamer-tools
Architecture: any
Section: utils
Depends: ${shlibs:Depends},
         ${misc:Depends},
         gstreamer0.10-tools | gstreamer0.8-tools
Conflicts: gstreamer0.8-tools (<< 0.8.11-2)
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 unversioned command-line tools for GStreamer
 that work with different major/minor versions of GStreamer.

Package: gir1.2-gstreamer-@GST_ABI@
Section: libs
Architecture: any
Depends: ${gir:Depends},
         ${shlibs:Depends},
         ${misc:Depends},
         ${gir:Depends}
Conflicts: gir1.0-gstreamer-@GST_ABI@
Replaces: @GST_LIB@ (<< 0.10.25-3),
          gobject-introspection-repository (<< 0.6.5-2),
          gir1.0-gstreamer-@GST_ABI@
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.

