embug

Langue: en

Version: Sun 11 Jan 2009 19:55:45 GMT (debian - 07/07/09)

Section: 1 (Commandes utilisateur)

NAME

embug - Track Emdebian cross-building bugs from within package builds.

SYNOPSIS

embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [[-f] | [--flag]]
embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [[-g] | [--get-number]]
embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [[-r] | [--remove]]
embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [[-d] | [--debian]]
embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [[-o] | [--outdated]]
embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [--lintian]
embug [[-p] | [--package] PACKAGE] [[-v] | [--verbose]] [[-q] | [--quiet]] [--failed]
embug [[-v] | [--verbose]] [[-q] | [--quiet]] [[-l] | [--list]]
embug [[-v] | [--verbose]] [[-q] | [--quiet]] [--list-bugs]
embug [[-v] | [--verbose]] [[-q] | [--quiet]] [--list-newer]
embug [[-v] | [--verbose]] [[-q] | [--quiet]] [[--prepare]]
embug [[-v] | [--verbose]] [[-q] | [--quiet]] [[-u] | [--update]]
embug [[-v] | [--verbose]] [[-q] | [--quiet]] [[-m] | [--missing]]
embug [[-?] | [-h] | [--help] | [--version]]

DESCRIPTION

embug

helps track cross-building bugs when preparing Emdebian builds. When trying to prepare a package set, it can be easy to lose track of which packages need to have changes within Debian to support cross-building. embug also keeps track of current crossbuilt bugs using SOAP.

COMMANDS

-f|--flag

Mark the current package as needing a cross-building bug report.

-g|--get-number

Output the bug number for the cross-building bug filed against the current package, if any.

-r|--remove

In case of error, --remove removes the flag - providing no bug report has been filed in the meantime. Use -p to specify a package name outside the source directory of the package itself. (Alternatively, just edit ~/.apt-cross/embug.)

--lintian

lintian support in emdebian-tools uses a specialised set of Emdebian-only checks that supplement or replace the standard Debian check sets. See m[blue]http://wiki.debian.org/EmdebianPolicym[].
To check an Emdebian package only for compliance with Emdebian Policy use:
 $ lintian -C em $changes_file
           
 

(emsource, emdebuild and embuildstats use this mode.)

To check an Emdebian package as a standard Debian package (so that any upstream lintian warnings and errors show through):

 $ lintian -X man $changes_file
           
 

Once a few things are solved in lintian, the -X man will be dropped. Naturally, it is imperative that any Emdebian changes to lintian support do not impact on normal Debian builds. All these Emdebian lintian errors and warnings will remain within the emdebian-tools package so that Emdebian can update them whenever necessary.

Note that emdebuild and em_autobuild will expect lintian -C em $changes_file to return zero or the build will fail. i.e. lintian errors within the Emdebian check set are fatal and will cause a failure to build the package form source so this is a bit more strict than Debian. (Warnings are non fatal.) This has been done because the results of putting an amd64 ELF binary into /usr/bin on an ARM device are quite hard to debug, especially if that binary is part of the boot process.

-d|--debian

See FLAGS. Records that a newer version of this package exists in Debian.

-o|--outdated

See FLAGS. Records that at least one patch (except emdebian-changelog.patch) failed to apply.

--failed

Record that the package failed to crossbuild, despite the patches being applied correctly. This flag overrides all other flags except --outdated.

-l|--list

List the current set of cross-building bugs, including gaps where a patch needs to be prepared and a bug filed. Also lists the packages with outdated patches or newer versions in Debian.

--list-bugs

List the current set of cross-building bugs, including gaps where a patch needs to be prepared and a bug filed.

--list-newer

List the packages with outdated patches or newer versions in Debian.

-u|--update

Update the offline bug list using SOAP to query bugs.debian.org. If a bug is closed by the Debian maintainer, the report is removed from the offline cache.

-m|--missing

List only the source packages that have been flagged as needing bugs where no bug has yet been filed.

--prepare

Creates a temporary directory in ../../branches, copies the Debian and Emdebian source into the new directory and unpacks each, ready for you to use meld to prepare a patch to be filed against the Debian package. See m[blue] http://www.emdebian.org/emdebian/intro.html#filingm[][1]

-?|-h|--help

print the usage message and exit.

--version

print the usage message and exit.

OPTIONS

-p|--package

Specify a different package instead of looking for debian/control.

-v|--verbose

be verbose.

-q|--quiet

be quiet.

FLAGS

Various scripts within emdebian-tools set flags using embug based on cache data, build failures, lintian updates etc. The flags are set in a hierarchy:

--debian is the lowest priority - the package
      could still build cleanly in this state if it built cleanly last time and
      if the changes in the new version are unrelated to the Emdebian patches.
      .RE
--outdated is medium priority - a package
      has been updated in Debian and the current patches
      now fail to apply. This could be because a cross-building bug has been fixed,
      it could just be a change to a section of the file that is specified in the
      patch..RE
--lintian is the highest priority - the package
      requires work on the Emdebian patches to restore a clean build. Note that
      packages can fail on lintian even if the Debian package has not changed,
      dependent on changes within the lintian support in Emdebian. Packages must
      NOT be uploaded with lintian errors in the Emdebian
      check set - lintian errors from the standard Debian checks are ignored.
      .RE
--failed is a virtual priority - it is only
      set if the patches are up to date, otherwise most packages listed as
      "Failed" would just be failed patches. "Failed" also replaces "lintian"
      if the patches are up to date.
      .RE
Attempting to set a flag of lower priority than the currently set flag will silently fail, leaving the original flag in place.
Removing flags is not automated - use 'embug --remove --package $PACKAGE' to remove all flags once all issues are resolved.

FILES

embug stores the flags and offline SOAP results in ~/.apt-cross/embug.

AUTHOR

embug was written by Neil Williams codehelp@debian.org.

This manual page was written by Neil Williams codehelp@debian.org

SEE ALSO

See also emdebuild (1), empdebuild (1), emsource (1), emdebuild (1), emtargetcmp (1), dpkg-cross (1), emdebian-tools (1).

m[blue]General Introductionm[][2] to crossbuilding Debian.

AUTHOR

Emdebian

Neil Williams

Debian and Emdebian developer.

NOTES

1.
http://www.emdebian.org/emdebian/intro.html#filing
http://www.emdebian.org/emdebian/intro.html#filing
2.
General Introduction
http://www.emdebian.org/emdebian/intro.html