joyent/node — Issue #2123: GYP build fails on Solaris
Author: ptribble
Created: 2011-11-15 21:21:54+00:00
State: open

Building using gyp doesn't work at all on my Solaris system, specifically Solaris 10u8.

There are two issues I encountered:

1. The v8 build doesn't build the platform bits at all

I was able to get round this by adding a solaris section in deps/v8/tools/gyp/v8.gyp that builds platform-solaris.cc and platform-posix.cc, and links against -lsocket and -lrt

2. Linking uses gnu-specific syntax

Newer Solaris ld actually understand the gnu options and map them to ld's own options, but that's fairly recent.

-Wl,--start-group => -z rescan-start
-Wl,--end-group => -z rescan-end
-Wl,--whole-archive => -z allextract
-Wl,--no-whole-archive => -z defaultextract

however, older ld only has a single '-z rescan' rather than the start/end pair

Patch (works for me, but I'm not that familiar with gyp): http://www.petertribble.co.uk/Solaris/node-gyp-solaris.diff