MariaDB-NonBlocking

 view release on metacpan or  search on metacpan

Makefile.PL  view on Meta::CPAN

my @archive_after;
my $lib_ext = $Config{lib_ext};
my $found_libmariadbclient_a = 0;
foreach my $maybe_lib ( shellwords($libs) ) {
    if ( $maybe_lib =~ m/\B-l(\S+)/ ) {
        # -lfoo
        push @$makemaker_libs, $maybe_lib;
    }
    elsif ( $maybe_lib =~ m<-L(\S+)> ) {
        my $lib_dir = $1;
        # /path/to/libs
        # add '-Wl,-rpath=$dir'
        $libs = '-Wl,-rpath,' . $lib_dir . ' ' . $libs;
        if ( $opt->{static_link_to_mariadbclient} && !$found_libmariadbclient_a ) {
            # if we are statically linking, don't leave it up to the linker to
            # use the libmariadbclient.a file -- explicitly pass it:
            my $libmariadb = File::Spec->catfile($lib_dir, 'libmariadbclient' . $lib_ext);
            if ( -e $libmariadb ) {
                $found_libmariadbclient_a = 1;
                push @archive_after, $libmariadb;
            }
        }
    }
    elsif ( $maybe_lib =~ m<^/.+$lib_ext$> ) {
        # .a file in pkg-config --libs output -- this needs to come after the -o
        push @archive_after, $maybe_lib;
    }
}
$lddlflags .= ' ' . $libs;

if ($found_libmariadbclient_a) {
    $_ =~ s/\B-lmariadb\b/-lmariadbclient/g
        for $lddlflags, @$makemaker_libs; # static library has a different name!
}

foreach my $maybe_inc ( shellwords($cflags) ) {
    next unless $maybe_inc =~ m/\B-I(\S+)/;
    my $inc = $1;
    $makemaker_inc .= $inc;
}
$ccflags .= ' ' . $cflags;

WriteMakefile(
    NAME             => 'MariaDB::NonBlocking',
    AUTHOR           => q{Brian Fraser <fraserbn@gmail.com>},
    VERSION_FROM     => 'lib/MariaDB/NonBlocking.pm',
    ABSTRACT_FROM    => 'lib/MariaDB/NonBlocking.pm',
    LICENSE          => 'artistic_2',
    PL_FILES         => {},
    MIN_PERL_VERSION => '5.006',
    CONFIGURE_REQUIRES => {
        'ExtUtils::MakeMaker' => '0',
        'Alien::libmariadbclient' => '0.01',
    },
    BUILD_REQUIRES => {
        'Test::More' => '0',
        'Alien::libmariadbclient' => '0.01',
    },
    PREREQ_PM => {
        'AnyEvent'             => '0',
        'Ref::Util'            => '0',
        'Sub::StrictDecl'      => '0',
        'AnyEvent::XSPromises' => '0',
        'Alien::libmariadbclient' => '0.01',
    },
    LIBS    => $makemaker_libs,
    INC     => $makemaker_inc,
    CCFLAGS   => $ccflags,
    LDDLFLAGS => $lddlflags,
    PERL_ARCHIVE_AFTER => join(' ', @archive_after),
    dist  => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
    clean => { FILES => [
        'MariaDB-NonBlocking-*',
        't/lib.pl',
        'deps/mariadb-connector-c-3.1.9-src',
    ] },
);



( run in 3.265 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )