please provide a small introduction to GYP #7

Open
ry opened this Issue Sep 7, 2012 · 7 comments

Comments

Projects
None yet
3 participants

ry commented Sep 7, 2012

That it's a cross-platform meta-build system for generating msvs, xcode, or make build file. Explain that it's used for generating production Google Chrome builds and therefore rather robust. GYP makes it very easy to include libuv into other GYP projects

Owner

nikhilm commented Sep 7, 2012

:) thanks for the comment.
I'm currently struggling with GYP myself due to (lack of) documentation issues, but i'll try.

ry commented Sep 7, 2012

CC our resident GYP experts @TooTallNate @bnoordhuis

@nikhilm If you have questions, shoot. I'll be happy to help.

Owner

nikhilm commented Dec 25, 2012

@bnoordhuis
could you explain what advantages the gyp based method offers over just running make and linking libuv.a into an application? For a project that does not use gyp, does it make sense to use checkout gyp just for the libuv build stage?
Please elaborate if there are platform specific issues.

Thanks!

could you explain what advantages the gyp based method offers over just running make and linking libuv.a into an application?

Many. It:

  • knows how to create Makefiles, SConstructs and ninja build files
  • can generate project files for Eclipse, Visual Studio and Xcode
  • makes it easy to build release and debug builds side-by-side, builds for different architectures, etc.

If you have a simple project, the Makefile probably works fine. But when you start doing more complex things, gyp really helps.

For a project that does not use gyp, does it make sense to use checkout gyp just for the libuv build stage?

If you want your application to build on UNIX and Windows without hassle, I'd recommend using gyp, yes.

Owner

nikhilm commented Dec 25, 2012

thanks!

let's say application X uses a major library that uses, say, CMake. But it also uses libuv. Then gyp or makefile?
Why is gyp not bundled with libuv? gyp doesn't have packages for most OSes yet, and pip install from svn fails (http://code.google.com/p/gyp/issues/detail?id=307), so getting gyp is a bit inconvenient for endusers, especially those downloading a tarball and not having svn.

Why is gyp not bundled with libuv?

For the purely selfish reason that it's already bundled with node.js and we didn't want to bundle it twice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment