summaryrefslogtreecommitdiff
path: root/common.gypi
AgeCommit message (Collapse)Author
2016-04-07build: remove -f{data,function}-sections flagsBen Noordhuis
We don't link with `--gc-sections` because it's unreliable with some toolchains, so all these flags do is make the compiler generate slightly worse code. Drop them. Refs: https://github.com/nodejs/node/pull/6056 PR-URL: https://github.com/nodejs/node/pull/6077 Reviewed-By: Trevor Norris <trev.norris@gmail.com>
2016-03-29build: enable compilation for linuxOneMichael Dawson
Changes to Node core in order to allow compilation for linuxOne. The ../archs/linux32-s390x/opensslconf.h and ../archs/linux64-s390x/opensslconf.h were automatically generated by running make linux-ppc linux-ppc64 in the deps/openssl/config directory as per our standard practice After these changes we still need a version of v8 which supports linuxOne but that will be coming soon in the 5.1 version of v8. Until then with these changes we'll be able to create a hybrid build which pulls in v8 from the http://github/andrewlow repo. PR-URL: https://github.com/nodejs/node/pull/5941 Reviewed-By: Johan Bergström <bugs@bergstroem.nu> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2016-03-27build: add missing `openssl_fips%` to common.gypiFedor Indutny
See: atom/node@cba512d493d968afb203e28ed01e8d345fc9c9f4 PR-URL: https://github.com/nodejs/node/pull/5919 Reviewed-By: Johan Bergström <bugs@bergstroem.nu>
2016-03-22build: add suport for x86 architectureRobert Chiras
Modified android-configure script to support also x86 arch. Currently added support only for ia32 target arch. Also, compile openssl without asm, since using the asm sources will make node fail to run on Android, because it adds text relocations. Signed-off-by: Robert Chiras <robert.chiras@intel.com> PR-URL: https://github.com/nodejs/node/pull/5544 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-11-05build: omit -gline-tables-only for --enable-asanBen Noordhuis
`-gline-tables-only` is a clang-only flag. Drop it, it's not needed for address sanitizer-enabled builds and it makes it impossible to build with gcc. Fixes: https://github.com/nodejs/node/issues/3656 PR-URL: https://github.com/nodejs/node/pull/3680 Reviewed-By: Fedor Indutny <fedor@indutny.com>
2015-09-15build: Updates to enable AIX supportMichael Dawson
These are the core changes that allow AIX to compile. There are still some test failures as there are some patches needed for libuv and npm that we'll need to contribute through those communities but this set allows node to be built on AIX and pass most of the core tests The change in js2c is because AIX does not support $ in identifier names. See the discussion/agreement in https://github.com/nodejs/node/issues/2272 PR-URL: https://github.com/nodejs/node/pull/2364 Reviewed-By: Ben Noordhuis <ben@strongloop.com> Reviewed-By: Rod Vagg <r@va.gg>
2015-09-08build: fix v8_enable_handle_zapping overrideKarl Skomski
It was previously ignored by features.gypi and therefore enabled by default for release builds. See https://code.google.com/p/chromium/issues/detail?id=318206 PR-URL: https://github.com/nodejs/node/pull/2731 Reviewed-By: Fedor Indutny <fedor@indutny.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-09-06build: add --enable-asan with builtin leakcheckKarl Skomski
PR-URL: https://github.com/nodejs/node/pull/2376 Reviewed-By: Fedor Indutny <fedor@indutny.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-08-04build: first set of updates to enable PPC supportMichael Dawson
These are the core changes that allow pLinux BE/LE compile. They don't include all of the changes needed for AIX which will follow once we have pLinux up and running in the builds PR-URL: https://github.com/nodejs/io.js/pull/2124 Reviewed-By: Ben Noordhuis <ben@strongloop.com> Reviewed-By: Johan Bergstrom <bugs@bergstroem.nu>
2015-07-29build: produce symbol map files on windowsAli Ijaz Sheikh
This produces map files as part of the build on windows. The existence of these files enable profiling and tick-processing using the --prof command line. See: https://github.com/nodejs/io.js/pull/2090#issuecomment-124746673 Map files are documented here: https://msdn.microsoft.com/en-us/library/k7xkk3e2.aspx PR-URL: https://github.com/nodejs/io.js/pull/2243 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-06-11crypto: support FIPS mode of OpenSSLFedor Indutny
Support building and running with FIPS-compliant OpenSSL. The process is following: 1. Download and verify `openssl-fips-x.x.x.tar.gz` from https://www.openssl.org/source/ 2. Extract source to `openssl-fips` folder 3. ``cd openssl-fips && ./config fipscanisterbuild --prefix=`pwd`/out`` (NOTE: On OS X, you may want to run ``./Configure darwin64-x86_64-cc --prefix=`pwd`/out`` if you are going to build x64-mode io.js) 4. `make -j && make install` 5. Get into io.js checkout folder 6. `./configure --openssl-fips=/path/to/openssl-fips/out` 7. Build io.js with `make -j` 8. Verify with `node -p "process.versions.openssl"` (`1.0.2a-fips`) Fix: https://github.com/joyent/node/issues/25463 PR-URL: https://github.com/nodejs/io.js/pull/1890 Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
2015-05-04build: don't compile debug build with -OgBen Noordhuis
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>
2015-05-04build: disable -Og when building with clangBen Noordhuis
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>
2015-05-01build: turn on debug-safe optimizations with -OgBen Noordhuis
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>
2015-04-28deps: enable v8 postmortem debugging againBen Noordhuis
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>
2015-04-28deps: upgrade v8 to 4.2.77.18Chris Dickinson
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>
2015-04-28deps: enable v8 postmortem debugging againBen Noordhuis
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>
2015-04-28deps: upgrade v8 to 4.2.77.13Ben Noordhuis
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>
2015-02-03gyp: enable postmortem support, fix dtrace pathsFedor Indutny
Fix: iojs/io.js#461 PR-URL: https://github.com/iojs/io.js/pull/706 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2015-01-19win: bring back xp/2k3 supportBert Belder
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>
2015-01-08win: disable stl exception usageBert Belder
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>
2015-01-08win: disable exception handling for all buildsBert Belder
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>
2015-01-07build: fix up build after v8 upgradeBen Noordhuis
* 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>
2014-12-23configure: remove compiler detectionNikolai Vavilov
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>
2014-10-16build: remove workarounds for gcc <= 4.4Ben Noordhuis
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>
2014-10-16build: add asan option to multi-arch/mode buildBen Noordhuis
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>
2014-10-16build: set up basic multi-arch/mode buildBen Noordhuis
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>
2014-10-16build: add x32 supportBen Noordhuis
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>
2014-10-12gyp: build with gnu++0x for the sake of new v8Fedor Indutny
The new v8 doesn't build on non gnu++0x, set it to a proper value for all systems.
2014-10-08src, test: fixup after v8 updateFedor Indutny
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
2014-09-16Merge remote-tracking branch 'upstream/v0.10' into v0.12Timothy J Fontaine
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
2014-08-27gyp: use --export-dynamic on FreeBSDFedor Indutny
Should help addons use OpenSSL functions. Reviewed-By: Fedor Indutny <fedor@indutny.com>
2014-07-23gyp: fix post-mortem in v0.11Fedor Indutny
Expose missing constants and keep symbols on OSX.
2014-07-17gyp: do not let `v8dbg_` slip away on osxFedor Indutny
Pass `-force_load` to linker when linking to `libv8_base` to preserve `v8dbg_` symbols, which are useful for debugging.
2014-06-25deps: build v8 with disassembler supportFedor Indutny
Signed-off-by: Fedor Indutny <fedor@indutny.com>
2014-06-05Merge branch 'v0.10'Fedor Indutny
Conflicts: ChangeLog lib/events.js lib/tls.js src/node_constants.cc src/node_crypto.cc src/node_crypto.h src/node_version.h
2014-05-22build: disable v8 handle zappingBen Noordhuis
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>
2014-05-16configure: allow V8 snapshot for cross-compilationAndrei Sedoi
Signed-off-by: Fedor Indutny <fedor@indutny.com>
2014-03-26Merge remote-tracking branch 'origin/v0.10'Fedor Indutny
Conflicts: src/node.cc src/node_crypto.cc src/node_crypto.h
2014-03-23build: fix g++ 4.8 build, disable -WerrorBen Noordhuis
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.
2014-02-17build: don't enable gc-sectionsTimothy J Fontaine
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.
2014-01-24Merge remote-tracking branch 'upstream/v0.10'Timothy J Fontaine
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
2014-01-20gyp: fix non-ninja buildFedor Indutny
2014-01-16gyp: fix `ninja` build on linuxFedor Indutny
fix #6679
2014-01-07build: unconditionally disable -WerrorBen Noordhuis
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.
2013-12-05build: add libicu i18n supportBen Noordhuis
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.
2013-12-01Merge remote-tracking branch 'upstream/v0.10'Timothy J Fontaine
Conflicts: src/stream_wrap.cc
2013-12-01build: include postmortem symbols on linuxTimothy J Fontaine
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.
2013-08-01build: disable some msvc compiler warningsBert Belder
These are not real problems, and they are so plenty that actual problems are hidden from view.
2013-07-06build: don't enable --gc-sections on sunosBen Noordhuis
The SunOS linker doesn't support it. Fixes build breakage introduced in commit 9b3de60.