summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/nodejs
Commit message (Collapse)AuthorAgeFilesLines
...
* nodejs: Use qemu usermode to run target binaries during buildKhem Raj2021-04-212-53/+74
| | | | | | | | | | | So far, we have been trying to build nodejs-native and use the native host binaries from there, which has worked out ok but always changes when major upgrade is done, since more binaries or places are required to be captured. This patch changes this approach to use qemu-user to run these binaries under during cross build. This lets them run closer to upstream build process and also removes dependency on nodejs-native Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Fix build with icu-69Khem Raj2021-04-212-0/+94
| | | | | | backport relevant v8 patch to fix the build issue Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Update to 14.16.1Khem Raj2021-04-214-85/+25
| | | | | | | | | | This is latest maintained LTS release Forward patches and drop backported patch License-Update: Update copyright year and drop license of deps/http_parser as this component is removed in this version Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: ppc64le machine supportAndrew Geissler2021-04-021-1/+1
| | | | | | | | | | Commit 836912ab changed the logic in this recipe to stop looking for "ppc64le". This caused the ppc64le systems used by me to stop working. There wasn't much in the commit message on why this change occurred but ppc64le is definitely still needed. Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 12.20.2 -> 12.21.0Clément Péron2021-03-301-1/+1
| | | | | | | | | | Fixes : - CVE-2021-22883 - CVE-2021-22884 - CVE-2021-23840 Signed-off-by: Clément Péron <peron.clem@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Set correct nodejs arch for ppc64leKhem Raj2021-03-121-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 12.20.1 -> 12.20.2Sean Nyekjaer2021-02-201-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 12.19.1 -> 12.20.1Sean Nyekjaer2021-01-071-2/+2
| | | | | Signed-off-by: Sean Nyekjaer <sean@geanix.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 12.19.0 -> 12.19.1Stacy Gaikovaia2020-12-151-1/+1
| | | | | | | | | | | | | Uprev nodejs in order to fix CVE-2020-8277. This CVE allows an attacker to trigger a DNS request for a host of their choice, which could trigger a Denial of Service in nodejs versions < 12.19.1. See https://nvd.nist.gov/vuln/detail/CVE-2020-8277 for details. CVE: CVE-2020-8277 Signed-off-by: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Update to 12.19.0Khem Raj2020-11-021-1/+1
| | | | | | This perhaps is last release in 12.x LTS Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Fix arm32/thumb builds with clangKhem Raj2020-11-022-0/+54
| | | | | | | | | | | Backport a patch from upstream to take care of build failure e.g. | ../deps/v8/src/codegen/arm/cpu-arm.cc:38:16: error: write to reserved register 'R7' | asm volatile("svc 0\n" | ^ | 1 error generated. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Upgrade to 12.18.3Khem Raj2020-08-135-327/+14
| | | | | | | Drop already upstreamed patches use builtin uv, it does not build without it Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Fix build with icu 67.1Khem Raj2020-05-062-0/+195
| | | | | | | Remove soon-to-be removed getAllFieldPositions Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Andrej Valek <andrej.valek@siemens.com>
* nodejs: Fix -Wc++11-narrowing on mipsKhem Raj2020-04-152-0/+20
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* node: Enable cross-compiling options and disable dtrace and etwKhem Raj2020-03-201-1/+3
| | | | | | dtrace and etw are hardly used for embedded usecase Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: install gen-regexp-special-case only when icu is enabledJaga2020-03-121-1/+3
| | | | | | | Fixes install errors when icu packageconfig is disabled Signed-off-by: Jaga <jagadheesan_duraisamy@comcast.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: allow use of system brotli (and make default)André Draszik2020-03-033-1/+113
| | | | | | | | | | | | | | Use system brotli via PACKAGECONFIG by default. So far, nodejs had been built using its embedded copy of brotli, which we generally try to avoid, for the known reasons (independent updates, cve & license checks, etc). The nodejs patches to enable this have been submitted. brotli is in meta-oe, so enabling this by default should not be a problem. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: drop 'gyp' PACKAGECONFIGAndré Draszik2020-03-031-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | During the python3 / nodejs update, the dependencies weren't updated, so using system-gyp ends up trying to use the python2 version of system- gyp, which will of course fail. Fixing this to depend on the python3 version of gyp still doesn't doesn't make things work, though: ERROR: nodejs-native-12.14.1-r0 do_configure: Execution of '.../nodejs-native/12.14.1-r0/temp/run.do_configure.26054' failed with exit code 1: gyp: Error importing pymod_do_mainmodule (ForEachFormat): No module named 'ForEachFormat' while loading dependencies of .../nodejs-native/12.14.1-r0/node-v12.14.1/node.gyp while trying to load .../nodejs-native/12.14.1-r0/node-v12.14.1/node.gyp Error running GYP The reason is commit fff922afee6e ("deps,build: compute torque_outputs in v8.gyp") in NodeJS v12, where they modified their bundled version of gyp to become incompatible with the upstream version of gyp by adding extra / unusual search paths to gyp. Since I'm not sure how to deal with that when using system-gyp, and because the original intention for using system-gyp was to make the previous nodejs version compatible with python3 by ultimately switching to the python3 version of system-gyp which isn't necessary anymore, and given nobody else seems to be using this PACKAGECONFIG, just drop it. Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Fix build on big-endian targetsKhem Raj2020-01-232-0/+19
| | | | | | | | | | | Fixes ../deps/v8/src/runtime/runtime-utils.h:129:11: error: base operand of '->' has non-pointer type 'v8::internal::Object' 129 | return y->ptr() | (static_cast<ObjectPair>(x->ptr()) << 32); | ^~ Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Martin Jansa <Martin.Jansa@gmail.com> Cc: Guillaume Burel <guillaume.burel@stormshield.eu>
* nodejs: upgrade to 12.14.1Martin Jansa2020-01-231-2/+2
| | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: use python3nativeMartin Jansa2020-01-231-10/+8
| | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 10.17.0 -> 12.14.0Guillaume Burel2020-01-238-163/+109
| | | | | | | | - update Node.js to active 12.x LTS release 12.14.0. - remove compatibility with gcc 4.8 (has been removed upstream) Signed-off-by: Guillaume Burel <guillaume.burel@stormshield.eu> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* recipes: Replace using BBPATH with BBFILE_COLLECTIONS for meta-python2 checkKhem Raj2020-01-221-1/+1
| | | | | | BBPATH check actually does not work Signed-off-by: Khem Raj <raj.khem@gmail.com>
* recipes: Turn inherit classes from meta-py2 to conditional constructsKhem Raj2020-01-221-1/+1
| | | | | | helps parsing without meta-py2 in mix Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Build only when meta-py2 is includedKhem Raj2020-01-221-1/+6
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* meta-oe: Remove using python2Khem Raj2020-01-221-1/+1
| | | | | | | This change makes the parsing go though, we still might have build issues, which will be reported in world builds seprately Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Add PACKAGECONFIG share to allow other projects to use node as libraryAndreas Müller2019-12-012-1/+100
| | | | | | | | | | There are so many useful modules written for node.js I would like to use in C++/Qt projects. Run-tested both variants by installing node-red with npm and running it. Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: libatomic patch should be target specificKhem Raj2019-11-211-1/+1
| | | | | | | | | | | host usually are using gcc/x86_64/aarch64 and all of them have gcc which can support atomic intrinsics, but not all of them install libatomic by default e.g. centos-7, so asking for libatomic unconditionally may not work always Signed-off-by: Khem Raj <raj.khem@gmail.com> Acked-by: Andreas Müller <schnitzeltony@gmail.com> Acked-by: Tim Orling <timothy.t.orling@linux.intel.com>
* nodejs: support long directory names for ${B} / ${S}André Draszik2019-11-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Part of the NodeJS build builds V8, which at some stage tries to call ar with all objects with *absolute* paths (and printf the command line first). This will fail if the build path is too long: make[1]: execvp: printf: Argument list too long when trying to create Release/obj.target/deps/v8/gypfiles/libv8_base.a via below gyp-generated out/Makefile rule: cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^) i.e. something like printf rm -f Release/obj.target/deps/v8/gypfiles/libv8_base.a && arm-poky-linux-musleabi-gcc-ar crsT Release/obj.target/deps/v8/gypfiles/libv8_base.a ... The above failure happened on a build-directory S with 204 characters on a Jenkins machine. While one could probably increase the ulimit on that specific machine, that would be a pretty specific build machine fix which would need to be applied everywhere, or switch to non-verbose builds / compilation, but fortunately we can change all object references to be relative to the build directory itself by setting the builddir_name make variable and thus avoid the other two possible work-arounds. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: use OE-provided compiler flags (arm)André Draszik2019-11-132-0/+103
| | | | | | | | | | | | | | | | | | | | | This overrides yocto-provided build flags with its own, e.g we get arm-poky-linux-musleabi-g++ -mthumb -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a7 \ ... \ -march=armv7-a -mfpu=neon -mfloat-abi=hard -marm Causing the latter to override the former, and compiler warnings: cc1plus: warning: switch '-mcpu=cortex-a7' conflicts with '-march=armv7-a' switch Patch this out, so that yocto-provided flags take precedence. Note that in reality the same should probably be done for all the other supported architectures, too. Note that this also switches to Thumb(2) mode (in my case). No obvious problems have been noted during compilation or runtime. Upstream-Status: Inappropriate [oe-specific] Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: allow use of system gypAndré Draszik2019-11-131-1/+4
| | | | | | | | | | | | | | Now that there is a gyp (python2) recipe in meta-python, allow its use instead of the bundled one for when meta-python is enabled. At the same time, unconditionally inherit pythonnative as in either case gyp actually uses python, and the build machine's python and installed modules should never be used. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: delete all bundled deps in do_unpack() if neededAndré Draszik2019-11-131-1/+16
| | | | | | | | | We can delete bundled deps where system-provided counterparts should be used instead. Amongst others, this ensures they are not used accidentally. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: ensure to use correct compiler & flags alwaysAndré Draszik2019-11-132-25/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | NodeJS comes with an embedded, patched, version of gyp. Normally, gyp supports compiling for the build machine, e.g. native tools that need to be compiled to run during the build, and for the host, using different variables, e.g. CC and CC.host, etc. Most of this has been patched out in the NodeJS version of gyp, and essentially it only supports compiling using one compiler - ${CC}. This modification excludes LDFLAGS for native tools, and those still evaluate LDFLAGS.host (only). While this modified behaviour is OK for the OE use-case of building native and target tools separately, it means that this recipe can not work as-is with standard gyp, and wrong LDFLAGS are being used for some of the tools compiled (torque) in either case. By setting the make variables that gyp-generated makefiles inspect, we support use of unpatched gyp, and we ensure that all tools are compiled with correct LDFLAGS in either case. This now also allows us to drop the patch that had been applied to work-around this problem. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: allow use of system nghttp2André Draszik2019-11-071-0/+1
| | | | | | | | | | | We can't enable this by default, though, as nghttp2 is in the meta-networking layer, which might not be enabled. At least this gives people a simple way to do so if they want. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: allow use of system libuv (and make default)André Draszik2019-11-011-1/+2
| | | | | | | | | | Use system libuv via PACKAGECONFIG by default. So far, nodejs had been built using its embedded copy of libuv, which we generally try to avoid, for the known reasons (independent updates, cve & license checks, etc). Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Upgrade 10.16.3 -> 10.17.0Adrian Bunk2019-11-012-125/+2
| | | | | | | Patch applied upstream removed. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: allow use of system c-ares (and make default)André Draszik2019-11-011-2/+3
| | | | | | | | | | | | | | | | Use system c-ares via PACKAGECONFIG by default. So far, nodejs had been built using its embedded copy of c-ares, which we generally try to avoid, for the known reasons (independent updates, cve & license checks, etc). Notes: * otherwise nodejs uses its bundled version of c-ares * the PACKAGECONFIG variable is 'ares' so as to be in line with other uses of this (wget & curl recipes in OE core) Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Mark incompatible with risc-vKhem Raj2019-09-071-0/+3
| | | | | | Arch is not yet supported Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 10.16.2 -> 10.16.3Andrej Valek2019-09-031-2/+2
| | | | | | | | - update nodejs to active 10.x LTS release 10.16.3 - include fix multiple HTTP/2 vulnerabilities Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: fix QA error about /usr/bin/python dependencyMartin Jansa2019-08-171-1/+1
| | | | | | | | | | | * fixes: ERROR: QA Issue: /usr/lib/node_modules/npm/node_modules/node-gyp/gyp/samples/samples contained in package nodejs-npm requires /usr/bin/python, but no providers found in RDEPENDS_nodejs-npm? [file-rdeps] Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 10.16.0 -> 10.16.2Andrej Valek2019-08-111-3/+3
| | | | | | | | - update nodejs to active 10.x LTS release 10.16.2. - add python running dependency due to samples.py requirements Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 10.15.3 -> 10.16.0Andrej Valek2019-07-101-6/+11
| | | | | | | | | | | | Update nodejs to active 10.x LTS release 10.16.0. - make dependencies configurable License checksum changed due to added bundled dependencies to: - siphash - large_pages - brotli Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Update GCC 4.8 compat patchBrad Bishop2019-03-261-0/+23
| | | | | | | | GCC 4.8 compatibility was lost moving from 10.15.1 to 10.15.3. Add another wrapper for std::make_unique to restore it. Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: upgrade 10.15.1 -> 10.15.3Andreas Müller2019-03-221-2/+2
| | | | | | | | | | | * 10.15.2 was a security release for CVE-2019-5737 [1] * 10.15.3 was a bugfix release [2] [1] https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V10.md#10.15.2 [2] https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V10.md#10.15.3 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: fix target ldflags usingAndrej Valek2019-03-192-0/+25
| | | | | | | | | - do not drop target LDFLAGS - even if the target LDFLAGS have been specified, tools like torque was linked with system libraries Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: fix additional compatibility with older gccAndrej Valek2019-02-221-8/+28
| | | | | | | | - replace all occurrences of std::make_unique with wrapper - sync indent level Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs 8.15.0 -> 10.15.1Andrej Valek2019-02-176-17/+230
| | | | | | | | | Update nodejs to active 10.x LTS release 10.15.1. - link atomic library - make it compatible with gcc < 4.9 Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs 8.14.0 -> 8.15.0Matthijs Vader2019-01-281-2/+2
| | | | | | | | Update nodejs to latest 8.x stable release 8.15.0. Signed-off-by: Matthijs Vader <mvader@victronenergy.com> Signed-off-by: Jeroen Hofstee <jhofstee@victronenergy.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: 8.12.0 -> 8.14.0Andrej Valek2018-12-041-2/+2
| | | | | | | Update nodejs to latest 8.x stable release 8.14.0. Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nodejs: Enable system ICU supportKhem Raj2018-10-121-2/+4
| | | | | | Latest Chromium needs it during build Signed-off-by: Khem Raj <raj.khem@gmail.com>