NAME
Slay::MakerRule - a class for making things with dependencies
SYNOPSIS
use strict ;
use Slay::MakerRule ;
$t1 = Slay::MakerRule->new( { rule => [
\@target, ## Filenames made by \@actions
\@dependencies, ## Files or Slay::MakerRule objects
\@actions, ## Command lines or sub{}
] }
) ;
Any or all of the three parameters may be scalars if there is only one thing to pass:
$t1 = Slay::MakerRule->new( { rule => [
$target,
$dependency,
$action,
] }
) ;
New can also be called with separate hash elements for each part:
$t1 = Slay::MakerRule->new( {
PATS => \@target, ## Filenames made by \@actions
DEPS => \@dependencies, ## Files or Slay::MakerRule objects
ACTS => \@actions, ## Command lines or sub{}
] }
) ;
DESCRIPTION
- var_expand_dep($dependency,$target,$matches)
-
Static function, mostly for internal use. Called by "check" to expand variables inside a dependency. Returns the expanded string.
Recognized expansions:
- check
-
Builds the queue of things to make if this target or its dependencies are out of date.
- exec
-
Executes the action(s) associated with this rule.
- targets
-
returns either ( target1, target2, ... ) or "target1, target2, ..." depending on context.
- matches
-
Checks the target list to see if it matches the target passed in.