Blame Makefile.PL

Packit 910689
Packit 910689
use ExtUtils::MakeMaker;
Packit 910689
use Carp;
Packit 910689
Packit 910689
my $mm_version = $ExtUtils::MakeMaker::VERSION || $ExtUtils::MakeMaker::Version;
Packit 910689
if ( $mm_version < 6.58 ) {
Packit 910689
    croak("Sorry, but MakeMaker 6.58 or better is needed to build this package.");
Packit 910689
}
Packit 910689
Packit 910689
&WriteMakefile(
Packit 910689
    NAME       => 'Term::ReadKey',
Packit 910689
    DISTNAME   => 'TermReadKey',
Packit 910689
    LICENSE    => 'perl',
Packit 910689
    ABSTRACT   => 'Change terminal modes, and perform non-blocking reads.',
Packit 910689
    AUTHOR     => ['Kenneth Albanowski','Jonathan Stowe'],
Packit 910689
    CONFIGURE_REQUIRES => {
Packit 910689
        'ExtUtils::MakeMaker' => 6.58,
Packit 910689
    },
Packit 910689
    BUILD_REQUIRES  =>  {
Packit 910689
        'ExtUtils::MakeMaker' => 6.58,
Packit 910689
    },
Packit 910689
    META_ADD => { # needs to _ADD because I want over-ride the dynamic_config
Packit 910689
        dynamic_config => 1,
Packit 910689
        no_index  => {
Packit 910689
            file     => [ qw(Configure.pm) ],
Packit 910689
            package  => [ qw(Configure) ],
Packit 910689
        },
Packit 910689
        provides  => {
Packit 910689
            'Term::ReadKey' => {
Packit 910689
                file    => 'META.yml',
Packit 910689
                version => '2.37',
Packit 910689
            },
Packit 910689
        },
Packit 910689
        'meta-spec' => { version => 2 },
Packit 910689
        resources => {
Packit 910689
            repository => {
Packit 910689
                type => 'git',
Packit 910689
                url  => 'https://github.com/jonathanstowe/TermReadKey.git',
Packit 910689
                web  => 'https://github.com/jonathanstowe/TermReadKey',
Packit 910689
            },
Packit 910689
        },
Packit 910689
    },
Packit 910689
    VERSION_FROM    => 'ReadKey_pm.PL',
Packit 910689
    XSPROTOARG      => '-noprototypes',
Packit 910689
    PL_FILES	    => { 'ReadKey_pm.PL' => 'ReadKey.pm' },
Packit 910689
    PM              => { 'ReadKey.pm' => '$(INST_ARCHLIBDIR)/ReadKey.pm' },
Packit 910689
    clean           => { FILES => 'cchars.h ReadKey.pm' },
Packit 910689
    SIGN            => 1,
Packit 910689
Packit 910689
    # Uncomment these to allow testing of sgtty under Linux. Not needed normally.
Packit 910689
    # INC => "-I/usr/include/bsd",
Packit 910689
    # LIBS => "-lbsd"
Packit 910689
);
Packit 910689
Packit 910689
sub MY::top_targets {
Packit 910689
    my $self = shift;
Packit 910689
    $_ = $self->MM::top_targets();
Packit 910689
    # ensure that the XS is built before the PM
Packit 910689
    s/pure_all :: config pm_to_blib (.* )linkext/pure_all :: config linkext pm_to_blib $1/;
Packit 910689
Packit 910689
    $_ .= "
Packit 910689
Packit 910689
sgtty cchars.h: genchars.pl
Packit 910689
	\$(PERLRUN) genchars.pl
Packit 910689
Packit 910689
distcc: genchars.pl
Packit 910689
	\$(PERLRUN) genchars.pl dist
Packit 910689
Packit 910689
ReadKey.c: cchars.h
Packit 910689
Packit 910689
";
Packit 910689
    $_
Packit 910689
}
Packit 910689
Packit 910689
# The template needs DynaLoader. don't use miniperl (dual-life only)
Packit 910689
sub MY::processPL {
Packit 910689
    my $self = shift;
Packit 910689
    $_ = $self->MM::processPL();
Packit 910689
    s/ReadKey.pm :: ReadKey_pm.PL/ReadKey.pm :: ReadKey_pm.PL dynamic/;
Packit 910689
    s/\$\(PERLRUN\)/\$(FULLPERLRUNINST)/;
Packit 910689
    $_
Packit 910689
}
Packit 910689
Packit 910689
sub MY::test {
Packit 910689
    my $self = shift;
Packit 910689
    $_ = $self->MM::test();
Packit 910689
    s#example/test.pl#-w example/test.pl#;
Packit 910689
    $_
Packit 910689
}
Packit 910689
Packit 910689
sub MY::test_interactive {
Packit 910689
    "Fooo"
Packit 910689
}
Packit 910689
Packit 910689
sub MY::pure_site_install {
Packit 910689
    my $self = shift;
Packit 910689
    my $new = $self->MM::test();
Packit 910689
Packit 910689
    $new .= "\n\t./register_module Term::ReadKey";
Packit 910689
    $new
Packit 910689
}