Changeset View
Changeset View
Standalone View
Standalone View
release/packages/ucl/README
| Show All 13 Lines | |||||
| All of these packages will include "foo-all.ucl", but "foo.ucl" will only be | All of these packages will include "foo-all.ucl", but "foo.ucl" will only be | ||||
| included by FreeBSD-foo, "foo-dev.ucl" will only be included by FreeBSD-foo-dev, | included by FreeBSD-foo, "foo-dev.ucl" will only be included by FreeBSD-foo-dev, | ||||
| and so on. | and so on. | ||||
| In general, dependencies and post-install scripts should be added in the | In general, dependencies and post-install scripts should be added in the | ||||
| package-specific manifests, while comment and description should be set | package-specific manifests, while comment and description should be set | ||||
| in the "-all" manifest. | in the "-all" manifest. | ||||
| Policies for package dependencies: | |||||
| * If a package requires a shared library from another package, do not add a | |||||
| dependency, unless pkg(8) doesn't detect the dependency automatically for | |||||
| some reason (which may happen if the library is loaded with dlopen() at | |||||
| runtime). | |||||
| * If a package contains rc(8) scripts, do not add a dependency on "rc". | |||||
| Installing "rc" is optional. | |||||
| * If a package contains hooks intended to be invoked from devd, do not add | |||||
| a dependency on "devd". Like rc, devd is optional. The exception is if | |||||
| the package doesn't work at all without devd, in which case a dependency | |||||
| is warranted. | |||||
| * If a package contains cron(8) jobs in /etc/cron.d, do not a dependency | |||||
| on "cron", unless the package doesn't work at all without cron. | |||||
| * If a package contains periodic(8) reports, do not add a dependency on | |||||
| "periodic", unless the package only contains periodic reports. | |||||
| * If a package contains shell scripts, and the script is *not* one of the | |||||
| previously mentioned examples (rc, devd, etc.), add a dependency on | |||||
| "runtime" for /bin/sh. | |||||
| * Otherwise, if one component of a package requires another package to work, | |||||
| add a dependency on the other package even if not everything in the package | |||||
| requires that dependency. Users expect that all of a package will work | |||||
| after installing it. | |||||