.\" $Id: scanfile.5 1958 2007-03-21 17:10:19Z coudercd $ . .Dd September 15, 2005 .Dt SCANFILE 5 .Os . .Sh NAME .Nm scanfile .Nd pmkscan specification file . .Sh DESCRIPTION .Nm is a file containing specifications that defines which sources are to be scanned and what to generate from the resulting data. . .Sh SYNTAX See .Xr pmksyntax.5 to have an overview of the basic syntax of scanfiles. . .Sh COMMANDS .Pp The available commands are the following : .Bl -tag -width Ds .It Cm GEN_PMKFILE This command specify a zone to scan and generate a pmkfile. .Pp Arguments: .Bl -tag -width DIRECTORY -offset indent .It Dv CFGNAME type is 'quoted', give the name of the template config file to use instead of the default one. .It Dv DIRECTORY type is 'quoted', define the zone directory to scan. .It Dv DISCARD type is 'list', list of directories to discard in recursive mode. .It Dv EXTRATAG type is 'list', list of extra tags to add in template files. .It Dv RECURSE type is 'bool', enable recursive scanning, default is FALSE. .It Dv 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). .El .Pp For example: .Bd -literal -offset indent GEN_PMKFILE { DIRECTORY = "." RECURSE = TRUE DISCARD = ("samples", "doc", "data", "man") UNIQUE = TRUE } .Ed . .It Cm GEN_MAKEFILE This command specify a zone to scan and generate a makefile. .Pp Arguments: .Bl -tag -width DIRECTORY -offset indent .It Dv DIRECTORY type is 'quoted', define the zone directory to scan. .It Dv DISCARD type is 'list', list of directories to discard in recursive mode. .It Dv EXTRATAG type is 'list', list of extra tags to add in template files. .It Dv MKFNAME type is 'quoted', give the name of the template makefile to use instead of the default one. .It Dv RECURSE type is 'bool', enable recursive scanning, default is FALSE. .It Dv 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). .El .Pp For example: .Bd -literal -offset indent GEN_MAKEFILE { DIRECTORY = "." RECURSE = TRUE DISCARD = ("samples", "doc", "tests") MKFNAME = "Makefile.pmk" UNIQUE = TRUE } .Ed . .It Cm GEN_ZONE This command specify a zone to scan and what to generate. .Pp Arguments: .Bl -tag -width DIRECTORY -offset indent .It Dv CFGNAME type is 'quoted', give the name of the template config file to use instead of the default one. .It Dv DIRECTORY type is 'quoted', define the zone directory to scan. .It Dv DISCARD type is 'list', list of directories to discard in recursive mode. .It Dv EXTRATAG type is 'list', list of extra tags to add in template files. .It Dv PMKFILE type is 'bool', enable generation of a pmkfile .It Dv MAKEFILE type is 'bool', enable generation of a makefile .It Dv MKFNAME type is 'quoted', give the name of the template makefile to use instead of the default one. .It Dv RECURSE type is 'bool', enable recursive scanning, default is FALSE. .It Dv 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). .El .Pp For example: .Bd -literal -offset indent GEN_ZONE(main) { DIRECTORY = "." RECURSE = TRUE DISCARD = ("samples", "doc", "tests") PMKFILE = TRUE MAKEFILE = TRUE MKFNAME = "Makefile.pmk" UNIQUE = TRUE } .Ed . .It Cm DEF_LIB This command define library attributes. .Pp Arguments: .Bl -tag -width DIRECTORY -offset indent .It Dv NAME type is 'quoted', give the name of the library. .It Dv VMAJ type is 'quoted', give the major version of the library. .It Dv VMIN type is 'quoted', give the minor version of the library. .It Dv LINKER type is 'quoted', define the relative language of the linker to be used. .It Dv SOURCES type is 'list', list of the main sources which objects must be linked in the library. .It Dv HEADERS type is 'list', list of library headers to be installed. .El .Pp For example: .Bd -literal -offset indent DEFINE_LIB { NAME = "testc" VMAJ = "1" VMIN = "3" LINKER = "C" SOURCES = ("libtest.c") HEADERS = ("libtest.h") } .Ed .El . .Sh SEE ALSO .Xr pmkscan 1 , .Xr pmkfile 5