On Wed, Mar 5, 2014 at 9:51 AM, Ryan Dahl <[email protected]> wrote:

> On Wed, Mar 5, 2014 at 9:42 AM, Kevin Ingwersen <[email protected]
> > wrote:
>
>> That I noticed. But isnt it possible to use v8 with autotools or similar
>> - or does it really completely rely on gyp?
>> I myself can't really make myself a big fan of gyp, when python is a
>> horrendus dependency o-o...
>>
>
> I agree that the python dependency is annoying, but gyp is (arguably) the
> most modern and established meta-build system. Aside from the fact that V8
> defines it's build in gyp, gyp is revolutionary in that it defines a module
> system for building C libraries. GYP allows Node to generate files for
> working with various toolchains like visual studio, and generally abstracts
> a lot of difficult platform problems.
>
> It's cute to rewrite the system with a Makefile and linking to
> pre-generated V8 binary, but you're ignoring large engineering goals that
> Node's build system solves.
>
> Build systems are deceptively difficult. The depth of the problems are not
> apparent until you try to manage the build of a large x-platform app like
> Node.
>
> if you're interested in learning more about this, here is a couple random
> readings to get you started, including some mailing list links to what I
> consider to be the state of the art: the recently canceled 'gn' project.
> (gn, btw, is the proper way to work towards moving away from the python
> build dependency, but even then it would be very difficult)
>
> http://freecode.com/articles/stop-the-autoconf-insanity-why-we-need-a-new-build-system(why
>  autoconf needs to die, written more than a decade ago)
> https://code.google.com/p/gyp/wiki/GypVsCMake
> http://harmful.cat-v.org/software/dynamic-linking/
> http://www.aosabook.org/en/posa/ninja.html
>
> https://groups.google.com/a/chromium.org/d/msg/chromium-dev/87jmrxg-oDM/Uyd41uqOItsJ
>
>
> https://groups.google.com/a/chromium.org/d/msg/chromium-dev/LQKLbTU-PuU/8akR_c84JZ8J
>
> Ryan
>

Thanks for the great list of links (and Node, btw).

I was thinking recently about the problem of cross-platform tools in
general and came to the conclusion that Node (core) is doing extremely well
in this regard and it is due in part to these build-time complexities. It
is no small feat for an open source language/runtime to have a download
page with 11 different first party binaries covering multiple options for
four different operating systems.

~Ryan

-- 
http://twitter.com/rmgraham

-- 
-- 
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.

Reply via email to