In MAC mode, this directive can be used to de ne compiler symbols. It is an alternative to the $DEFINE directive for macros. It is supported for compatibility with existing Mac OS pascal compilers. It will de ne a symbol with a certain value (called a compiler variable expression).
The expression syntax is similar to expressions used in macros, but the expression must be evaluated at compile-time by the compiler. This means that only some basic arithmetic and logical operators can be used, and some extra possibilities such as the TRUE,FALSE and UNDEFINED operators:
{$SETC TARGET_CPU_PPC := NOT UNDEFINED CPUPOWERPC}
{$SETC TARGET_CPU_68K := NOT UNDEFINED CPUM68K} {$SETC TARGET_CPU_X86 := NOT UNDEFINED CPUI386} {$SETC TARGET_CPU_MIPS := FALSE} {$SETC TARGET_OS_UNIX := (NOT UNDEFINED UNIX) AND (UNDEFINED DARWIN)} |
The := assignment symbol may be replaced with the = symbol.
Note that this command works only in MACPAS mode, but independent of the -Sm command-line option or f$MACRO g directive.