* lib/Automake/Variable.pm, lib/Automake/VarDef.pm: New files.
* lib/Automake/Makefile.am (dist_perllib_DATA): Add Variable.pm
and VarDef.pm.
* automake.in: Use Automake::Variable and Automake::VarDef.
(MACRO_PATTERN): Delete. Now Automake::Variable::_MACRO_PATTERN.
(am_macro_for_var): Delete. Now Automake::Variable::_am_macro_for_var.
(ac_macro_for_var): Delete. Now Automake::Variable::_ac_macro_for_var.
(silent_variable_override): Delete. Now
Automake::Variable::_silent_variable_override.
(var_value, var_location, var_comment, var_type, var_owner,
var_pretty, content_seen): Delete. This functionality is now
offered by Automake::Variable and Automake::VarDef.
(VAR_AUTOMAKE, VAR_CONFIGURE, VAR_MAKEFILE, VAR_ASIS, VAR_PRETTY):
Delete. Now defined in Automake::VarDef.
(var_order): Delete. Now Automake::Variable::_var_order.
(appendvar): Delete. Now Automake::Variable::_appendvar.
(var_SUFFIX_trigger): Register using Automake::Variable::hook.
(initialize_per_input): Call Automake::Variable::reset.
(err_var, msg_cond_var, msg_var, reject_var): Delete. Now
defined in Automake::Variable.
(generate_makefile, process_option_list, handle_languages)
(traverse_variable_recursively_worker)
(transform_variable_recursively, handle_compile)
(handle_libraries, handle_ltlibraries)
(check_typos, handle_dist, handle_subdirs, scan_autoconf_files):
Adjust to use Automake::Variable functions.
(check_ambiguous_condition): Delete. Now
Automake::Variable::_check_ambiguous_condition.
(condition_ambiguous_p): Delete. Now
Automake::Variable::condition_ambiguous_p.
(variable_not_always_defined_in_cond): Delete. Now
Automake::Variable::not_always_defined_in_cond.
(macro_define): Delete. Now Automake::Variable::define.
(macro_delete): Delete. Now Automake::Variable::variable_delete.
(macro_dump): Delete. Now Automake::Variable::variable_dump.
(macros_dump): Delete. Now Automake::Variable::variables_dump.
(variable_defined): Delete. Now
Automake::Variable::variable_defined, with the target check
temporarily disabled.
(variable_assert): Delete. Now Automake::Variable::variable_assert.
(examine_variable): Delete. Now
Automake::Variable::examine_variable.
(variable_conditions): Delete. Now Automake::Variable::conditions.
(scan_variable_expansions): Delete. Now
Automake::Variable::scan_variable_expansions.
(check_variable_expansions): Delete. Now
Automake::Variable::check_variable_expansions.
(check_variable_defined_unconditionally): Delete. Now
Automake::Variable::check_defined_unconditionally.
(variable_value): Delete. Now Automake::Variable::variable_value.
(variable_value_as_list): Delete. Now
Automake::Variable::variable_value_as_list.
(variable_value_as_list_recursive_worker): Adjust to use
Automake::Variable functions.
(variable_output): Delete. Now Automake::Variable::output.
(define_pretty_variable, define_configure_variable, read_am_file)
(define_standard_variables, read_main_am_file): Adjust to use
Automake::Variable functions.
(handle_variables): Delete. Now Automake::Variable::output_variables.
(file_contents_internal, am_primary_prefixes, am_install_var)
(require_file_with_macro, require_conf_file_with_macro)
(push_dist_common): : Adjust to use
Automake::Variable functions.
(require_variables): Delete. Now
Automake::Variable::require_variables.
(require_variables_for_macro): Delete. Now
Automake::Variable::require_variables_for_variable.
* tests/Makefile.am (XFAIL_TESTS): Add target.test.