/usr/local/CPAN/Mail-SpamAssassin-SpamCopURI/Makefile.PL


use ExtUtils::MakeMaker;
use strict;
use Mail::SpamAssassin;
use Config;

my $sa_version = $Mail::SpamAssassin::VERSION;
($sa_version == 2.63 or $sa_version == 2.64) or 
  die "*** YOU MUST USE SPAMASSASSIN 2.63 or 2.64 to run this - see INSTALL";



my $CONF_PM = 'Mail/SpamAssassin/Conf.pm';
my $SA_PM = 'Mail/SpamAssassin.pm';
my $PERMSG_PM = 'Mail/SpamAssassin/PerMsgStatus.pm';

my %install_targets = (
  installsitelib   => 'site',
  installvendorlib => 'vendor',
  installprivlib   => 'perl',
);

my $target;

(my $sa_path = $INC{$SA_PM}) =~ s#/$SA_PM$##;

# try to figure out where SA is installed
foreach my $k (keys %install_targets) {

  if ($Config{$k} eq $sa_path) {
    print "# SAPATH $sa_path\n";
    print "# $k $Config{$k}\n";
    $target = $install_targets{$k};
  }
}

my @INSTALLDIRS = ();

if ($target) {

  if ($INC{$CONF_PM} eq "$sa_path/$CONF_PM" &&
      $INC{$PERMSG_PM} eq "$sa_path/$PERMSG_PM") {
    @INSTALLDIRS = ('INSTALLDIRS', $target);

  } else {

    warn "$CONF_PM / $PERMSG_PM seem to be installed differently than Mail::SpamAssassin";
    warn "found $SA_PM in $sa_path";
    warn "found $CONF_PM in $INC{$CONF_PM}";
    warn "found $PERMSG_PM in $INC{$PERMSG_PM}";
  }

}

print "# @INSTALLDIRS\n";



unlink("lib/$PERMSG_PM");

print "# linking plib/$sa_version/$PERMSG_PM -> lib/$PERMSG_PM\n";

link("plib/$sa_version/$PERMSG_PM",
     "lib/$PERMSG_PM") or die "failed to link appropiate PerMsgStatus.pm: $!";

WriteMakefile(
    'NAME'          => 'Mail::SpamAssassin::SpamCopURI',
    'VERSION_FROM'  => 'lib/Mail/SpamAssassin/SpamCopURI.pm', # finds $VERSION
    'PREREQ_PM'     => { 'Mail::SpamAssassin' => 2.63, URI => 1.28, 'Net::DNS' => 0  }, 
    @INSTALLDIRS
    # e.g., Module::Name => 1.1
);

sub MY::postamble {
  return <<'MAKE_FRAG';
cover: 
	HARNESS_PERL_SWITCHES=-MDevel::Cover=-ignore,Storable make test

MAKE_FRAG
}