NAME
mkpkgconfig - create pkg-config metadata files
VERSION
version v2.0.1
SYNOPSIS
mkpkgconfig options
DESCRIPTION
mkpkgconfig creates a pkg-config metadata (.pc) file. pkg-config variables and keywords are defined on the command line, variable dependencies are validated, and the configuration file is output. "Standard" variables (such as $libdir, $datadir) may be automatically created, and only variables which are used are output.
Variables and Keywords
pkg-config distinguishes between variables and keywords. Values for both may include interpolated variables, as in Cflags: -I ${include}.
Some commonly used variables have dedicated command line options:
--prefix : base prefix for paths
--package : filesystem compatible package name
--modversion : package version
(--modversion sets the version variable; the --version flag will output the version of mkpkgconfig).
--modversion is required. --prefix and --package may be required if a keyword requires them or --auto is set and auto-generated variables require it.
Common keywords also have dedicated options:
--Name
--Conflicts
--Description
--Requires
--Libs
--Cflags
--URL
The --Name and --Description options are required. The Version keyword is automatically set to ${version}. It is not possible to set it directly from the command line.
Other variables and keywords may be specified via the --var and --kwd options, respectively:
--var name=value
--kwd name=value
which may be used more than once.
Automatically Generated Variables
mkpkgconfig can automatically generate a number of "standard" variables, such as bindir, libdir, etc, based upon the prefix variable. Use the "--list-auto" option to output a list of these variables.
OPTIONS
General Options
- --output
-
Where the configuration file is to be written. It defaults to the standard output stream.
- --usevars
all|requested|needed -
Which variables should be output. It defaults to
needed.all-
output all variables, needed or not, including automatically generated ones if
--autowas specified; requested-
output only requested variables (via-
-var variable=valueor--auto=variable,...) and keyword dependencies; needed-
output only those variables actually used by keywords
Variables
--varname=value-
Set the variable named name to value.
--prefixvalue-
Set the
prefixvariable. --packagevalue-
Set the
packagevariable --modversionvalue-
Set the
versionvalue --auto--autolist of variables-
Generate a set of variables. Use
--list-autoto see what is generated.If passed a list of variable names, those will be output if
--usevarsis set torequested.Individual variables may be overriden using
--var. --list-auto-
Output a list of the automatically generated keywords and exit.
Keywords
--kwdname=value-
Set the keyword named name to value.
--Namevalue--namevalue-
Set the Name keyword. This parameter is required.
--Descriptionvalue--descriptionvalue-
Set the Description keyword. This parameter is required.
--Requiresvalue--requiresvalue-
Set the Requires keyword.
--Conflictsvalue--conflictsvalue-
Set the Conflicts keyword.
--Libsvalue--libsvalue-
Set the Libs keyword.
--Cflagsvalue--cflagsvalue-
Set the Cflags keyword.
Miscellaneous
- --version
-
Output the version of mkpkgconfig and exit.
- --help
-
Output a short help message and exit.
- --manual
-
Output the manual and exit.
SUPPORT
Bugs
Please report any bugs or feature requests to bug-app-mkpkgconfig@rt.cpan.org or through the web interface at: https://rt.cpan.org/Public/Dist/Display.html?Name=App-mkpkgconfig
Source
Source is available at
https://gitlab.com/djerius/app-mkpkgconfig
and may be cloned from
https://gitlab.com/djerius/app-mkpkgconfig.git
AUTHOR
Diab Jerius <djerius@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2020 by Smithsonian Astrophysical Observatory.
This is free software, licensed under:
The GNU General Public License, Version 3, June 2007