Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[ANN] Rant 0.4.8

1 view
Skip to first unread message

Stefan Lang

unread,
Oct 31, 2005, 3:44:24 PM10/31/05
to
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


Joel VanderWerf

unread,
Oct 31, 2005, 3:49:18 PM10/31/05
to
Stefan Lang wrote:

> 3. The command (most probably CFLAGS) changed since the last build
> of foo.

Interesting. How is that state stored between rant executions? Or am I
misunderstanding what 3 means?

--
vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407


Stefan Lang

unread,
Oct 31, 2005, 3:56:08 PM10/31/05
to
On Monday 31 October 2005 21:49, Joel VanderWerf wrote:
> Stefan Lang wrote:
> > 3. The command (most probably CFLAGS) changed since the last
> > build of foo.
>
> Interesting. How is that state stored between rant executions? Or
> am I misunderstanding what 3 means?

The MD5 checksum of the command string is calculated and then
stored in a file called .rant.meta in each directory containing
one ore more target files.

Regards,
Stefan

Stephan Mueller

unread,
Nov 1, 2005, 3:44:26 AM11/1/05
to
Hi,

* Stefan Lang <langs...@gmx.at> [051031 21:44]:

> Rant is a flexible build tool written entirely in Ruby,
> similar to Rake.

What are the differences between rant and rake? Can you explain the
advantages of rant over rake?

Thanks in advance :)

Steph.

Stefan Lang

unread,
Nov 1, 2005, 5:29:30 AM11/1/05
to

Basic syntax is (nearly) the same.
To quote myself, from the anouncement ;)

> 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... ;)

Regards,
Stefan


Stephan Mueller

unread,
Nov 1, 2005, 6:17:29 AM11/1/05
to
* Stefan Lang <langs...@gmx.at> [051101 11:29]:

> Basic syntax is (nearly) the same.
> To quote myself, from the anouncement ;)

oops, shame on me!

Anyway, thank you for pointing me to the right direction.


Cheers,

Steph.

Stu George

unread,
Nov 1, 2005, 9:26:10 AM11/1/05
to
On Tue, 1 Nov 2005 05:44:24 +0900, Stefan Lang <langs...@gmx.at>
wrote:

>Rant is a flexible build tool written entirely in Ruby,
>similar to Rake.
>

thanks Stefan! I use rant every day and its superb. Have not
ran into any problems since 0.4.0. I really appreciate the
work done.

- Stu : Email via http://public.xdi.org/=stu

0 new messages