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

Doing rake-like stuff with mkmf?

8 views
Skip to first unread message

Wincent Colaiuta

unread,
Jun 9, 2007, 10:12:37 AM6/9/07
to
Following the pattern I've seen in widespread use, I use rake in my
Ruby projects for most high-level tasks (running specs, building gems
etc) and mkmf to make C extension makefiles.

mkmf works great for the simple case where you just want to compile
some C files and link to some libraries; the default behaviour seems
to handle most things automatically.

But what if I want to do some more sophisticated rake-like stuff where
I manually specify dependencies? For example:

* Start with ANTLR grammar file "Grammar.g"

* Whenever this file is updated, have to run ANTLR on it and this
regenerates new "GrammarLexer.c" and "GrammarParser.c" files

* In this case want to rebuild the extension

Is there a way to do this using mkmf? Or do I have to manually tweak
the generated Makefile myself?

Cheers,
Wincent

Nobuyoshi Nakada

unread,
Jun 11, 2007, 12:33:53 AM6/11/07
to
Hi,

At Sat, 9 Jun 2007 23:15:08 +0900,
Wincent Colaiuta wrote in [ruby-talk:254933]:


> But what if I want to do some more sophisticated rake-like stuff where
> I manually specify dependencies? For example:
>
> * Start with ANTLR grammar file "Grammar.g"
>
> * Whenever this file is updated, have to run ANTLR on it and this
> regenerates new "GrammarLexer.c" and "GrammarParser.c" files
>
> * In this case want to rebuild the extension
>
> Is there a way to do this using mkmf? Or do I have to manually tweak
> the generated Makefile myself?

create_makefie in mkmf appends the content of "depend" file if
it exists, so that you can add your own rules.

--
Nobu Nakada

Jano Svitok

unread,
Jun 11, 2007, 4:15:22 PM6/11/07
to

There's mkrf (http://rubyforge.org/projects/mkrf) aimed at replacing
mkmf generated makefile with rakefile.

0 new messages