-C directory option calling functions, wildcards and canned sequences [See macros] case-sensitivity in variables chaining rules intermediate files and character classes, wildcards and characters in variables check target circular references, libraries circularities, libraires CLASSPATH variable, Java makefile clean target code debugging defensive coding writing for duplicating, recursive make and command scripts 2nd [See also scripts] error messages evaluation parsing and command-line debugging options limits echo command line Linux kernel makefile options recursive make and subshells targets as arguments variable definition and commands ar (archive library) awk, phony targets and df, phony targets and empty environments file descriptors MAKEFLAGS variable MAKELEVEL variable errors in, ignoring help long make, execution order makefile, execution order multiline no-op options, errors and parsing command scripts and editors and prefixes + (plus) - (dash) @ shell, sequences status code targets, overriding variable expansion comments commercial development model compile-bean function (Java) computed variables, assert function and conditional directives ifeq ifneq directive syntax conditional processing directives conditional variable assignment operator (?=) configuring Linux kernel makefile constants, user -customized variables cookies 2nd [See also empty targets] counter function CPPFLAGS variable CURDIR variable 2nd curly braces ({ }) in variables CVS (Concurrent Version Systems) binary files, large implicit rules and cwd (current working directory), CURDIR variable and Cygwin benchmarking and conflicts line termination portability and regtool Windows filesystem and