The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

daiku - make(1) for Perl

SYNOPSIS

> cat Daikufile
task 'all' => 'foo';
file 'foo' => 'foo.o' => sub {
    system "gcc -o foo foo.o";
};
rule '.o' => '.c' => sub {
    my ($engine, $dist, $src) = @_;
    system "gcc -c $src -o $dist";
};

> daiku all
[LOG] Building Task: all
[LOG] Processing file: foo
[LOG] Building SuffixRule: foo.o
[LOG]   Building rule: foo.o
[LOG]   Building file: foo(0)

ARGUMENTS

target

The target task name to build. If omitted, it builds the task named default.

target[arg1 arg2 ...]

You can specify arguments of the task in brackets.

For example,

> cat Daikufile
task test => sub {
    my ($task, @args) = @_;
    sh qw(prove -lr), @args;
};

> daiku 'test[t/hoge/fuga.t xt/piyo.t]'

Arguments are separated by spaces (NOT commas).

OPTIONS

-f, --file

Use the specifiled file as Daikufile.

-C, --directory

Change to the specified directory before reading the Daikufile or doing anything else.

-h, --help

Show this help message.

-v, --version

Show Daiku version.

-T, --tasks

Display tasks.

SEE ALSO

make(1), rake(1)

AUTHOR

Tokuhiro Matsuno <tokuhirom AAJKLFJEF GMAIL COM>

LICENSE

Copyright (C) Tokuhiro Matsuno

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.