SCANFILE(5)

NAME
scanfile - pmkscan specification file

DESCRIPTION
scanfile is a file containing specifications that defines which sources are to be scanned and what to generate from the resulting data.

SYNTAX
See pmksyntax.5 to have an overview of the basic syntax of scanfiles.

COMMANDS

The available commands are the following :

GEN_PMKFILE
    This command specify a zone to scan and generate a pmkfile.

    Arguments:

    CFGNAME
        type is 'quoted', give the name of the template config file to use instead of the default one.

    DIRECTORY
        type is 'quoted', define the zone directory to scan.

    DISCARD
        type is 'list', list of directories to discard in recursive mode.

    EXTRATAG
        type is 'list', list of extra tags to add in template files.

    RECURSE
        type is 'bool', enable recursive scanning, default is FALSE.

    UNIQUE
        type is 'bool', enable unique resulting file instead of one for each directory. This is actually the default and only one method available (work in progress).

    For example:

        GEN_PMKFILE {
        	DIRECTORY = "."
        	RECURSE = TRUE
        	DISCARD = ("samples", "doc", "data", "man")
        	UNIQUE = TRUE
        }

GEN_MAKEFILE
    This command specify a zone to scan and generate a makefile.

    Arguments:

    DIRECTORY
        type is 'quoted', define the zone directory to scan.

    DISCARD
        type is 'list', list of directories to discard in recursive mode.

    EXTRATAG
        type is 'list', list of extra tags to add in template files.

    MKFNAME
        type is 'quoted', give the name of the template makefile to use instead of the default one.

    RECURSE
        type is 'bool', enable recursive scanning, default is FALSE.

    UNIQUE
        type is 'bool', enable unique resulting file instead of one for each directory. This is actually the default and only one method available (work in progress).

    For example:

        GEN_MAKEFILE {
        	DIRECTORY = "."
        	RECURSE = TRUE
        	DISCARD = ("samples", "doc", "tests")
        	MKFNAME = "Makefile.pmk"
        	UNIQUE = TRUE
        }

GEN_ZONE
    This command specify a zone to scan and what to generate.

    Arguments:

    CFGNAME
        type is 'quoted', give the name of the template config file to use instead of the default one.

    DIRECTORY
        type is 'quoted', define the zone directory to scan.

    DISCARD
        type is 'list', list of directories to discard in recursive mode.

    EXTRATAG
        type is 'list', list of extra tags to add in template files.

    PMKFILE
        type is 'bool', enable generation of a pmkfile

    MAKEFILE
        type is 'bool', enable generation of a makefile

    MKFNAME
        type is 'quoted', give the name of the template makefile to use instead of the default one.

    RECURSE
        type is 'bool', enable recursive scanning, default is FALSE.

    UNIQUE
        type is 'bool', enable unique resulting file instead of one for each directory. This is actually the default and only one method available (work in progress).

    For example:

        GEN_ZONE(main) {
        	DIRECTORY = "."
        	RECURSE = TRUE
        	DISCARD = ("samples", "doc", "tests")
        	PMKFILE = TRUE
        	MAKEFILE = TRUE
        	MKFNAME = "Makefile.pmk"
        	UNIQUE = TRUE
        }

DEF_LIB
    This command define library attributes.

    Arguments:

    NAME
        type is 'quoted', give the name of the library.

    VMAJ
        type is 'quoted', give the major version of the library.

    VMIN
        type is 'quoted', give the minor version of the library.

    LINKER
        type is 'quoted', define the relative language of the linker to be used.

    SOURCES
        type is 'list', list of the main sources which objects must be linked in the library.

    HEADERS
        type is 'list', list of library headers to be installed.

    For example:

        DEFINE_LIB {
        	NAME = "testc"
        	VMAJ = "1"
        	VMIN = "3"
        	LINKER = "C"
        	SOURCES = ("libtest.c")
        	HEADERS = ("libtest.h")
        }

SEE ALSO
pmkscan(1), pmkfile(5)