1 |
use ExtUtils::MakeMaker; |
2 |
|
3 |
if ($] < 5.006) { |
4 |
print <<EOF; |
5 |
|
6 |
*** |
7 |
*** WARNING: This module is quite low-level and uses undocumented perl |
8 |
*** internals to do it's job. While it seems to work fine with perl-5.8, |
9 |
*** 5.7 and 5.6, it has not been tested with older versions. If it |
10 |
*** compiles and passes the testsuite, it should work. Otherwise you |
11 |
*** should either upgrade or contact the author, maybe it can be made to |
12 |
*** work... |
13 |
*** |
14 |
*** Marc Lehmann <pcg\@goof.com> |
15 |
*** |
16 |
|
17 |
EOF |
18 |
} |
19 |
|
20 |
$EVENT = eval { require Event }; |
21 |
|
22 |
WriteMakefile( |
23 |
dist => { |
24 |
PREOP => 'pod2text Coro.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
25 |
COMPRESS => 'gzip -9v', |
26 |
SUFFIX => '.gz', |
27 |
}, |
28 |
NAME => "Coro", |
29 |
VERSION_FROM => "Coro.pm", |
30 |
DIR => ['Coro', ($EVENT ? 'Event' : ())], |
31 |
PREREQ_PM => { |
32 |
Event => 0.83, # still, 0.83 and below have serious bugs(!) |
33 |
}, |
34 |
PM => { |
35 |
'Coro.pm' => '$(INST_LIBDIR)/Coro/Coro.pm', |
36 |
'Coro/State.pm' => '$(INST_LIBDIR)/Coro/State.pm', |
37 |
|
38 |
'Coro/MakeMaker.pm' => '$(INST_LIBDIR)/Coro/MakeMaker.pm', |
39 |
'Coro/CoroAPI.h' => '$(INST_LIBDIR)/Coro/CoroAPI.h', |
40 |
|
41 |
'Coro/Cont.pm' => '$(INST_LIBDIR)/Coro/Cont.pm', |
42 |
|
43 |
'Coro/Specific.pm' => '$(INST_LIBDIR)/Coro/Specific.pm', |
44 |
|
45 |
'Coro/Signal.pm' => '$(INST_LIBDIR)/Coro/Signal.pm', |
46 |
'Coro/Channel.pm' => '$(INST_LIBDIR)/Coro/Channel.pm', |
47 |
'Coro/Semaphore.pm' => '$(INST_LIBDIR)/Coro/Semaphore.pm', |
48 |
'Coro/RWLock.pm' => '$(INST_LIBDIR)/Coro/RWLock.pm', |
49 |
|
50 |
$EVENT ? ( |
51 |
'Event/Event.pm' => '$(INST_LIBDIR)/Coro/Event.pm', |
52 |
'Event/Handle.pm'=> '$(INST_LIBDIR)/Coro/Handle.pm', |
53 |
'Event/Socket.pm'=> '$(INST_LIBDIR)/Coro/Socket.pm', |
54 |
'Event/Util.pm' => '$(INST_LIBDIR)/Coro/Util.pm', |
55 |
) : (), |
56 |
}, |
57 |
); |
58 |
|
59 |
sub MY::postamble { |
60 |
<<EOF; |
61 |
|
62 |
# set \$VERSION in all modules |
63 |
setver: |
64 |
\$(PERL) -pi -e 's/^(\\s*\\\$\$VERSION\\s*=\\s*).*\$\$/\$\${1}\$(VERSION);/' *.pm Coro/*.pm |
65 |
|
66 |
EOF |
67 |
} |
68 |
|
69 |
|