Update Socket to CPAN version 2.016
[perl.git] / cpan / libnet / Makefile.PL
1 #!perl
2 #===============================================================================
3 #
4 # Makefile.PL
5 #
6 # DESCRIPTION
7 #   Makefile creation script.
8 #
9 # COPYRIGHT
10 #   Copyright (C) 2014 Steve Hay.  All rights reserved.
11 #
12 # LICENCE
13 #   You may distribute under the terms of either the GNU General Public License
14 #   or the Artistic License, as specified in the LICENCE file.
15 #
16 #===============================================================================
17
18 use 5.008001;
19
20 use strict;
21 use warnings;
22
23 use ExtUtils::MakeMaker 6.64;
24 use ExtUtils::MakeMaker qw(WriteMakefile);
25
26 #===============================================================================
27 # INITIALIZATION
28 #===============================================================================
29
30 our($CfgFile, $CfgPath);
31
32 BEGIN {
33     $CfgFile = 'libnet.cfg';
34     $CfgPath = "Net/$CfgFile";
35 }
36
37 #===============================================================================
38 # MAIN PROGRAM
39 #===============================================================================
40
41 MAIN: {
42     my %prereq_pms = ();
43     $prereq_pms{'Convert::EBCDIC'} = '0.06' if $^O eq 'os390';
44
45     WriteMakefile(
46         NAME     => 'Net',
47         DISTNAME => 'libnet',
48         ABSTRACT => 'Collection of network protocol modules',
49         AUTHOR   => 'Graham Barr <gbarr@pobox.com>, Steve Hay <shay@cpan.org>',
50         LICENSE  => 'perl_5',
51         VERSION  => '1.27',
52
53         META_MERGE => {
54             'meta-spec' => {
55                 version => 2
56             },
57
58             resources => {
59                 repository => {
60                     type => 'git',
61                     url  => 'https://github.com/steve-m-hay/perl-libnet.git'
62                 }
63             },
64
65             optional_features => {
66                 APOP => {
67                     description => 'APOP support',
68                     prereqs => {
69                         runtime => {
70                             requires => {
71                                 'Digest::MD5' => '0'
72                             }
73                         }
74                     }
75                 },
76
77                 AUTH => {
78                     description => 'AUTH support',
79                     prereqs => {
80                         runtime => {
81                             requires => {
82                                 'Authen::SASL' => '0',
83                                 'MIME::Base64' => '0'
84                             }
85                         }
86                     }
87                 }
88             }
89         },
90
91         MIN_PERL_VERSION => '5.008001',
92
93         CONFIGURE_REQUIRES => {
94             'ExtUtils::MakeMaker' => '6.64',
95             'Getopt::Std'         => '0',
96             'IO:File'             => '0',
97             'perl'                => '5.008001',
98             'strict'              => '0',
99             'vars'                => '0',
100             'warnings'            => '0'
101         },
102
103         TEST_REQUIRES => {
104             'Cwd' => '0'
105         },
106
107         PREREQ_PM => {
108             %prereq_pms,
109             'Carp'           => '0',
110             'Errno'          => '0',
111             'Exporter'       => '0',
112             'Fcntl'          => '0',
113             'File::Basename' => '0',
114             'FileHandle'     => '0',
115             'IO::Select'     => '0',
116             'IO::Socket'     => '1.05',
117             'POSIX'          => '0',
118             'Socket'         => '1.3',
119             'Symbol'         => '0',
120             'Time::Local'    => '0',
121             'strict'         => '0',
122             'vars'           => '0'
123         },
124
125         INSTALLDIRS => 'perl',
126
127         realclean => {
128             FILES => $CfgFile
129         },
130
131         dist => {
132             PREOP   => 'find $(DISTVNAME) -type d -print|xargs chmod 0755 && ' .
133                        'find $(DISTVNAME) -type f -print|xargs chmod 0644',
134             TO_UNIX => 'find $(DISTVNAME) -type f -print|xargs dos2unix'
135         }
136     );
137 }
138
139 #===============================================================================
140 # MAKEMAKER OVERRIDES
141 #===============================================================================
142
143 sub MY::post_initialize {
144     my $self = shift;
145     return '' if $self->{PERL_CORE};
146     system(($^O eq 'VMS' ? 'mcr ': ()), $^X, 'Configure') unless -f $CfgFile;
147     $self->{PM}{$CfgFile} = $self->catfile('$(INST_LIBDIR)',$CfgPath);
148     return '';
149 }
150
151 #===============================================================================