App-a2p

 view release on metacpan or  search on metacpan

Makefile.PL  view on Meta::CPAN

use ExtUtils::MakeMaker;

my %WriteMakefileArgs = (
  "ABSTRACT" => "Awk to Perl translator",
  "AUTHOR" => "Leon Timmermans <leont\@cpan.org>",
  "C" => [],
  "CONFIGURE_REQUIRES" => {
    "ExtUtils::MakeMaker" => 0
  },
  "DISTNAME" => "App-a2p",
  "LICENSE" => "perl",
  "MAN1PODS" => {
    "lib/App/a2p.pm" => "blib/man1/a2p.1"
  },
  "MAN3PODS" => {},
  "NAME" => "App::a2p",
  "NEEDS_LINKING" => 1,
  "PREREQ_PM" => {
    "strict" => 0,
    "warnings" => 0
  },
  "TEST_REQUIRES" => {
    "File::Spec::Functions" => 0,
    "File::Temp" => 0,
    "IPC::Open2" => 0,
    "Test::More" => "0.89"
  },
  "VERSION" => "1.013",
  "test" => {
    "TESTS" => "t/*.t"
  }
);

my %FallbackPrereqs = (
  "File::Spec::Functions" => 0,
  "File::Temp" => 0,
  "IPC::Open2" => 0,
  "Test::More" => "0.89",
  "strict" => 0,
  "warnings" => 0
);

unless ( eval { ExtUtils::MakeMaker->VERSION('6.63_03') } ) {
  delete $WriteMakefileArgs{TEST_REQUIRES};
  delete $WriteMakefileArgs{BUILD_REQUIRES};
  $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs;
}

delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
  unless eval { ExtUtils::MakeMaker->VERSION(6.52) };

WriteMakefile(%WriteMakefileArgs);

package MY;
use Config;

sub postamble {
	my $self = shift;
	my $a2p = $self->catfile('$(INST_BIN)', 'a2p$(EXE_EXT)');
	my @ret = (
		$self->SUPER::postamble,
		'OBJ = hash$(OBJ_EXT) str$(OBJ_EXT) util$(OBJ_EXT) walk$(OBJ_EXT) a2p$(OBJ_EXT)',
		'',
		"$a2p : \$(OBJ)"
	);
	if ($^O eq 'MSWin32' && $Config{cc} =~ /^cl/) {
		push @ret, map { $_ eq '<<' ? $_ : "\t$_" }
		'$(LD) -subsystem:console -out:$@ @<<',
		'$(LDFLAGS) $(LDLOADLIBS) $(OBJ)',
		'<<',
		'if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;1',
		'if exist $@.manifest del $@.manifest';
	}
	else {
		push @ret, "\t" . '$(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS)';
	}
	push @ret, '', "pure_all :: $a2p";
	return join "\n", @ret;
}



( run in 1.180 second using v1.01-cache-2.11-cpan-98e64b0badf )