From: Stefan Lang Date: 2005-11-01T05:44:24+09:00 Subject: [ANN] Rant 0.4.8 Rant is a flexible build tool written entirely in Ruby, similar to Rake. == What's new in this release? Incompatible changes: * The filenames Rantfile.rb and rantfile.rb which   were deprecated since the last release aren't recognized anymore.   Use Rantfile, rantfile or root.rant instead. Fixes and minor improvements: * Besides others fixes, a fix for latest ruby 1.9 and one for ruby 1.8.4 preview1. New features: * rant-import supports --zip (-z) option for zip-compression now. * Tasks with command change recognition. * Improved rule support. For more details read http://make.rubyforge.org/files/NEWS.html I have also written a Rake/Rant comparison. It's available under http://make.rubyforge.org/files/doc/rant_vs_rake_rdoc.html (I can't guarantee that it is 100% objective... ;) == Installing Rant You can install Rant as a RubyGem:     % gem install --remote rant or download the package from RubyForge(http://rubyforge.org/frs/?group_id=615) and install with install.rb:     % ruby install.rb == Example Rantfile   import "command"   var :CFLAGS => "-g -O2" # can be overridden from commandline   gen Command, "foo", ["foo.o", "util.o"],       "cc $[CFLAGS] -o $(name) $(prerequisites)" The last two lines tell Rant, that the file foo depends on the files foo.o and util.o and that foo can be built by running the command in the last line ("cc …") in a subshell. If at least one of the following three conditions is met, foo will be rebuilt: 1. foo doesn’t exist. 2. foo.o or util.o changed since the last build of foo. 3. The command (most probably CFLAGS) changed since the last build    of foo. == More about Rant The equivalent to a Makefile for make is the Rantfile. An Rantfile is actually a valid Ruby script that is read by the rant command. Rant currently features: * Defining custom tasks * Automated packaging, testing and RDoc generation for Ruby   applications and libraries. * Creating gzipped tar and zip archives — without installing   additional software. * Optional recognition of file changes based on MD5 checksums instead   of file modification times. * Multiple buildfiles (e.g. one per directory). * The rant-import command creates a monolithic rant script,   so you don't depend on an rant installation anymore. * Dependency checking for C/C++ source files. * Tasks with command change recognition. * Primitive support for compiling C# sources portably with csc, cscc   and mcs. ... and more, visit http://make.ruby-co.de Rubyforge page:: http://rubyforge.org/projects/make/ Repository:: http://developer.berlios.de/svn/?group_id=5046 -- Stefan