aboutsummaryrefslogtreecommitdiffstats
path: root/Build.PL
blob: 45582fed2db23d2e578477c507b73bb3147ade8d (plain)
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
use utf8;
use 5.010;
use strict;
use warnings;
use Module::Build;

my $gtk  = grep { /^--?gtk3?\z/ } @ARGV;

my $builder = Module::Build->new(

    module_name       => 'WWW::FairViewer',
    license           => 'perl',
    dist_author       => q{Jesus E. <echo aGVja3llbEBoeXBlcmJvbGEuaW5mbw== | base64 -d>},
    dist_version_from => 'lib/WWW/FairViewer.pm',
    release_status    => 'stable',

    build_requires => {
                       'Test::More' => 0,
                      },

    extra_manify_args => { utf8 => 1 },

    configure_requires => {
                           'Module::Build' => 0,
                          },

    get_options => {
        'gtk3' => {
                   type  => '!',
                   store => \$gtk,
                  },
    },

    requires => {
        'perl'                  => 5.016,
        'Data::Dump'            => 0,
        'File::Spec'            => 0,
        'File::Spec::Functions' => 0,
        'File::Path'            => 0,
        'Getopt::Long'          => 0,
        'HTTP::Request'         => 0,
        'JSON'                  => 0,
        'Encode'                => 0,
        'Memoize'               => 0,
        'MIME::Base64'          => 0,
        'List::Util'            => 0,
        'LWP::UserAgent'        => 0,
        'LWP::Protocol::https'  => 0,
        'Term::ANSIColor'       => 0,
        'Term::ReadLine'        => 0,
        'Text::ParseWords'      => 0,
        'Text::Wrap'            => 0,
        'URI::Escape'           => 0,

        $gtk
        ? (
           'Gtk3'           => 0,
           'File::ShareDir' => 0,
           'Storable'       => 0,
           'Digest::MD5'    => 0,
          )
        : (),
    },

    recommends => {
                   'LWP::UserAgent::Cached'  => 0,    # local cache support
                   'Term::ReadLine::Gnu'     => 0,    # for better STDIN support (+history)
                   'JSON::XS'                => 0,    # faster JSON to HASH conversion
                   'Unicode::GCString'       => 0,    # fixed-width formatting
                  },

    add_to_cleanup     => ['WWW-FairViewer-*'],
    create_makefile_pl => 'traditional',
);

$builder->script_files(
                       ['bin/fair-viewer',
                        ($gtk ? ('bin/gtk-fair-viewer') : ()),
                       ]
                      );

$builder->share_dir('share') if $gtk;
$builder->create_build_script();