ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Linux-AIO/Makefile.PL
Revision: 1.9
Committed: Thu Aug 25 06:04:11 2005 UTC (18 years, 8 months ago) by root
Content type: text/plain
Branch: MAIN
CVS Tags: rel-1_9, HEAD
Changes since 1.8: +5 -0 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 use ExtUtils::MakeMaker;
2    
3 root 1.3 use Config;
4    
5 root 1.8 print <<EOF;
6 root 1.3
7 root 1.8 WARNING: This module is architecture-dependent and will not likely work
8     on lesser-used architectures (see Changes). If the module (esp.
9     aio_read and aio_write) doesn't work, please report this and I'll
10     fix it for you. I promise ;)
11 root 1.3
12     EOF
13    
14     $Config{osvers} >= 2.4 or print <<EOF;
15    
16 root 1.4 WARNING: This module requires 64 bit file offset functionality only found
17 root 1.8 in linux-2.4 and later. You can still compile this module on
18     older linuxes, but it won't run.
19 root 1.3
20 root 1.8 DEVELOPERS: It is not difficult to get rid of this limitation, ask me and
21     I'll tell you what you need to change (and test, so I can add it!).
22 root 1.3
23     EOF
24    
25 root 1.2 my $mm = MM->new({
26 root 1.1 dist => {
27     PREOP => 'pod2text AIO.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;',
28     COMPRESS => 'gzip -9v',
29     SUFFIX => '.gz',
30     },
31     NAME => "Linux::AIO",
32     VERSION_FROM => "AIO.pm",
33 root 1.2 });
34 root 1.1
35     sub MY::postamble {
36     <<EOF;
37    
38     # set \$VERSION in all modules
39     setver:
40 root 1.3 \$(PERL) -pi -e 's/^(\\s*\\\$\$VERSION\\s*=\\s*).*\$\$/\$\${1}\$(VERSION);/' *.pm
41 root 1.1
42     EOF
43     }
44    
45 root 1.2 # now get rid of -fpic, because gcc can't use syscall'ed closures
46 root 1.5 # from within pic code on x86.
47    
48     use Config;
49    
50 root 1.7 if ($Config{cppsymbols} =~ /__i386=1/) {
51 root 1.5 for ($mm->{CCDLFLAGS}, $mm->{CCCDLFLAGS}, @{$mm->{RESULT}}) {
52     s/\B-f(pic|PIC)\b//g
53     }
54 root 1.9
55     # Put -O at the front so as not to change any existing optimisation level
56     # Need optimization of some form turned on to inline syscall() so that it
57     # sets the local errno
58     $mm->{OPTIMIZE} = '-O ' . $mm->{OPTIMIZE};
59 root 1.2 }
60    
61     $mm->flush;
62 root 1.1