There's grunt (declarative, plugin-based), gulp (imperative, plugin-based), jake (like rake in the Ruby world), and fez (probably the closest to make, although it's actually based on tup). There's also just writing straight-up Node code to do your build steps, although until execSync lands (which is supposed to happen in Node 0.12), it's a little unwieldy to deal with all the conditional control flow that robust build scripting demands (which is why grunt / gulp / jake / fez exist). Based on what you're saying you want to do, fez is probably the thing you should look at first.
There is a good time to use Node-native build tools, and that's if you have a complex module that has build steps and needs to work on all the platforms that Node supports. Unless you're using mingw or cygwin, GNU make isn't available on Windows, and Node straight-up isn't supported with either of them (I think -- I'm certain that cygwin causes problems, and it seems like at the very least it would be a pain to write portable Makefiles for use on Windows + mingw). On Thu, Jan 23, 2014 at 10:42 AM, Alex Kocharin <[email protected]> wrote: > > You mean like Grunt or Gulp? > > I'd say "yes", but please take my advice and just use make, it's widely > known, doesn't need a huge config file and doesn't require plugins for > everything. :P > > > 23.01.2014, 20:44, "Kevin Ingwersen" <[email protected]>: > > Hey. > > > > I just wonder one thing: Has there ever been a build tool written in > nodejs? I mean, something like make or ninja. Doing the configuration stuff > is not very hard, but one would rather use CMake I guess; I never dealt > with external libraries that differ on the platforms (if that is even > true?). But I was thinking about making a tool that would be an actual > build tool like ninja; paralel building. > > But before making a redundant tool, I was just being curios if that > existed already o.o > > > > -- > > -- > > Job Board: http://jobs.nodejs.org/ > > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > > You received this message because you are subscribed to the Google > > Groups "nodejs" group. > > To post to this group, send email to [email protected] > > To unsubscribe from this group, send email to > > [email protected] > > For more options, visit this group at > > http://groups.google.com/group/nodejs?hl=en?hl=en > > > > --- > > You received this message because you are subscribed to the Google > Groups "nodejs" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected]. > > For more options, visit https://groups.google.com/groups/opt_out. > > -- > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en > > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
