* automake.in (CLEAN, MAINTAINER_CLEAN): New constants.
(maintainer_clean_files): Replace by ...
(clean_files): ... this new variable.
(initialize_per_input, lang_yacc_target_hook,
lang_lex_target_hook): Use %clean_files instead of
@maintainer_clean_files.
(handle_clean): Rewrite, using %clean_files.
(require_build_directory_maybe): Use %clean_files instead
of %compile_clean_files. This allows using
&require_build_directory_maybe for non-compiling targets.
* lib/am/clean.am (mostlyclean-generic, clean-generic,
distclean-generic, maintainer-clean-generic): Rewrite using
%MOSTLYCLEAN_RMS%, %CLEAN_RMS%, %DISTCLEAN_RMS%, and
%MAINTAINER_CLEAN_RMS%.