File: autoconf.info, Node: Special Chars in Variables, Next: Results.php">Caching Results, Prev: Setting Output Variables, Up: Results 7.3 Special Characters in Output Variables ========================================== Many output variables are intended to be evaluated both by ‘make’ and by the shell. Some characters are expanded differently in these two contexts, so to avoid confusion these variables' values should not contain any of the following characters: " # $ & ' ( ) * ; < > ? [ \ ^ ` | Also, these variables' values should neither contain newlines, nor start with ‘~’, nor contain white space or ‘:’ immediately followed by ‘~’. The values can contain nonempty sequences of white space characters like tabs and spaces, but each such sequence might arbitrarily be replaced by a single space during substitution. These restrictions apply both to the values that ‘configure’ computes, and to the values set directly by the user. For example, the following invocations of ‘configure’ are problematic, since they attempt to use special characters within ‘CPPFLAGS’ and white space within ‘$(srcdir)’: CPPFLAGS='-DOUCH="&\"#$*?"' '../My Source/ouch-1.0/configure' '../My Source/ouch-1.0/configure' CPPFLAGS='-DOUCH="&\"#$*?"'