other versions
- jessie 0.10.4-1
| PMKFILE(5) | File Formats Manual | PMKFILE(5) |
NAME¶
pmkfile —
pmk specification file
DESCRIPTION¶
pmkfile is a file containing specifications
that help configuring a package build on a given platform.
SYNTAX¶
See pmksyntax.5 to have an overview of the basic syntax of pmkfiles.SPECIFIC COMMANDS¶
The following commands have no label.SETTINGS- This command sets pmk parameters.
Arguments:
For example:
SETTINGS { AC_COMPAT="config.h" LANG="C" TARGET=("src/file.c","src/file.h") DETECT=("CC") } DEFINE- This command permits to define variables.
Arguments:
For example:
Those are the variables to be defined (quote data type only).DEFINE { PACKAGE="my_prog" VERSION="0.1" } SWITCHES- This command is setting dependency switches (see further DEPEND
definition).
Arguments:
For example:
SWITCHES { use_curses=TRUE use_gtk=FALSE }
STANDARD COMMANDS¶
All these commands need a label. They can all have the following optional arguments:REQUIRED- Specify if this test is required to achieve the configuration. Type is 'bool'. If not specified, it is TRUE by default.
DEPEND- Specify check dependencies. Type is 'list'. A dependency is a label or a
switch name. The value of each dependency can be negated by adding a
leading '!' sign. If at least one of the dependencies is false then the
check will be disabled.
For example:
DEPEND = ("header_gtk","!header_qt") DEFS- Specify additional defines. Type is 'list'. If the check succeeds then the given defines are also recorded else they are ignored.
LANG- Specify the language used in the following list:
C,C++
CHECK_BINARY- Check if a binary is in the path. Arguments:
CHECK_HEADER- Check language header and optionally a function.
Arguments:
REQUIREDDEPENDDEFSLANGNAME- type is 'quoted', name of the header.
MACRO- type is 'list', list of one or more compiler macros to check, optional.
FUNCTION- type is 'quoted' or 'list', name or list of functions to check, optional.
CFLAGS- type is 'quoted', variable name to store CFLAGS values, optional.
SUBHDR- type is 'list', list of header dependencies, optional.
CHECK_LIB- Check a library and optionally a function. Arguments:
CHECK_CONFIG- Check using a *-config tool.
Arguments:
REQUIREDDEPENDDEFSNAME- type is 'quoted', config tool name.
VERSION- type is 'quoted', minimal version needed, optional.
CFLAGS- type is 'quoted', variable name to store CFLAGS values, optional.
LIBS- type is 'quoted', variable name to store LIBS values, optional.
VARIABLE- type is 'quoted', variable name to store the path of the config tool, optional.
CHECK_PKG_CONFIG- Check a package using pkg-config. Arguments:
CHECK_TYPE- Check if the given type exists. Arguments:
CHECK_VARIABLE- Check if the given variable does exist and optionally its value. Arguments:
CONDITIONAL COMMANDS¶
IF(expression)- It contains other commands that will be executed only if the given
expression is true.
Arguments:
For example:
IF(header_gtk) { DEFINE { HAVE_GTK = "1" } } ELSE(expression)- It contains other commands that will be executed only if the given
expression is false.
Arguments:
For example:
ELSE(header_glib) { DEFINE { HAVE_GLIB = "0" } }
LIBRARY NAME BUILDING¶
BUILD_LIB_NAME- This command helps you to build static and/or shared library name(s)
depending on the rules of the host operanding system.
Arguments:
For example:
NAME- type is 'quoted', name of the library (without leading 'lib').
MAJOR- type is 'quoted', major number for the version, optional.
MINOR- type is 'quoted', minor number for the version, optional.
SHARED- type is 'quoted', variable that will be set with the shared library name, optional.
STATIC- type is 'quoted', variable that will be set with the static library name, optional.
VERSION- type is 'boolean', boolean value for library version processing , optional.
BUILD_LIB_NAME { NAME = "test" STATIC = "TESTLIB_STATIC" SHARED = "TESTLIB_SHARED" MAJOR = "0" MINOR = "2" VERSION = TRUE }
BUILD_SHLIB_NAME- This command has been obsoleted by the BUILD_LIB_NAME command.
SEE ALSO¶
pmk(1), pmkscan(1), pmksyntax.5| April 27, 2003 | Debian |