TinyMake

TinyMake is a minimalist build language, similar in purpose to make and ant.
Download

TinyMake Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Walter Higgins
  • Publisher web site:
  • http://search.cpan.org/~walterh/TinyMake-0.06/TinyMake.pm

TinyMake Tags


TinyMake Description

TinyMake is a minimalist build language, similar in purpose to make and ant. TinyMake is a minimalist build language, similar in purpose to make and ant.SYNOPSIS use TinyMake ':all'; # a file statement without a rule is like a symbolic target file all => ; file codeGen => , sub { # generate code here sh "touch $target"; } ; file compile => , sub { # compile code here sh "touch $target"; } ; file dataLoad => , sub { # load data here sh "touch $target" } ; file test => , sub { # test code here sh "touch $target"; } ; # a file statement without prerequisites will be executed # if the target doesn't exist. file clean => sub { # perform cleanup here sh "rm compile codeGen dataLoad test" } ; make @ARGVThis Perl Module allows you to define file-based dependencies similar to how make works.Rather than placing the build rules in a separate Makefile or build.xml, the build rules are declared using standard Perl syntax. TinyMake is effectively an inline domain-specific language. Using make you might write a makefile that looks like this... test: compile dataLoad # test touch test codeGen: database.spec # generate code touch codeGen compile: codeGen # compile code touch compile dataLoad: codeGen # load data touch dataLoad database.spec: # source fileThe equivalent perl code using TinyMake would look like this... use TinyMake ':all'; # some perl code . . . file test => , sub { # test `touch test`; } ; file codeGen => "database.spec", sub { # generate code `touch codeGen`; } ; # some more perl code . . . file compile => "codeGen", sub { # compile code `touch compile`; } ; file dataload => "codeGen", sub { # load data `touch dataLoad`; } ; make @ARGV; Requirements: · Perl


TinyMake Related Software