The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
use strict; use warnings;
BEGIN {
  unless(eval q{ use 5.008001; 1}) {
    print "Perl 5.008001 or better required\n";
    exit;
  }
}
# This file was automatically generated by Dist::Zilla::Plugin::Author::Plicease::MakeMaker v2.23.
use strict;
use warnings;
use 5.008001;
use ExtUtils::MakeMaker;

my %WriteMakefileArgs = (
  "ABSTRACT" => "Build external dependencies for use in CPAN",
  "AUTHOR" => "Graham Ollis <plicease\@cpan.org>, Joel Berger <joel.a.berger\@gmail.com>",
  "CONFIGURE_REQUIRES" => {
    "ExtUtils::MakeMaker" => 0,
    "File::Which" => 0
  },
  "DISTNAME" => "Alien-Build",
  "LICENSE" => "perl",
  "MIN_PERL_VERSION" => "5.008001",
  "NAME" => "Alien::Build",
  "PM" => {
    "lib/Alien/Base.pm" => "\$(INST_LIB)/Alien/Base.pm",
    "lib/Alien/Base/Authoring.pod" => "\$(INST_LIB)/Alien/Base/Authoring.pod",
    "lib/Alien/Base/FAQ.pod" => "\$(INST_LIB)/Alien/Base/FAQ.pod",
    "lib/Alien/Base/PkgConfig.pm" => "\$(INST_LIB)/Alien/Base/PkgConfig.pm",
    "lib/Alien/Base/Wrapper.pm" => "\$(INST_LIB)/Alien/Base/Wrapper.pm",
    "lib/Alien/Build.pm" => "\$(INST_LIB)/Alien/Build.pm",
    "lib/Alien/Build/CommandSequence.pm" => "\$(INST_LIB)/Alien/Build/CommandSequence.pm",
    "lib/Alien/Build/Interpolate.pm" => "\$(INST_LIB)/Alien/Build/Interpolate.pm",
    "lib/Alien/Build/Interpolate/Default.pm" => "\$(INST_LIB)/Alien/Build/Interpolate/Default.pm",
    "lib/Alien/Build/MM.pm" => "\$(INST_LIB)/Alien/Build/MM.pm",
    "lib/Alien/Build/Manual/AlienAuthor.pod" => "\$(INST_LIB)/Alien/Build/Manual/AlienAuthor.pod",
    "lib/Alien/Build/Manual/AlienUser.pod" => "\$(INST_LIB)/Alien/Build/Manual/AlienUser.pod",
    "lib/Alien/Build/Manual/Contributing.pod" => "\$(INST_LIB)/Alien/Build/Manual/Contributing.pod",
    "lib/Alien/Build/Manual/FAQ.pod" => "\$(INST_LIB)/Alien/Build/Manual/FAQ.pod",
    "lib/Alien/Build/Manual/PluginAuthor.pod" => "\$(INST_LIB)/Alien/Build/Manual/PluginAuthor.pod",
    "lib/Alien/Build/Plugin.pm" => "\$(INST_LIB)/Alien/Build/Plugin.pm",
    "lib/Alien/Build/Plugin/Build.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Build.pod",
    "lib/Alien/Build/Plugin/Build/Autoconf.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Build/Autoconf.pm",
    "lib/Alien/Build/Plugin/Build/CMake.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Build/CMake.pm",
    "lib/Alien/Build/Plugin/Build/MSYS.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Build/MSYS.pm",
    "lib/Alien/Build/Plugin/Build/Make.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Build/Make.pm",
    "lib/Alien/Build/Plugin/Build/SearchDep.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Build/SearchDep.pm",
    "lib/Alien/Build/Plugin/Core.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Core.pod",
    "lib/Alien/Build/Plugin/Core/Download.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/Download.pm",
    "lib/Alien/Build/Plugin/Core/FFI.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/FFI.pm",
    "lib/Alien/Build/Plugin/Core/Gather.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/Gather.pm",
    "lib/Alien/Build/Plugin/Core/Legacy.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/Legacy.pm",
    "lib/Alien/Build/Plugin/Core/Override.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/Override.pm",
    "lib/Alien/Build/Plugin/Core/Setup.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/Setup.pm",
    "lib/Alien/Build/Plugin/Core/Tail.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Core/Tail.pm",
    "lib/Alien/Build/Plugin/Decode.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Decode.pod",
    "lib/Alien/Build/Plugin/Decode/DirListing.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Decode/DirListing.pm",
    "lib/Alien/Build/Plugin/Decode/DirListingFtpcopy.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Decode/DirListingFtpcopy.pm",
    "lib/Alien/Build/Plugin/Decode/HTML.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Decode/HTML.pm",
    "lib/Alien/Build/Plugin/Download.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Download.pod",
    "lib/Alien/Build/Plugin/Download/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Download/Negotiate.pm",
    "lib/Alien/Build/Plugin/Extract.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Extract.pod",
    "lib/Alien/Build/Plugin/Extract/ArchiveTar.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Extract/ArchiveTar.pm",
    "lib/Alien/Build/Plugin/Extract/ArchiveZip.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Extract/ArchiveZip.pm",
    "lib/Alien/Build/Plugin/Extract/CommandLine.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Extract/CommandLine.pm",
    "lib/Alien/Build/Plugin/Extract/Directory.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Extract/Directory.pm",
    "lib/Alien/Build/Plugin/Extract/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Extract/Negotiate.pm",
    "lib/Alien/Build/Plugin/Fetch.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch.pod",
    "lib/Alien/Build/Plugin/Fetch/CurlCommand.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/CurlCommand.pm",
    "lib/Alien/Build/Plugin/Fetch/HTTPTiny.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/HTTPTiny.pm",
    "lib/Alien/Build/Plugin/Fetch/LWP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/LWP.pm",
    "lib/Alien/Build/Plugin/Fetch/Local.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/Local.pm",
    "lib/Alien/Build/Plugin/Fetch/LocalDir.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/LocalDir.pm",
    "lib/Alien/Build/Plugin/Fetch/NetFTP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/NetFTP.pm",
    "lib/Alien/Build/Plugin/Fetch/Wget.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Fetch/Wget.pm",
    "lib/Alien/Build/Plugin/Gather/IsolateDynamic.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Gather/IsolateDynamic.pm",
    "lib/Alien/Build/Plugin/PkgConfig/CommandLine.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/CommandLine.pm",
    "lib/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/LibPkgConf.pm",
    "lib/Alien/Build/Plugin/PkgConfig/MakeStatic.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/MakeStatic.pm",
    "lib/Alien/Build/Plugin/PkgConfig/Negotiate.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/Negotiate.pm",
    "lib/Alien/Build/Plugin/PkgConfig/PP.pm" => "\$(INST_LIB)/Alien/Build/Plugin/PkgConfig/PP.pm",
    "lib/Alien/Build/Plugin/Prefer.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer.pod",
    "lib/Alien/Build/Plugin/Prefer/BadVersion.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer/BadVersion.pm",
    "lib/Alien/Build/Plugin/Prefer/SortVersions.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Prefer/SortVersions.pm",
    "lib/Alien/Build/Plugin/Probe.pod" => "\$(INST_LIB)/Alien/Build/Plugin/Probe.pod",
    "lib/Alien/Build/Plugin/Probe/CBuilder.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Probe/CBuilder.pm",
    "lib/Alien/Build/Plugin/Probe/CommandLine.pm" => "\$(INST_LIB)/Alien/Build/Plugin/Probe/CommandLine.pm",
    "lib/Alien/Build/Util.pm" => "\$(INST_LIB)/Alien/Build/Util.pm",
    "lib/Alien/Build/Version/Basic.pm" => "\$(INST_LIB)/Alien/Build/Version/Basic.pm",
    "lib/Alien/Role.pm" => "\$(INST_LIB)/Alien/Role.pm",
    "lib/Test/Alien.pm" => "\$(INST_LIB)/Test/Alien.pm",
    "lib/Test/Alien/Build.pm" => "\$(INST_LIB)/Test/Alien/Build.pm",
    "lib/Test/Alien/CanCompile.pm" => "\$(INST_LIB)/Test/Alien/CanCompile.pm",
    "lib/Test/Alien/CanPlatypus.pm" => "\$(INST_LIB)/Test/Alien/CanPlatypus.pm",
    "lib/Test/Alien/Run.pm" => "\$(INST_LIB)/Test/Alien/Run.pm",
    "lib/Test/Alien/Synthetic.pm" => "\$(INST_LIB)/Test/Alien/Synthetic.pm",
    "lib/alienfile.pm" => "\$(INST_LIB)/alienfile.pm"
  },
  "PREREQ_PM" => {
    "Capture::Tiny" => "0.17",
    "ExtUtils::CBuilder" => 0,
    "ExtUtils::ParseXS" => "3.30",
    "FFI::CheckLib" => "0.11",
    "File::Which" => "1.10",
    "File::chdir" => 0,
    "JSON::PP" => 0,
    "Module::Load" => 0,
    "Path::Tiny" => "0.077",
    "Test2::API" => "1.302015",
    "Test2::Require" => "0.000060",
    "Text::ParseWords" => "3.26"
  },
  "TEST_REQUIRES" => {
    "Test2::Mock" => "0.000060",
    "Test2::Require::Module" => "0.000060",
    "Test2::V0" => "0.000060"
  },
  "VERSION" => "1.23_01",
  "test" => {
    "TESTS" => "t/*.t"
  }
);

