[ANN] Rant 0.4.8

S

Stefan Lang

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

=3D=3D What's new in this release?

Incompatible changes:
* The filenames Rantfile.rb and rantfile.rb which
=C2=A0 were deprecated since the last release aren't recognized anymore.
=C2=A0 Use Rantfile, rantfile or root.rant instead.

=46ixes 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.

=46or 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... ;)

=3D=3D Installing Rant

You can install Rant as a RubyGem:
=C2=A0 =C2=A0 % gem install --remote rant

or download the package from=20
RubyForge(http://rubyforge.org/frs/?group_id=3D615)
and install with install.rb:
=C2=A0 =C2=A0 % ruby install.rb

=3D=3D Example Rantfile

=C2=A0 import "command"

=C2=A0 var :CFLAGS =3D> "-g -O2" # can be overridden from commandline

=C2=A0 gen Command, "foo", ["foo.o", "util.o"],
=C2=A0 =C2=A0 =C2=A0 "cc $[CFLAGS] -o $(name) $(prerequisites)"


The last two lines tell Rant, that the file foo depends on the files=20
foo.o and util.o and that foo can be built by running the command in=20
the last line ("cc =E2=80=A6") in a subshell. If at least one of the=20
following three conditions is met, foo will be rebuilt:=20

1. foo doesn=E2=80=99t exist.=20
2. foo.o or util.o changed since the last build of foo.=20
3. The command (most probably CFLAGS) changed since the last build
=C2=A0 =C2=A0of foo.

=3D=3D 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
=C2=A0 applications and libraries.
* Creating gzipped tar and zip archives =E2=80=94 without installing
=C2=A0 additional software.
* Optional recognition of file changes based on MD5 checksums instead
=C2=A0 of file modification times.
* Multiple buildfiles (e.g. one per directory).
* The rant-import command creates a monolithic rant script,
=C2=A0 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
=C2=A0 and mcs.

=2E.. and more, visit http://make.ruby-co.de

Rubyforge page:: http://rubyforge.org/projects/make/
Repository:: http://developer.berlios.de/svn/?group_id=3D5046

=2D-=20
Stefan
 
J

Joel VanderWerf

Stefan said:
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?
 
S

Stefan Lang

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
 
S

Stephan Mueller

Hi,

* Stefan Lang said:
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.
 
S

Stephan Mueller

* Stefan Lang said:
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.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

[ANN] Rant 0.5.0 0
[ANN] Rant 0.4.2 2
[ANN] Rant 0.4.6 2
[ANN] Rant 0.4.4 1
[ANN] Rant 0.4.0 3
[ANN] Rant 0.3.8 10
Rant 0.5.2 0
[ANN] Rant 0.5.4 6

Members online

Forum statistics

Threads
473,770
Messages
2,569,583
Members
45,075
Latest member
MakersCBDBloodSupport

Latest Threads

Top