It started off with this line in the MPW Make help file:
-i dirname # additional directory to search for include files
What include files? Normal make has an include directive to do just that,
but MPW Make didn’t support it. Running strings on the resource fork, I
found this error:
No file name following !include
And so I verified that !include filename worked as expected.
However, I couldn’t find !include documented anywhere; not in the help file,
not in the Building and Managing Programs in MPW guide, and Google was
helpless as well. Did !include have any secret siblings?
Running strings again, this time looking just for a !, I found references
to more keywords:
!ifdef!ifndef!elseifdef!elseifndef!endif!undef- ‘!error’
These also work as expected. !undef undefines a command-line (-d)
variable, allowing it to be re-defined later (similar to the override
directive in normal makes.)
These directives (and using !) are suspiciously similar to Microsoft’s
NMake. I couldn’t tell you what the true origin is, though.