7.7. Relationships between source and binary packages - Build-Depends, Build-Depends-Indep, Build-Depends-Arch, Build-Conflicts, Build-Conflicts-Indep, Build-Conflicts-Arch

Source packages that require certain binary packages to be installed or absent at the time of building the package may declare relationships to those binary packages.

This is done using the Build-Depends, Build-Depends-Indep, Build-Depends-Arch, Build-Conflicts, Build-Conflicts-Indep and Build-Conflicts-Arch control fields.

Build-dependencies on “build-essential” binary packages can be omitted. Please see Package relationships for more information.

The dependencies and conflicts they define must be satisfied (as defined earlier for binary packages) in order to invoke the targets in debian/rules, as follows:

clean

Only the Build-Depends and Build-Conflicts fields must be satisfied when this target is invoked.

build-arch, and binary-arch

The Build-Depends, Build-Conflicts, Build-Depends-Arch, and Build-Conflicts-Arch fields must be satisfied when these targets are invoked.

build-indep, and binary-indep

The Build-Depends, Build-Conflicts, Build-Depends-Indep, and Build-Conflicts-Indep fields must be satisfied when these targets are invoked.

build and binary

The Build-Depends, Build-Conflicts, Build-Depends-Indep, Build-Conflicts-Indep, Build-Depends-Arch, and Build-Conflicts-Arch fields must be satisfied when these targets are invoked.