1#!perl -w
2
3###############################################################################
4##                                                                           ##
5##    Copyright (c) 1995 - 2013 by Steffen Beyer.                            ##
6##    All rights reserved.                                                   ##
7##                                                                           ##
8##    This package is free software; you can redistribute it                 ##
9##    and/or modify it under the same terms as Perl itself.                  ##
10##                                                                           ##
11###############################################################################
12
13use strict;
14
15use ExtUtils::MakeMaker;
16
17use Config;
18
19WriteMakefile(
20    'NAME'              => 'Bit::Vector',
21    'VERSION_FROM'      => 'Vector.pm',
22    'PREREQ_PM'         =>
23                              {
24                                  'Carp::Clan' => 5.3,
25                                  'Storable'   => 2.21
26                              },
27    'OBJECT'            => '$(O_FILES)',
28#   ($] >= 5.005 ?
29#       ('ABSTRACT'     => 'Efficient base class implementing bit vectors',
30#        'AUTHOR'       => 'Steffen Beyer (STBEY@cpan.org)') : ()),
31#   ($] >= 5.005 && $^O eq 'MSWin32' && $Config{archname} =~ /-object\b/i ?
32#       ('CAPI'         => 'TRUE') : ()),
33    'dist'              => { COMPRESS => "gzip -9", SUFFIX => "gz" }
34);
35
36my $patchlevel = $0;
37
38$patchlevel =~ s![^/\\]*$!patchlevel.h!;
39
40my $PATCHLEVEL = $Config{'PATCHLEVEL'} || $Config{'patchlevel'} || substr($],2,3);
41my $SUBVERSION = $Config{'SUBVERSION'} || $Config{'subversion'} || substr($],5) || 0;
42
43if (open(PATCHLEVEL, ">$patchlevel"))
44{
45    print "Writing $patchlevel for $^X ($])\n";
46    printf PATCHLEVEL "#define PATCHLEVEL %d\n", $PATCHLEVEL;
47    printf PATCHLEVEL "#define SUBVERSION %d\n", $SUBVERSION;
48    close(PATCHLEVEL);
49}
50else
51{
52    warn "Oops: Couldn't write file '$patchlevel': $!\n";
53    warn "However, you might succeed in building this module anyway;\n";
54    warn "Just try it!\n";
55}
56
57__END__
58
59