Next: , Previous: , Up: Makefile functionality   [Contents][Index]

6.3 Cleaning

The GNU Makefile Standards specify a number of different clean rules. See Standard Targets for Users in The GNU Coding Standards.

Generally the files that can be cleaned are determined automatically by Automake. Of course, Automake also recognizes some variables that can be defined to specify additional files to clean. These variables are MOSTLYCLEANFILES, CLEANFILES, DISTCLEANFILES, and MAINTAINERCLEANFILES.

When cleaning involves more than deleting some hard-coded list of files, it is also possible to supplement the cleaning rules with your own commands. Simply define a rule for any of the mostlyclean-local, clean-local, distclean-local, or maintainer-clean-local targets (see Extending). A common case is deleting a directory, for instance, a directory created by the test suite:

clean-local:
        -rm -rf testSubDir

Since make allows only one set of rules for a given target, a more extensible way of writing this is to use a separate target listed as a dependency:

clean-local: clean-local-check
.PHONY: clean-local-check
clean-local-check:
        -rm -rf testSubDir

We recommend that you follow the following set of heuristics in your Makefile.am to decide which files should be removed by which rule:

Next: , Previous: , Up: Makefile functionality   [Contents][Index]