Restrictions
Preprocessor directives may appear in any config file except systems.cfg.
#include and #verbatim directives may appear in systems.cfg, but all other preprocessor directives are forbidden. Macros, too, are outlawed in systems.cfg. Comments, however, can appear in systems.cfg and in any other .cfg file.
You may use #ifdef, #ifndef, and #setdef in defines.cfg just so long as the referenced define is specified earlier in defines.cfg.
Referencing an unregistered #define (for example, '#ifdef foobar' where 'foobar' has not been #define'd in defines.cfg) will produce an error and halt all further piktc preprocessing. You may reference unregistered operating systems in #if statements (for example, '#elif aix | irix', where 'aix' and 'irix' are not mentioned in systems.cfg). (This is to make it easier to distribute "standard library" config files written for all operating systems.) If you set 'verbose_log' to 'YES' in PIKT.conf, referencing an unregistered operating system (or hostname or host alias) in an #if statement will write a WARNING message to piktc.log but not otherwise interfere with piktc preprocessing.
prev page | 1st page | next page |