… | |
… | |
2 | |
2 | |
3 | use Config; |
3 | use Config; |
4 | |
4 | |
5 | require "autoconf.pm"; |
5 | require "autoconf.pm"; |
6 | |
6 | |
|
|
7 | if ($^O =~ /freebsd/i) { |
|
|
8 | print <<EOF; |
|
|
9 | |
|
|
10 | This package seems to deadlock under FreeBSD. As documentation on FreeBSD |
|
|
11 | threading is sorely lacking and confusing, I'll just call FreeBSD broken |
|
|
12 | with regards to threading. |
|
|
13 | |
|
|
14 | If you get it to work, tell me how (maybe you need to specify magical link |
|
|
15 | flags despite man pthread telling me otherwise, maybe yo need special |
|
|
16 | library, maybe you need magical preprocessor symbols, maybe you need to |
|
|
17 | recompile or re-link perl with threads enabled (a bad idea) - I have no |
|
|
18 | idea, and I no longer care). Or maybe I do, but am frustrated about the |
|
|
19 | continous "we are different=broken" attitude. |
|
|
20 | |
|
|
21 | EOF |
|
|
22 | } |
|
|
23 | |
7 | autoconf::run_script(); |
24 | autoconf::run_script() |
|
|
25 | and die "\nconfigure failed, check it's output above and autoconf/config.log\n\n"; |
8 | |
26 | |
9 | my $mm = MM->new({ |
27 | my $mm = MM->new({ |
10 | dist => { |
28 | dist => { |
11 | PREOP => 'pod2text AIO.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
29 | PREOP => 'pod2text AIO.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
12 | COMPRESS => 'gzip -9v', |
30 | COMPRESS => 'gzip -9v', |
13 | SUFFIX => '.gz', |
31 | SUFFIX => '.gz', |
14 | }, |
32 | }, |
15 | NAME => "IO::AIO", |
33 | NAME => "IO::AIO", |
16 | VERSION_FROM => "AIO.pm", |
34 | VERSION_FROM => "AIO.pm", |
17 | LIBS => ['-lpthread -lrt', '-lpthread', '-lpthreads', ''], |
35 | LIBS => ['-lpthread -lrt', '-lpthread', '-lpthreads', ''], |
|
|
36 | clean => { FILES => "autoconf/config.h autoconf/config.log autoconf/config.status" }, |
18 | }); |
37 | }); |
19 | |
38 | |
20 | $mm->flush; |
39 | $mm->flush; |
21 | |
40 | |