Deb files have a "control" file with a set of fields that contain the dependency data:
Each field list a set of packages separated with comma (","). Where a dependency is either one of more packages, each option is separated with a bar ("|").
Depends: libc6 (>= 2.2.1), exim | mail-transport-agent |
In addition Deb support a "virtual package" concept where more than one package can "implement" a package name. This give the user an option to choose an implementation when a package installed.
For example, both "openjdk", "sun-jdk" and "gcj" may packages may Provide "java".
Deb also has a "Replaces" flag with two purposes:
Reference: http://rpm5.org/docs/rpm-guide.html#ch-dependencies
UMP |
Dependency |
Recommends |
Suggests |
Pre-Depends |
Provides |
Conflict With |
Deb |
Depends |
Recommends |
Suggests |
Pre-Depends |
Provides |
|
Rpm |
Requires |
|
|
|
%provides |
%conflicts |
provides defines a virtual package which is provided by the package being built
requires identifies a package that is required to be installed for the package being built to operate correctly
conflicts