/
Construct.PL
53 lines (45 loc) · 1.03 KB
/
Construct.PL
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
# Construct.PL for AutoCons.
# Check for stupid mistakes.
use strict;
# Use a "boxed" AutoCons by default.
use lib './plib';
use AutoCons;
# I need info about your perl.
use Config;
# Check for cons.
my(@path) = split /$Config{'path_sep'}/, $ENV{'PATH'};
foreach(@path) {
if (-f "$_/cons") {
use vars qw($cons);
$cons = 1;
}
}
unless ($cons) {
do("plib/AutoCons/AC.pm");
my $yn = Prompt("I cannot find cons. Should I install it now?\n");
if ($yn eq "y") {
mkdir "pscripts" if (! -d "pscripts");
use File::Copy;
File::Copy::syscopy("cons-2.2.0/cons", "pscripts/cons")
|| die "Cannot prepare Cons sources: $!";
chmod 0755, "pscripts/cons";
print "To build, use pscripts/cons.\n";
}
}
# Write plib/AutoCons/Lang.pm.
chdir "plib/AutoCons";
do("Lang.pm.PL");
chdir "../..";
# Write Construct.PL.
WriteCS(
Name => "AutoCons",
Version => "0.02_01",
NoRec => 1, # Don't build examples.
PreReqPMs => [
"strict",
"Config",
"Test::Harness 2",
"ExtUtils::Manifest",
"File::Find"
]
);