use warnings; use strict; use Module::Build; my $prompt = 'Would you like to enable network tests?'; my $prompt_components = qq| If you would like to test the jabberd14 and jabberd20 component connection \n|. qq| facilities, you will need to have already configured both servers to accept \n|. qq| connections. If this sounds like a hassle please answer 'N' to the \n|. qq| following question. \n\nDo you want to enable tests for jabberd14 and \n|. qq| jabberd20 component connections?|; my $j14 = qq|### JABBERD14 ###\n|; my $j20 = qq|### JABBERD20 ###\n|; my @comps = ($j14, $j20); my $prompt_ip = 'Please enter the ip address of the server.'; my $prompt_port = 'Please enter the listening port on the server.'; my $prompt_hostname = 'Please enter the hostname the component will represent.'; my $prompt_username = qq|Please enter the username the component will represent.|; my $prompt_secret = 'Please enter the secret that will be used to auth.'; my $ret; if (grep /^--default$/, @ARGV) { print $prompt, " [n] n\n\n"; } else { $ret = Module::Build->prompt($prompt, 'n'); } if($ret =~ /^y/i) { open(my $file, '>', 'run_network_tests'); $ret = Module::Build->prompt($prompt_components, 'n'); if($ret =~ /^y/i) { print "\n" . qq|### JABBERD14 ###\n|; print $file qq|### JABBERD14 ###\n|; print $file 'IP=' . Module::Build->prompt($prompt_ip, '127.0.0.1') . "\n"; print $file 'PORT=' . Module::Build->prompt($prompt_port, '5348') . "\n"; print $file 'HOST=' . Module::Build->prompt($prompt_hostname, 'component.localhost') . "\n"; print $file 'SECRET=' . Module::Build->prompt($prompt_secret, 'secret') . "\n"; print "\n" . qq|### JABBERD20 ###\n|; print $file qq|### JABBERD20 ###\n|; print $file 'IP=' . Module::Build->prompt($prompt_ip, '127.0.0.1') . "\n"; print $file 'PORT=' . Module::Build->prompt($prompt_port, '5347') . "\n"; print $file 'HOST=' . Module::Build->prompt($prompt_hostname, 'component.localhost') . "\n"; print $file 'USER=' . Module::Build->prompt($prompt_username, 'jabberd') . "\n"; print $file 'SECRET=' . Module::Build->prompt($prompt_secret, 'secret') . "\n"; } close($file); } else { unlink 'run_network_tests' if -e 'run_network_tests'; } Module::Build->new ( 'module_name' => 'POE::Component::Jabber', 'license' => 'gpl', 'create_makefile_pl' => 'passthrough', 'create_readme' => 1, 'requires' => { 'perl' => '5.10.0', 'POE' => '1.003', 'Digest::SHA1' => '2.11', 'Authen::SASL' => '2.12', 'MIME::Base64' => '3.07_01', 'POE::Filter::XML' => '0.35', 'POE::Component::SSLify' => '0.15', 'POE::Component::PubSub' => '0.05', } )->create_build_script();