AMake Filenames

The following table lists the wildcards understood by AMake. These can be used pretty much anywhere a filename is accepted.

Wildcard Comment
~/... a tilde not followed by a user name is interpreted as $(HOME)
~<username>/... a tilde followed by a user name is interpreted as $(HOME)/../<username>
? accept any one character
* accept any number of any characters, including none
% accept one or more of any characters (in easy patterns only)
[...] accepts a set and/or a range of characters
[!...]
[^...]
refuse a set and/or a range of characters
{...} choices of words separated by commas (,) or semicolons (;) to generate different filenames

When a target name starts with a macro reference, this macro is checked for a list of paths (a list of words separated by colons (:) - or semi-colons (;) under DOS). If it is a list of paths, then the target is searched in each of these directories in the order they are given.

These paths are taken in addition to the paths defined with the #vpath preprocessor instruction or with the .PATH special target.

AMake also supports the -l<name> syntax in the list of dependencies (actually, it's supported pretty much anywhere filenames are supported). This requests AMake to search for <name> as ld searches for libraries. The search occurs in the current directory, in the directories specified with the -L option, the #vpath preprocessor, the internally defined directories, and then the $(PREFIX) macro. The search is done for the .so (or .DLL under DOS) and the .a versions of the library.