my %FallbackPrereqs = (
  "Capture::Tiny" => "0.17",
  "ExtUtils::CBuilder" => 0,
  "ExtUtils::ParseXS" => "3.30",
  "FFI::CheckLib" => "0.11",
  "File::Which" => "1.10",
  "File::chdir" => 0,
  "JSON::PP" => 0,
  "Module::Load" => 0,
  "Path::Tiny" => "0.077",
  "Test2::API" => "1.302015",
  "Test2::Mock" => "0.000060",
  "Test2::Require" => "0.000060",
  "Test2::Require::Module" => "0.000060",
  "Test2::V0" => "0.000060",
  "Text::ParseWords" => "3.26"
);

# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.033
if (!do { require File::Which; ($ENV{PKG_CONFIG} && File::Which::which($ENV{PKG_CONFIG})) || File::Which::which('pkgconf') || File::Which::which('pkg-config') }) {
requires('PkgConfig' => '0.14026' ); # for static cflags support
}

# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.033
if (do { use Config; $^O eq 'solaris' && $Config{ptrsize} == 8 }) {
requires('PkgConfig' => '0.14026' ); # for using the wrong libraries support
}

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);

# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.033
sub _add_prereq {
  my ($mm_key, $module, $version_or_range) = @_;
  $version_or_range ||= 0;
  warn "$module already exists in $mm_key (at version $WriteMakefileArgs{$mm_key}{$module}) -- need to do a sane metamerge!"
    if exists $WriteMakefileArgs{$mm_key}{$module}
      and $WriteMakefileArgs{$mm_key}{$module} ne '0'
      and $WriteMakefileArgs{$mm_key}{$module} ne $version_or_range;
  warn "$module already exists in FallbackPrereqs (at version $WriteMakefileArgs{$mm_key}{$module}) -- need to do a sane metamerge!"
    if exists $FallbackPrereqs{$module} and $FallbackPrereqs{$module} ne '0'
        and $FallbackPrereqs{$module} ne $version_or_range;
  $WriteMakefileArgs{$mm_key}{$module} = $FallbackPrereqs{$module} = $version_or_range;
  return;
}

sub requires { goto &runtime_requires }

sub runtime_requires {
  my ($module, $version_or_range) = @_;
  _add_prereq(PREREQ_PM => $module, $version_or_range);
}