Rake, Rant, A-A-P

I'd like to start working with C++ again. What's held me back is not
    wanting to mess around with configure + make again.

    I'm casting about for a new build tool that will work on different
    platforms, and I think this would be a good time to learn Ruby.

    I'm a confused about the difference between Rake and Rant. I'd like to
    build C++ primarily, so it would be nice if the build tool knew about
    various C++ tasks, wasn't totally Ruby oriented.

    A-A-P appeals to be because it has a concept of Recipes. A recipe for a
    GUI app would build bundles on OS X, and resource files on Win32. It
    doesn't appeal to me because it has a domain specific language.

    Specific questions:
    
        * What are the differences between Rant and Rake?
        * How does Ruby compare to something like SCons or A-A-P?

    Thank you.

···

--
Alan Gutierrez - alan@engrm.com
    - http://engrm.com/blogometer/index.html
    - http://engrm.com/blogometer/rss.2.0.xml

This tool has nothing to do with Ruby, but you might want to consider
MPC. It generates makefiles that are appropriate for specific
platforms. See http://www.ociweb.com/products/mpc\.

···

On 9/30/05, alan@agtrz.com <alan@agtrz.com> wrote:

    I'd like to start working with C++ again. What's held me back is not
    wanting to mess around with configure + make again.

    I'm casting about for a new build tool that will work on different
    platforms, and I think this would be a good time to learn Ruby.

--
R. Mark Volkmann
Partner, Object Computing, Inc.

alan@agtrz.com a écrit :

    I'd like to start working with C++ again. What's held me back is not
    wanting to mess around with configure + make again.

    I'm casting about for a new build tool that will work on different
    platforms, and I think this would be a good time to learn Ruby.

    I'm a confused about the difference between Rake and Rant. I'd like to
    build C++ primarily, so it would be nice if the build tool knew about
    various C++ tasks, wasn't totally Ruby oriented.

    A-A-P appeals to be because it has a concept of Recipes. A recipe for a
    GUI app would build bundles on OS X, and resource files on Win32. It
    doesn't appeal to me because it has a domain specific language.

    Specific questions:
    
        * What are the differences between Rant and Rake?

Rake and Rant are roughly the same. Differences appear mainly when
considering more advanced features like the way they manage rules. Rake
is considered mature and its core features won't change much in the
future. Rant is not 1.0 yet and there are sometimes incompatible changes
from version to version.

IMO Rant has a far more complete toolset like for example a dependency
analyser for C/C++. And its export feature is worth to be considered.

        * How does Ruby compare to something like SCons or A-A-P?

This is a trap! :wink: What do you ask exactly? A comparison between ruby
and python? Or comparison between Rake/Rant and Scons/A-A-P?

If it's the second question, then I'd answer I prefer Rake/Rant mainly
because you use them with Ruby.

···

--
Lionel Thiry

Personal web site: http://users.skynet.be/lthiry/

   I'd like to start working with C++ again. What's held me back is not
   wanting to mess around with configure + make again.

I can symphathize.

   I'm casting about for a new build tool that will work on different
   platforms, and I think this would be a good time to learn Ruby.

   I'm a confused about the difference between Rake and Rant. I'd like to
   build C++ primarily, so it would be nice if the build tool knew about
   various C++ tasks, wasn't totally Ruby oriented.

(I've used rake for a couple of small projects and I've never used Rant, so
take that into consideration). I know that Rake is not just oriented towards
Ruby. Though it's written in Ruby people use Rake for building Java
projects, for example. I used Rake to build for an obscure HDL simulator. I
think rake would make a great make replacement in the C++ domain. As far
as 'knowing' about various C++ build tasks, perhaps that is something that
will happen via people posting rake 'recipes'? Maybe people can contribute
some generic rake functions that would be useful in different domains?

   A-A-P appeals to be because it has a concept of Recipes. A recipe for a
   GUI app would build bundles on OS X, and resource files on Win32. It
   doesn't appeal to me because it has a domain specific language.

Never heard of A-A-P, so I can't comment.

Phil

···

In article <slrndjq7mr.3ba.alan@agtrz.com>, <alan@agtrz.com> wrote:

