This file is indexed.

/usr/bin/use-devel-checklib is in libdevel-checklib-perl 0.95-1.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
#!/usr/bin/perl -w

eval 'exec /usr/bin/perl -w -S $0 ${1+"$@"}'
    if 0; # not running under some shell
# $Id: use-devel-checklib,v 1.9 2008/03/12 19:52:50 drhyde Exp $

use strict;

$/ = undef;

use File::Spec;
use Devel::CheckLib;

my @files = grep { -f $_ } qw(Makefile.PL Build.PL);
push @files, 'Makefile.PL' unless(@files);

my @libs = @ARGV;

mkdir 'inc';
mkdir 'inc/Devel';

open(CHECKLIBPM, $INC{'Devel/CheckLib.pm'}) ||
    die("Can't read $INC{'Devel/CheckLib.pm'}: $!");
(my $checklibpm = <CHECKLIBPM>) =~ s/package Devel::CheckLib/package #\nDevel::CheckLib/;
close(CHECKLIBPM);
open(CHECKLIBPM, '>'.File::Spec->catfile(qw(inc Devel CheckLib.pm))) ||
    die("Can't write inc/Devel/CheckLib.pm: $!");
print CHECKLIBPM $checklibpm;
close(CHECKLIBPM);

print "Copied Devel::CheckLib to inc/ directory\n";

foreach my $file (@files) {
    open(FILE, $file) || next;
    my $contents = <FILE>;
    close(FILE);
    open(FILE, ">$file") || die("Can't write $file\n");
    print FILE q{use lib qw(inc);
use Devel::CheckLib;

# Prompt the user here for any paths and other configuration

check_lib_or_exit(
    # fill in what you prompted the user for here
    lib => [qw(}.join(' ', @libs).q{)]
);
};
    print FILE "\n\n$contents";
    close(FILE);
    print "Updated/created $file\n";
}

open(MANIFEST, 'MANIFEST') || warn("Couldn't read MANIFEST, will create one\n");
my $manifest = <MANIFEST>;
close(MANIFEST);
open(MANIFEST, '>MANIFEST') || die("Couldn't write MANIFEST\n");
print MANIFEST "inc/Devel/CheckLib.pm\n$manifest";
close(MANIFEST);
print "Updated/created MANIFEST\n";

=head1 NAME

use-devel-checklib - a script to package Devel::CheckLib with your code.

=head1 DESCRIPTION

This script, when run in the directory in which your shiny new module
lives, will bundle Devel::CheckLib in the C<inc> directory, and update
your Makefile.PL (or Build.PL) appropriately.  If neither exists, it
will create a Makefile.PL.

=head1 SYNOPSIS

    use-devel-checklib list of libraries

=head1 WARNINGS, BUGS and FEEDBACK

This script has not been thoroughly tested.  You should check by
hand that it has done what you expected after running it.

If you use Module::Build::Compat to write a Makefile.PL, then you
will need to re-run this script whenever you have generated a new
Makefile.PL.

I welcome feedback about my code, including constructive criticism.
Bug reports should be made using L<http://rt.cpan.org/> or by email.

=head1 SEE ALSO

L<Devel::CheckLib>

=head1 AUTHOR

David Cantrell E<lt>F<david@cantrell.org.uk>E<gt>

=head1 COPYRIGHT and LICENCE

Copyright 2007 David Cantrell

This software is free-as-in-speech software, and may be used,
distributed, and modified under the same conditions as perl itself.

=head1 CONSPIRACY

This module is also free-as-in-mason software.

=cut