NAME
mkfbsdmnfst —
manipulates a FreeBSD
package manifest file (+MANIFEST).
SYNOPSIS
| mkfbsdmnfst |
[-n name]
[-v version]
[-o origin]
[-c comment]
[-d desc]
[-g group]
[-w website]
[-m
maintainer]
[-p prefix]
[-r
manifest_file]
[-u user]
directory |
DESCRIPTION
mkfbsdmnfst manipulates a FreeBSD package manifest file
(+MANIFEST). It may be used when creating software packages for FreeBSD.
Optional arguments
- -n name
- Sets the name of the package
in the manifest to name. A package name is required, but may be
specified inside a manifest_file used in the -r
manifest_file argument instead of -n name.
- -v version
- Sets the version of the
package in the manifest to version. A package version is required,
but may be specified inside a manifest_file used in the -r
manifest_file argument instead of -n name.
- -o origin
- Sets the origin of the package
in the manifest to origin.
- -c comment
- Sets the package comment in
the manifest to comment.
- -d desc
- Sets the package description
in the manifest to desc.
- -g group
- Sets the package group in the
manifest to group.
- -w website
- Sets the package's website in
the manifest to website.
- -m maintainer
- Sets the package's maintainer
in the manifest to maintainer.
- -p prefix
- Sets the package's prefix in
the manifest to prefix.
- -r manifest_file
- Uses the given
manifest_file as input. This is typically used as a template type
of input, or created as part of a software build process and then added to
with command line arguments.
- -u user
- Sets the default owner of the
files installed by the package to user. This is typically
root.
Required arguments
- directory
- The directory is
traversed recursively and all files within are added to the package in the
manifest.
AUTOMATIC DEPENDENCIES
mkfbsdmnfst(1) will try to
automatically determine dependencies and add them to the manifest by looking
at files in bin, sbin and lib directories in
directory. In addition, if
it finds a dependency in your template
manifest_file whoise version is
incorrect, it will correct it.
EXAMPLES
A simple example might start with a
template_mnfst file:
name: "foo"
version: "0.1.0"
origin: "devel/libfoo"
prefix: "/usr/local"
www: "http://www.foo.bar"
maintainer: "someone@foo.bar"
comment: "foo library"
desc: "Miscellaneous C functions."
licenselogic: "single"
licenses: ["BSD"]
categories: ["devel"]
Assuming you have all of the files for the package in ./staging/usr/local, you
might then create your manifest file with:
mkfbsdmnfst -r template_mnfst ./staging > ./staging/+MANIFEST
And then create the package with:
pkg create -o . -r staging -m staging
REAL EXAMPLES
mkfbsdmnfst(1) is part of
the the libDwm package. libDwm uses uses
mkfbsdmnfst(1) when
creating the libDwm package for FreeBSD. See the top-level Makefile and
packaging/fbsd_manifest.in inside the libDwm source distribution.
Other packages using
mkfbsdmnfst(1) as part of
the packaging process include libDwmAuth, libDwmPf, libDwmRDAP, mcblock and
mcflow.
SEE ALSO
fbsddeps(1),
pkg-create(8)
Manpage Index
AUTHORS
Copyright (c) 2016 Daniel W. McRobb
dwm@mcplex.net