File: autoconf.info, Node: VPATH and Make, Next: Single Suffix Rules, Prev: make -k Status, Up: Portable Make 12.18 ‘VPATH’ and Make ====================== Posix does not specify the semantics of ‘VPATH’. Typically, ‘make’ supports ‘VPATH’, but its implementation is not consistent. Autoconf and Automake support makefiles whose usages of ‘VPATH’ are portable to recent-enough popular implementations of ‘make’, but to keep the resulting makefiles portable, a package's makefile prototypes must take the following issues into account. These issues are complicated and are often poorly understood, and installers who use ‘VPATH’ should expect to find many bugs in this area. If you use ‘VPATH’, the simplest way to avoid these portability bugs is to stick with GNU ‘make’, since it is the most commonly-used ‘make’ among Autoconf users. Here are some known issues with some ‘VPATH’ implementations. * Menu: * Variables listed in VPATH:: ‘VPATH’ must be literal on ancient hosts * VPATH and Double-colon:: Problems with ‘::’ on ancient hosts * $< in Explicit Rules:: ‘$<’ does not work in ordinary rules * Automatic Rule Rewriting:: ‘VPATH’ goes wild on Solaris * Tru64 Directory Magic:: ‘mkdir’ goes wild on Tru64 * Make Target Lookup:: More details about ‘VPATH’ lookup