summaryrefslogtreecommitdiff
path: root/bindings/perl/src/doxsubpp.pl
blob: 57ab4dddd344a88a0c50795422b3ad25fb32610e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use strict;
use warnings;
use ExtUtils::MakeMaker;

my $perl = $ARGV[0];
my $in   = $ARGV[1];
my $out  = $ARGV[2];

my $mm = ExtUtils::MakeMaker->new( {
    NAME => 'Libproxy',
    NEEDS_LINKING => 1,
} );

my $perl_include_path = $mm->{PERL_INC};
my @xsubinfo = split "\n", $mm->tool_xsubpp();

my $xsubppdir = (map{ my $foo = $_; $foo =~ s/XSUBPPDIR = //; $foo } grep{ m/^XSUBPPDIR =/ } @xsubinfo)[0];
my $xsubpp = "$xsubppdir/xsubpp";

my $xsubppargs = (map{ my $foo = $_; $foo =~ s/XSUBPPARGS = //; $foo } grep{ m/^XSUBPPARGS =/ } @xsubinfo)[0];

my $cmd = "$perl $xsubpp $xsubppargs -typemap typemap $in > $out";
system $cmd;