blob: e316488e344bf17ab3471e41746f24acc6372c83 [file] [log] [blame]
Hacking GStreamer for Debian
============================
An addition to the README.Debian that has Debian package hacking notes.
Everything should now be versioned.
- To update dependencies edit debian/build-deps.in
- To rebuild package files from .in files:
debian/rules maint
- After a version update to check for missing files run:
debian/maint missing
debian/maint missing-libs
debian/maint missing-so
- To update package files edit gstreamer-foo then rebuild package files. This
will generate the gstreamerX.Y-foo file. Also update debian/rules and
debian/control.in as needed.
- The packaging tries to stay close of upstream choice. gstreamerX.Y-misc has
most of the files, extra packages are made for the sinks and by group of
depends (gnome, x, ...)
- Provide gstreamerX.Y-videosink and gstreamerX.Y-audiosink as needed.
- All interfaces and generic libraries go in libgstreamer-plugins, libraries
with external dependencies have their own package such as libgstreamer-gconf.
- Applications go in gstreamerX.Y-plugins-base-apps
File listing
------------
build-deps:
- generated from "build-deps.in" in "rules
debian/build-deps:":
* "build-deps.in" lists build-depends for Debian main packages
- serves generation with "control.in" and "mk.control" of "control" in
"rules debian/control::"
build-deps.in:
- lists build-depends for Debian main packages
- serves generation with "extra deps" of "build-deps" in "rules
debian/build-deps:"
changelog: handled classically
compat: handled classically
control:
- generated for "rules maint"
- generated from "control.in" and "build-deps" in "rules debian/control::":
* "build-deps" lists build-depends to be inserted in "control
Build-Depends:"
* "control.in" serves of template for package descriptions of Debian main
packages and makes use of special stanzas enclosed in "@" such as
"@GST_ABI" which are replaced via sed in "rules debian/control::"
control.in:
- serves generation of "control" in "rules debian/control::" via "mk.control"
called in "rules debian/control::"
- template for package descriptions of Debian main packages and makes use of
special stanzas enclosed in "@" such as "@GST_ABI" which are replaced via
sed in "rules debian/control::"
copyright: handled classically
gstreamer-$plugin.install:
- serves the generation of $gst_pkgname-$plugin.install (for example
gstreamer-alsa.install serves the generation of gstreamerX.Y-alsa.install) in
"rules pre-build::" via dynamic "@"-enclosed variables replacement
- some plugins are handled specially and some special variables are available
gstreamer-plugins-base-apps.install: this isn't really a plugin, but the
gstreamerX.Y-plugins-base-apps package
gstreamer-plugins-base-apps.manpages: man pages for the gstreamerX.Y-plugins-base-apps
package
HACKING.Debian: this file
libgstreamer-plugins-base-dev.install libgstreamer-plugins-base.install: handled similarly has gstreamerX.Y-plugins-base-apps
maint: makefile wrapping some targets of "rules" with some sh filtering
mk.control:
- Perl script serving the generation of "control" which reads "build-deps"
and "control.in", and replaces the "BUILDDEPS" stanza with the build-deps
patches: handled classically
README.Debian: handled classically
rules: handled classically, with special targets "maint:", and
"debian/build-deps:"
watch: handled classically
This file is the initial work of:
David I. Lehn <dlehn@debian.org> Tue, 13 Apr 2004 21:28:55 -0400
and had some additions by:
Loic Minier <lool@dooz.org> Sun, 19 Jun 2005 19:04:58 +0200
Sebastien Bacher <seb128@debian.org> Wed, 14 Dec 2005 17:00:21 +0100