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
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
There's mkrf (http://rubyforge.org/projects/mkrf) aimed at replacing
mkmf generated makefile with rakefile.