File: Build.pm

package info (click to toggle)
libalien-wxwidgets-perl 0.69%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,220 kB
  • sloc: perl: 5,365; makefile: 19
file content (38 lines) | stat: -rw-r--r-- 763 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package My::Build;

use strict;
use base qw(Module::Build);
use Config;
use File::Spec;

our @ISA;
$main::NO_INIT = $main::NO_INIT; # no warnings...

sub awx_get_package {
    local $_ = $Config{osname};

    # Win32
    /MSWin32/ and return 'Win32';
    # MacOS X is slightly different...
    /darwin/ and return 'MacOSX_wx_config';
    # default
    return 'Any_wx_config';
}

BEGIN {
    my $package = 'My::Build';

    # iterate until fixed point
    for( ; !$main::NO_INIT; ) {
        my $full_package = 'My::Build::' . $package->awx_get_package;
        last if $package eq $full_package;

        my $file = $full_package . '.pm'; $file =~ s{::}{/}g;

        require $file;
        @ISA = ( $full_package );
        $package = $full_package;
    }
}

1;