|
Packit |
3e1c34 |
#
|
|
Packit |
3e1c34 |
# Module::Build build script for Mail::SPF
|
|
Packit |
3e1c34 |
#
|
|
Packit |
3e1c34 |
# (C) 2005-2012 Julian Mehnle <julian@mehnle.net>
|
|
Packit |
3e1c34 |
# $Id: Build.PL 61 2013-07-22 03:45:15Z julian $
|
|
Packit |
3e1c34 |
#
|
|
Packit |
3e1c34 |
##############################################################################
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
use Module::Build 0.26;
|
|
Packit |
3e1c34 |
use version;
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
my $class = Module::Build->subclass( code => <<'EOF' );
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
sub process_extra_files {
|
|
Packit |
3e1c34 |
my ($self, $dir) = @_;
|
|
Packit |
3e1c34 |
$dir ||= $element;
|
|
Packit |
3e1c34 |
File::Find::find(
|
|
Packit |
3e1c34 |
{
|
|
Packit |
3e1c34 |
wanted => sub {
|
|
Packit |
3e1c34 |
$File::Find::prune = 1 if -d and /\.svn$/; # Exclude .svn/ dirs.
|
|
Packit |
3e1c34 |
return if not -f; # Handle files only.
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
my $destination = $self->copy_if_modified(
|
|
Packit |
3e1c34 |
from => $File::Find::name,
|
|
Packit |
3e1c34 |
to => File::Spec->catfile($self->blib, $File::Find::name)
|
|
Packit |
3e1c34 |
);
|
|
Packit |
3e1c34 |
return if not defined($destination); # Already up to date?
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
chmod((stat($File::Find::name))[2], $destination)
|
|
Packit |
3e1c34 |
or warn("Cannot set permissions on $destination: $!");
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
no_chdir => 1
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
$dir
|
|
Packit |
3e1c34 |
);
|
|
Packit |
3e1c34 |
}
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
sub process_sbin_files { shift->process_extra_files('sbin') }
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
EOF
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
my $build = $class->new(
|
|
Packit |
3e1c34 |
module_name => 'Mail::SPF',
|
|
Packit |
3e1c34 |
dist_author => [
|
|
Packit |
3e1c34 |
'Julian Mehnle <julian@mehnle.net>',
|
|
Packit |
3e1c34 |
'Shevek <cpan@anarres.org>'
|
|
Packit |
3e1c34 |
],
|
|
Packit |
3e1c34 |
license => 'bsd',
|
|
Packit |
3e1c34 |
requires => {
|
|
Packit |
3e1c34 |
# Core requirements:
|
|
Packit |
3e1c34 |
perl => '5.006',
|
|
Packit |
3e1c34 |
version => 0,
|
|
Packit |
3e1c34 |
Error => 0,
|
|
Packit |
3e1c34 |
NetAddr::IP => '4',
|
|
Packit |
3e1c34 |
Net::DNS => '0.62',
|
|
Packit |
3e1c34 |
URI => '1.13'
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
recommends => {
|
|
Packit |
3e1c34 |
NetAddr::IP => '4.007' # has all $& and $` removed for better performance
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
configure_requires => {
|
|
Packit |
3e1c34 |
# Configuration requirements:
|
|
Packit |
3e1c34 |
Module::Build => '0.2805'
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
build_requires => {
|
|
Packit |
3e1c34 |
# Build requirements:
|
|
Packit |
3e1c34 |
Module::Build => '0.2805',
|
|
Packit |
3e1c34 |
Test::More => 0,
|
|
Packit |
3e1c34 |
Net::DNS::Resolver::Programmable
|
|
Packit |
3e1c34 |
=> '0.003',
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
script_files => [
|
|
Packit |
3e1c34 |
'bin/spfquery'
|
|
Packit |
3e1c34 |
],
|
|
Packit |
3e1c34 |
install_path => {
|
|
Packit |
3e1c34 |
'sbin' => '/usr/sbin'
|
|
Packit |
3e1c34 |
},
|
|
Packit |
3e1c34 |
create_makefile_pl => 'passthrough',
|
|
Packit |
3e1c34 |
sign => 1
|
|
Packit |
3e1c34 |
);
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
$build->add_build_element($_)
|
|
Packit |
3e1c34 |
foreach qw(sbin);
|
|
Packit |
3e1c34 |
|
|
Packit |
3e1c34 |
$build->create_build_script();
|