The directive
defines the symbol name. This symbol remains defined until the end of the current module (i.e. unit or program), or until a $UNDEF name directive is encountered.
If name is already defined, this has no effect. Name is case insensitive.
The symbols that are defined in a unit, are not saved in the unit file, so they are also not exported from a unit.
Under Mac Pascal mode, the $DEFINEC directive is equivalent to the $DEFINE directive and is provided for Mac Pascal compatibility.