#!/usr/bin/perl
=begin metadata
Name: make
Description: maintain related programs and files
Author: Nick Ing-Simmons, nick@ni-s.u-net.com
License:
=end metadata
=cut
use 5.005; # Need look-behind assertions
use Getopt::Std;
use Make;
getopts('gnpf:j:C:');
my @opt = ($opt_g,$opt_f,$opt_j,$opt_C,$opt_p,$opt_n);
my $info = Make->new(GNU => $opt_g,
Override => { MAKE => "$^X $0" },
Makefile => $opt_f,
Jobs => $opt_j,
Dir => $opt_C);
$info->Print(@ARGV) if ($opt_p);
if ($opt_n)
{
$info->Script(@ARGV);
}
else
{
$info->Make(@ARGV);
}
=head1 NAME
make - maintain related programs and files
=head1 SYNOPSIS
make [-n] [-g] [-p] [-C directory] targets
=head1 DESCRIPTION
Performs the same function as make(1) but is written entirely in perl.
A subset of GNU make extensions is supported.
For details see L<Make> for the underlying perl module.
=head1 BUGS
=over 4
=item *
No B<-k> flag
I strongly suspect there are lots more.
=back
=head1 SEE ALSO
L<Make>, make(1)
=head1 AUTHOR
Nick Ing-Simmons
=cut