* Lionel Thiry <lthiryidontwantspams@skynetnospam.be> [2005-09-30 11:12]:

alan@agtrz.com a écrit :
> I'd like to start working with C++ again. What's held me back is not
> wanting to mess around with configure + make again.
>
> I'm casting about for a new build tool that will work on different
> platforms, and I think this would be a good time to learn Ruby.
>
> I'm a confused about the difference between Rake and Rant. I'd like to
> build C++ primarily, so it would be nice if the build tool knew about
> various C++ tasks, wasn't totally Ruby oriented.

> A-A-P appeals to be because it has a concept of Recipes. A recipe for a
> GUI app would build bundles on OS X, and resource files on Win32. It
> doesn't appeal to me because it has a domain specific language.

> Specific questions:

> * What are the differences between Rant and Rake?

Rake and Rant are roughly the same. Differences appear mainly when
considering more advanced features like the way they manage rules. Rake
is considered mature and its core features won't change much in the
future. Rant is not 1.0 yet and there are sometimes incompatible changes
from version to version.

IMO Rant has a far more complete toolset like for example a dependency
analyser for C/C++. And its export feature is worth to be considered.

    Thanks. This is a good answer for me. I'm hearing that Rant is
    more of a general purpose build tool, while Rake is focused on
    Ruby packages.

> * How does Ruby compare to something like SCons or A-A-P?
>

This is a trap! :wink: What do you ask exactly? A comparison between ruby
and python? Or comparison between Rake/Rant and Scons/A-A-P?

    I know, it sounds like a troll doesn't it? The work "recipe" on
    the A-A-P web site lept out at me. That is a great concept.

    The site said A-A-P worked with Ruby, but I'm finding that it's
    really a Python joint.
   
    Don't want to learn a DSL, like Jam. Think it's better to have a
    language that has a life outside of builds.

If it's the second question, then I'd answer I prefer Rake/Rant mainly
because you use them with Ruby.

    I want to hack through some of the Advanced C++ series. The
    prospect of GNU configure + Make kept me away. Build systems
    for C++ are very tricky, and I don't much like IDEs.

    Since it's something of a lark, if I could do build
    configuration in Ruby, it would take away some of the tedium.

    Thinking Rant now. Cheers.

···

--
Alan Gutierrez - alan@engrm.com
    - http://engrm.com/blogometer/index.html
    - http://engrm.com/blogometer/rss.2.0.xml

* Phil Tomson <ptkwt@aracnet.com> [2005-09-30 17:37]:

> I'd like to start working with C++ again. What's held me back is not
> wanting to mess around with configure + make again.

I can symphathize.

>
> I'm casting about for a new build tool that will work on different
> platforms, and I think this would be a good time to learn Ruby.
>
> I'm a confused about the difference between Rake and Rant. I'd like to
> build C++ primarily, so it would be nice if the build tool knew about
> various C++ tasks, wasn't totally Ruby oriented.
>

(I've used rake for a couple of small projects and I've never used Rant, so
take that into consideration). I know that Rake is not just oriented towards
Ruby. Though it's written in Ruby people use Rake for building Java
projects, for example. I used Rake to build for an obscure HDL simulator. I
think rake would make a great make replacement in the C++ domain. As far
as 'knowing' about various C++ build tasks, perhaps that is something that
will happen via people posting rake 'recipes'? Maybe people can contribute
some generic rake functions that would be useful in different domains?

    The word 'recipe' jumped out at me on the A-A-P site. It is a
    keyword in software builds. A recipe for daemons, or string
    bundles, or for generating includes.

    Something done easily in Ruby, I'm sure. It would be nice to
    chatter about how to do that.

    I think it would work out well for C++. A lot of the compatbilty
    checks for C compilers could be specified easily, in yaml, and
    put on a web site for browsing. GNU M4 is just depressing.

    Rake versus Rant is starting to get confusing. :frowning: I'm not sure
    why Ruby needs two build systems.

···

In article <slrndjq7mr.3ba.alan@agtrz.com>, <alan@agtrz.com> wrote:

--
Alan Gutierrez - alan@engrm.com
    - http://engrm.com/blogometer/index.html
    - http://engrm.com/blogometer/rss.2.0.xml