summaryrefslogtreecommitdiff
path: root/common.gypi
Commit message (Collapse)AuthorAgeFilesLines
* build: don't compile debug build with -OgBen Noordhuis2015-05-041-7/+2
| | | | | | | | | | | | | It's not supported by clang and commit e67542a ("build: disable -Og when building with clang") is not sufficient because the configure script no longer writes the 'clang' variable to common.gypi. I could fix the configure script but I don't care enough actually do so. A fixed configure script won't help anyway when the compiler is overridden through the CXX environment variable at compile time. PR-URL: https://github.com/iojs/io.js/pull/1611 Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
* build: disable -Og when building with clangBen Noordhuis2015-05-041-1/+6
| | | | | | | | | clang does not yet support -Og, fall back to -O0. See: https://llvm.org/bugs/show_bug.cgi?id=20765 Fixes: https://github.com/iojs/io.js/issues/1608 PR-URL: https://github.com/iojs/io.js/pull/1609 Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
* build: turn on debug-safe optimizations with -OgBen Noordhuis2015-05-011-2/+2
| | | | | | | | | The resulting binary is still easy to inspect in gdb but is not as dog slow. The 'parallel' test suite, although it takes several minutes to complete, now finishes without any tests timing out. PR-URL: https://github.com/iojs/io.js/pull/1569 Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
* deps: enable v8 postmortem debugging againBen Noordhuis2015-04-281-3/+2
| | | | | | | | Cherry-pick https://codereview.chromium.org/1033733003 from upstream and re-enable postmortem debugging. PR-URL: https://github.com/iojs/io.js/pull/1232 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* deps: upgrade v8 to 4.2.77.18Chris Dickinson2015-04-281-2/+3
| | | | | | | | | This commit applies a secondary change in order to make `make test` pass cleanly, specifically re-disabling post-mortem debugging in common.gypi. PR-URL: https://github.com/iojs/io.js/pull/1506 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
* deps: enable v8 postmortem debugging againBen Noordhuis2015-04-281-3/+2
| | | | | | | | Cherry-pick https://codereview.chromium.org/1033733003 from upstream and re-enable postmortem debugging. PR-URL: https://github.com/iojs/io.js/pull/1232 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* deps: upgrade v8 to 4.2.77.13Ben Noordhuis2015-04-281-2/+3
| | | | | | | | | | | | | | This commit applies some secondary changes in order to make `make test` pass cleanly: * disable broken postmortem debugging in common.gypi * drop obsolete strict mode test in parallel/test-repl * drop obsolete test parallel/test-v8-features PR-URL: https://github.com/iojs/io.js/pull/1232 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* gyp: enable postmortem support, fix dtrace pathsFedor Indutny2015-02-031-3/+2
| | | | | | Fix: iojs/io.js#461 PR-URL: https://github.com/iojs/io.js/pull/706 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
* win: bring back xp/2k3 supportBert Belder2015-01-191-6/+14
| | | | | | | | Chrome still runs on Windows XP, so there is no reason that iojs couldn't. PR: https://github.com/iojs/io.js/pull/512 Reviewed-by: Ben Noordhuis <info@bnoordhuis.nl>
* win: disable stl exception usageBert Belder2015-01-081-0/+2
| | | | | | | | | | | | Tell the stl that exception handling is unavailable. This avoids warnings like: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\ xlocale(337): warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc PR-URL: https://github.com/iojs/io.js/pull/258 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
* win: disable exception handling for all buildsBert Belder2015-01-081-2/+1
| | | | | | | | Previously exception handling was disabled in release builds, but enabled in debug builds. That makes no sense. PR-URL: https://github.com/iojs/io.js/pull/258 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
* build: fix up build after v8 upgradeBen Noordhuis2015-01-071-3/+6
| | | | | | | | | | | * Define and disable new flag `v8_use_external_startup_data`. * Disable v8_postmortem_support, it's broken again. Fedor (@indutny) has volunteered to fix it up in the near future. PR-URL: https://github.com/iojs/io.js/pull/243 Reviewed-By: Fedor Indutny <fedor@indutny.com> Reviewed-By: Trevor Norris <trev.norris@gmail.com>
* configure: remove compiler detectionNikolai Vavilov2014-12-231-2/+5
| | | | | | | | | The GCC version is no longer relevant since only 4.8 and newer are supported. It's probably safe to assume clang on mac since V8 does so too. PR-URL: https://github.com/iojs/io.js/pull/205 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
* build: remove workarounds for gcc <= 4.4Ben Noordhuis2014-10-161-6/+0
| | | | | | | | | | | | Now that V8 requires a compiler with decent C++11 support, there is no reason to keep supporting old versions of gcc. Remove workarounds for bugs in gcc 4.4 and older. This coincidentally makes it easier to build with clang 3.3 + address sanitizer because clang no longer chokes on the `-fno-tree-vrp` switch. PR-URL: https://github.com/node-forward/node/pull/24 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* build: add asan option to multi-arch/mode buildBen Noordhuis2014-10-161-0/+11
| | | | | | | | | Make it possible to build node against Address Sanitizer. Enable with: $ make -f Makefile.build asan=clang++ CC=clang CC_host=clang PR-URL: https://github.com/node-forward/node/pull/24 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* build: set up basic multi-arch/mode buildBen Noordhuis2014-10-161-0/+6
| | | | | | | | | Make `make -f Makefile.build ia32.release x64.debug` work. It's not perfect yet: it requires running `./configure` first and the generated `config.gypi` is shared across builds. PR-URL: https://github.com/node-forward/node/pull/24 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* build: add x32 supportBen Noordhuis2014-10-161-0/+4
| | | | | | | | | This commit adds preliminary x32 support. Configure with: $ ./configure --dest-cpu=x32 PR-URL: https://github.com/node-forward/node/pull/24 Reviewed-By: Fedor Indutny <fedor@indutny.com>
* gyp: build with gnu++0x for the sake of new v8Fedor Indutny2014-10-121-1/+7
| | | | | The new v8 doesn't build on non gnu++0x, set it to a proper value for all systems.
* src, test: fixup after v8 updateFedor Indutny2014-10-081-2/+2
| | | | | | | | | | | | | Because of behavior change of some V8 APIs (they mostly became more strict), following modules needed to be fixed: * crypto: duplicate prototype methods are not allowed anymore * contextify: some TryCatch trickery, the binding was using it incorrectly * util: maximum call stack error is now crashing in a different place Reviewed-By: Trevor Norris <trevnorris@gmail.com> PR-URL: https://github.com/joyent/node/pull/8476
* Merge remote-tracking branch 'upstream/v0.10' into v0.12Timothy J Fontaine2014-09-161-0/+5
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog deps/v8/src/hydrogen.cc lib/http.js lib/querystring.js src/node_crypto.cc src/node_version.h test/simple/test-querystring.js
| * gyp: use --export-dynamic on FreeBSDFedor Indutny2014-08-271-0/+5
| | | | | | | | | | | | Should help addons use OpenSSL functions. Reviewed-By: Fedor Indutny <fedor@indutny.com>
| * gyp: do not let `v8dbg_` slip away on osxFedor Indutny2014-07-171-1/+1
| | | | | | | | | | Pass `-force_load` to linker when linking to `libv8_base` to preserve `v8dbg_` symbols, which are useful for debugging.
* | gyp: fix post-mortem in v0.11Fedor Indutny2014-07-231-1/+1
| | | | | | | | Expose missing constants and keep symbols on OSX.
* | deps: build v8 with disassembler supportFedor Indutny2014-06-251-0/+3
| | | | | | | | Signed-off-by: Fedor Indutny <fedor@indutny.com>
* | Merge branch 'v0.10'Fedor Indutny2014-06-051-8/+8
|\ \ | |/ | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog lib/events.js lib/tls.js src/node_constants.cc src/node_crypto.cc src/node_crypto.h src/node_version.h
| * configure: allow V8 snapshot for cross-compilationAndrei Sedoi2014-05-161-8/+8
| | | | | | | | Signed-off-by: Fedor Indutny <fedor@indutny.com>
* | build: disable v8 handle zappingBen Noordhuis2014-05-221-0/+6
| | | | | | | | | | | | | | See also commit e7bfbaf. Don't depend on deps/v8/build/features.gypi to disable handle zapping, be explicit about it. Signed-off-by: Timothy J Fontaine <tjfontaine@gmail.com>
* | Merge remote-tracking branch 'origin/v0.10'Fedor Indutny2014-03-261-0/+1
|\ \ | |/ | | | | | | | | | | Conflicts: src/node.cc src/node_crypto.cc src/node_crypto.h
| * build: fix g++ 4.8 build, disable -WerrorBen Noordhuis2014-03-231-0/+1
| | | | | | | | | | | | | | | | | | Turn off -Werror when building V8, it hits -Werror=unused-local-typedefs with g++ 4.8. The warning itself is harmless so don't abort the build. This was originally implemented in commit d2ab314e back in 2011 but the build process has gone through a few iterations since then, that change no longer works.
* | build: don't enable gc-sectionsTimothy J Fontaine2014-02-171-3/+0
| | | | | | | | | | | | In some scenarios this will strip the DOF sections for DTrace, and in a future world where we re-export all static libraries it would defeat that purpose.
* | Merge remote-tracking branch 'upstream/v0.10'Timothy J Fontaine2014-01-241-1/+8
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | Conflicts: AUTHORS ChangeLog deps/uv/AUTHORS deps/uv/ChangeLog deps/uv/src/unix/process.c deps/uv/src/version.c lib/net.js node.gyp src/node_version.h
| * gyp: fix non-ninja buildFedor Indutny2014-01-201-1/+1
| |
| * gyp: fix `ninja` build on linuxFedor Indutny2014-01-161-1/+8
| | | | | | | | fix #6679
* | build: unconditionally disable -WerrorBen Noordhuis2014-01-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | Forcibly disable -Werror, the old { 'werror': '' } hack in node.gyp no longer works with newer versions of V8. We support a wide range of compilers, it's simply not feasible to squelch all warnings, never mind that the libraries in deps/ are not under our control. Fixes #6817.
* | build: add libicu i18n supportBen Noordhuis2013-12-051-0/+2
| | | | | | | | | | | | | | | | | | Adds a --with-icu-path= switch to the configure script. Requires that the user checks out the copy of libicu that's bundled with chromium to a fixed directory. It's still a little rough around the edges but it works. Fixes #6371.
* | Merge remote-tracking branch 'upstream/v0.10'Timothy J Fontaine2013-12-011-1/+3
|\ \ | |/ | | | | | | Conflicts: src/stream_wrap.cc
| * build: include postmortem symbols on linuxTimothy J Fontaine2013-12-011-1/+3
| | | | | | | | | | | | Previously we were building the symbols, but the linker was garbage collecting the symbols because they weren't used. Inform the linker that we want to keep all symbols from v8 around.
* | build: disable some msvc compiler warningsBert Belder2013-08-011-0/+1
| | | | | | | | | | These are not real problems, and they are so plenty that actual problems are hidden from view.
* | build: don't enable --gc-sections on sunosBen Noordhuis2013-07-061-1/+3
| | | | | | | | | | The SunOS linker doesn't support it. Fixes build breakage introduced in commit 9b3de60.
* | build: remove --unsafe-optimizations flagBen Noordhuis2013-07-061-27/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous commit removes our patch that builds V8 at -O2 rather than -O3 so there is not much point in keeping the configure switch around. The reason it did so was to work around an assortment of compiler and linker bugs. In particular, certain combinations of g++ and binutils generate bad or no code when -ffunction-sections or -finline-functions is enabled (which -O3 implicitly does.) It was quite the problem back in the day because everyone and his dog built from source. Now that we have prebuilt binaries and packages available, there is no longer a pressing need to be so accommodating. If you experience spurious (or possibly not so spurious) segmentation faults after this commit, you need to upgrade your compiler/linker toolchain.
* | build: add android supportLinus MÃ¥rtensson2013-06-171-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolves minor discrepancies between android and standard POSIX systems. In addition, some configure parameters were added, and a helper-script for android configuration. Ideally, this script should be merged into the standard configure script. To build for android, source the android-configure script with an NDK path: source ./android-configure ~/android-ndk-r8d This will create an android standalone toolchain and export the necessary environment parameters. After that, build as normal: make -j8 After the build, you should now have android-compatible NodeJS binaries.
* | build: fix windows build, disable postmortemBen Noordhuis2013-04-041-1/+3
|/ | | | | | | Always define v8_postmortem_support, even if the platform does not support it. Commit d8852aa adds a rule that references it in node.gyp. Fixes the Windows build.
* Revert "build, windows: disable SEH"Bert Belder2013-03-051-1/+0
| | | | | This is no longer necessary - the underlying issue was fixed in 01fa5ee. This reverts commit d87904286024f5ceb6a2d0d5f17e919c775830a0.
* Merge remote-tracking branch 'origin/v0.8'Ben Noordhuis2013-02-281-0/+1
|\ | | | | | | | | | | | | | | | | Conflicts: AUTHORS ChangeLog deps/uv/src/unix/pipe.c lib/http.js src/node_version.h
| * build, windows: disable SEHBen Noordhuis2013-02-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turn off safe exception handlers, they're incompatible with how openssl is compiled / linked under MSVS 2012. Addresses the following build error: openssl.lib(x86cpuid.obj) : error LNK2026: module unsafe for SAFESEH image. [g:\jenkins\workspace\nodejs-oneoff\node.vcxproj] openssl.lib(x86.obj) : error LNK2026: module unsafe for SAFESEH image. [g:\jenkins\workspace\nodejs-oneoff\node.vcxproj] # etc. etc. g:\jenkins\workspace\nodejs-oneoff\Release\node.exe : fatal error LNK1281: Unable to generate SAFESEH image. [g:\jenkins\workspace\nodejs-oneoff\node.vcxproj] Fixes #4242.
* | gyp: fix build with dtrace support on FreeBSDFedor Indutny2013-01-211-0/+3
| | | | | | | | | | Fix undefined reference to `gelf_getsym`... and other undefined symbols from libelf, by adding `-lelf` to linker options on FreeBSD.
* | build: disable use of thin archiveShigeki Ohtsu2012-11-211-0/+5
| | | | | | | | | | Thin archive needs binutils >= 2.19, disable it for supporting old ar even if static libraries are linked within a local build.
* | build: make python executable configurableBen Noordhuis2012-11-201-0/+1
| | | | | | | | | | | | Upstreamed in https://codereview.chromium.org/11418101/ Fixes #4287.
* | build: let xcode pick proper compilerTimothy J Fontaine2012-11-061-1/+0
| |
* | build: remove _LARGEFILE_SOURCE, _FILE_OFFSET_BITSBen Noordhuis2012-11-041-5/+0
| | | | | | | | | | Don't define the _LARGEFILE_SOURCE and _FILE_OFFSET_BITS flags, they're inherited from libuv now.