sparkmake(1) generates SPARK index and metafiles




The SPARKMake tool automatically generates two files that can be used as arguments to the Examiner command line: The index file and the meta file. For more information please refer to the full Examiner manual.

This manual page only summarises the sparkmake command-line flags, please refer to the full SPARKMake manual for further information.


These options do not quite follow the usual GNU command line syntax. All options start with a single dash instead of the usual two and they can also be abbreviated, as long as the abbreviation is unique. For example -expand can be abbreviated to -expa but not -exp as this clashes with -export_indent.

For a description of the regular expression syntax, please refer to the appropriate section below.

If ROOT_FILE is not given then we produce an index and metafile for all files in and under the current directory.

Display command-line help.
Display version information.
Look in and under DIRNAME as well as the current working directory. This option can be specified more than once; buy default we only look at the current working directory.
Only include files if their full path matches the given regular expression.
Exclude files if their full patch matches the given regular expression.
Fail if duplicate units are found.
Select alternative annotation character. The default is '#'.
This can be one of 83, 95 (the default) or 2005.
-index=FILE_SPEC, -noindexfile
The index file to generate, by default this is ROOT_FILE.idx.
-meta=FILE_SPEC, -nometafile
The metafile to generate, by default this is ROOT_FILE.smf.
Produce 'relative' or 'full' pathnames. By default we produce full pathnames.


Please note that the regular expression syntax used by SPARKMake differs from both POSIX and Perl regular expressions. Please also take care to appropriately escape anythign that your shell might replace or expand (such as * or ?). The characters '{' and '}' are not allowed to appear in any regular expression.

reg_exp = term

term = elmt | elmt elmt ... | * | ? | [char char ...] | [char - char]

elmt = nchr | [nchr nchr ...] | [^ nchr nchr ...] | [nchr - nchr] | . | ( reg_exp )

The * has special meaning; it matches any string of 0 or more characters. Note that this differs from POSIX regex where the equivalent would be '.*'.

The special characters ? and . have the same meaning, they match any character. Thus, ? does not hold the same meaning it does in a POSIX regular expression.

The [ab...] notation means the usual: match any character listed.

The [a-f] notation means the usual: match any character in the given range.

The [^a-f] notation means the usual: match any character not in the given range.

char can be any character, including special characters. nchr can be any character except '\', '(', ')', '[', ']', '.', '*', '+', '?' or '^'. It is possible to specify such a special character by escaping it with a backslash.


This manual page was written by Florian Schanda <[email protected]> for the Debian GNU/Linux system (but may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts.