From: Stefan Lang Date: 2005-04-18T06:13:23+09:00 Subject: [ANN] Rant 0.3.4 Rant is a flexible build tool written entirely in Ruby, similar to Rake. == What's new in this release? * Installation with install.rb installs .cmd files on Windows. * Sharing variables between Rantfiles * Convenient file selection * Rules * Bugfixes == 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. * Primitive support for compiling C# sources portably with csc, cscc � and mcs. * Multiple buildfiles (e.g. one per directory). * A configure plugin for easy environment and build-parameter � checking (but not like autoconf!) which saves data in a yaml file. * The rant-import command creates a monolithic rant script, � so you don't depend on an rant installation anymore. As programmers usually want to see code, here is a short Rantfile: # var/ENV mapping var.env %w(CC CFLAGS) # variable CC defaults to "cc" var :CC => "cc" # ignore CVS directories and files ending in ~ var[:ignore] = ["CVS", /~$/] gen Rule, :o => :c do |t| sys "#{var :CC} #{var :CFLAGS} -c -o #{t.name} #{t.source}" end desc "Remove compiler products." task :clean do sys.rm_f sys["*.o", "*.a"] end Running rant in the directory of this file: $ rant --tasks rant clean # Remove compiler products. $ rant a.o cc -c -o a.o a.c $ rant clean rm -f a.o $ rant a.o CC=gcc gcc -c -o a.o a.c == 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 == Resources Current docs:: http://make.rubyforge.org Rubyforge page:: http://rubyforge.org/projects/make/