use strict; use warnings; use Module::Build; use File::Spec; # $RedRiver: Build.PL,v 1.4 2007/02/05 21:36:42 andrew Exp $ my $cfg_file = File::Spec->catfile('t', 'tests.cfg'); my $builder = Module::Build->new( module_name => 'Net::Telnet::Trango', license => 'perl', dist_author => 'Andrew Fresh ', dist_version_from => 'lib/Net/Telnet/Trango.pm', build_requires => { 'Test::More' => 0, }, add_to_cleanup => [ 'Net-Telnet-Trango-*', $cfg_file ], create_makefile_pl => 'traditional', create_readme => 1, create_html => 1, dynamic_config => 1, auto_features => { YAML_support => { description => "Use YAML.pm to write META.yml files", requires => { YAML => ' >= 0.35, != 0.49_01 ' }, }, manpage_support => { description => "Create Unix man pages", requires => { 'Pod::Man' => 0 }, }, HTML_support => { description => "Create HTML documentation", requires => { 'Pod::Html' => 0 }, }, }, ); get_config(); $builder->create_build_script(); sub get_config { my %cfg; print <$cfg_file") { while (my ($key, $value) = each %cfg) { print T $key, "\t", $value,"\n"; } close T; } } sub get_ap_config { my $cfg = shift; print 'To run the AP tests, we need an IP and a password for an AP.', "\n"; $cfg->{AP} = $builder->prompt("AP IP: ", $cfg->{AP}) || return; $cfg->{AP_PASSWD} = $builder->prompt("AP Password:", $cfg->{AP_PASSWD}) || return; } sub get_sudb_config { my $cfg = shift; print <{SU_ID} = $builder->prompt("SU ID: ", $cfg->{SU_ID}) || return; $cfg->{SU_MAC} = $builder->prompt("SU MAC:", $cfg->{SU_MAC}) || return; } sub get_su_config { my $cfg = shift; print 'To run the SU tests, we need an IP and a password of an SU.', "\n"; $cfg->{SU} = $builder->prompt("SU IP: ", $cfg->{SU}) || return; $cfg->{SU_PASSWD} = $builder->prompt("SU Password:", $cfg->{SU_PASSWD}) || return; }