1 |
use ExtUtils::MakeMaker; |
2 |
# See lib/ExtUtils/MakeMaker.pm for details of how to influence |
3 |
# the contents of the Makefile that is written. |
4 |
|
5 |
my $ver = `fusermount -V`; |
6 |
my $ver2 = `mount_fusefs -V`; |
7 |
$ver =~ s/^.*?version:\s+//; |
8 |
$ver2 =~ s/^.*?version:\s+//; |
9 |
if (! $ver && ! $ver2) { |
10 |
# make CPANPLUS happy and don't report errors if fuse isn't installed |
11 |
die("No support for os: $^O\n", |
12 |
"You need to have fuse-dev (or similar) package installed in order to install this module\n" |
13 |
); |
14 |
} |
15 |
if ($ver && $ver + 0 < 2.5) { |
16 |
die "Fuse perl bindings need Linux fuse version 2.5 or never\n"; |
17 |
} elsif ($ver2 && $ver2 + 0 < 0.3) { |
18 |
die "Fuse perl bindings need FreeBSD fuse version 0.3 or never\n"; |
19 |
} else { |
20 |
warn "fuse version found: ", $ver || $ver2, "\n"; |
21 |
} |
22 |
|
23 |
my $inc = '-DFUSE_USE_VERSION=25 ' . `pkg-config --cflags fuse` || '-I ../include -D_FILE_OFFSET_BITS=64'; |
24 |
my $obj = `pkg-config --libs fuse` || '-lfuse'; |
25 |
|
26 |
WriteMakefile( |
27 |
'NAME' => 'Fuse', |
28 |
'VERSION_FROM' => 'Fuse.pm', # finds $VERSION |
29 |
'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 |
30 |
($] >= 5.005 ? ## Add these new keywords supported since 5.005 |
31 |
(ABSTRACT_FROM => 'Fuse.pm', # retrieve abstract from module |
32 |
AUTHOR => 'Mark Glines <mark@glines.org>') : ()), |
33 |
'LIBS' => [''], # e.g., '-lm' |
34 |
'DEFINE' => '-Wall -g -ggdb', # e.g., '-DHAVE_SOMETHING' |
35 |
# Insert -I. if you add *.h files later: |
36 |
'INC' => $inc, # e.g., '-I/usr/include/other' |
37 |
# Un-comment this if you add C files to link with later: |
38 |
'OBJECT' => "$obj Fuse.o -lpthread", # link all the C files too |
39 |
); |
40 |
|
41 |
sub MY::postamble { |
42 |
return <<'MAKE_MORE'; |
43 |
|
44 |
sf: |
45 |
svn2cvs.pl file:///home/dpavlin/private/svn/fuse/perl-llin :ext:dpavlin@fuse.cvs.sourceforge.net:/cvsroot/fuse perl |
46 |
|
47 |
MAKE_MORE |
48 |
}; |