Commit Graph

29 Commits

Author SHA1 Message Date
Khem Raj
45a2dfdd0f nodejs: Fix arm32/thumb builds with clang
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>
2020-11-02 09:00:52 -08:00
Khem Raj
bda3ee6276 nodejs: Upgrade to 12.18.3
Drop already upstreamed patches
use builtin uv, it does not build without it

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-13 22:37:48 -07:00
Khem Raj
7910f2b645 nodejs: Fix build with icu 67.1
Remove soon-to-be removed getAllFieldPositions

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andrej Valek <andrej.valek@siemens.com>
2020-05-06 23:20:29 -07:00
Khem Raj
db0075f503 nodejs: Fix -Wc++11-narrowing on mips
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-15 23:10:02 -07:00
André Draszik
b3b81507b7 nodejs: allow use of system brotli (and make default)
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>
2020-03-03 11:40:40 -08:00
Khem Raj
354bedc9ab nodejs: Fix build on big-endian targets
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>
2020-01-23 14:16:25 -08:00
Guillaume Burel
feeb172d1a nodejs: 10.17.0 -> 12.14.0
- 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>
2020-01-23 14:16:25 -08:00
Andreas Müller
f0f6c0174d nodejs: Add PACKAGECONFIG share to allow other projects to use node as library
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>
2019-12-01 22:29:59 -08:00
André Draszik
c174217540 nodejs: use OE-provided compiler flags (arm)
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>
2019-11-13 07:17:03 -08:00
André Draszik
08956bdd89 nodejs: ensure to use correct compiler & flags always
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>
2019-11-13 07:17:03 -08:00
Adrian Bunk
a0361dad8b nodejs: Upgrade 10.16.3 -> 10.17.0
Patch applied upstream removed.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-11-01 17:22:52 -07:00
Brad Bishop
478c35bc01 nodejs: Update GCC 4.8 compat patch
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>
2019-03-26 09:43:57 -07:00
Andrej Valek
f0c1ee77d9 nodejs: fix target ldflags using
- 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>
2019-03-19 21:00:06 -07:00
Andrej Valek
bef21ed9aa nodejs: fix additional compatibility with older gcc
- 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>
2019-02-22 18:14:52 -08:00
Andrej Valek
1c8e4a679a nodejs 8.15.0 -> 10.15.1
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>
2019-02-17 12:40:56 -08:00
Jonathan Liu
09d5d09762 nodejs: Remove unreferenced patches
Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-10-27 16:39:33 +00:00
Khem Raj
3f37748ee8 nodejs: Upgrade to 8.4.0
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-08-31 10:18:33 +02:00
Trevor Woerner
c13175d913 nodejs: cleanup and update
Remove old nodejs4_0.4.12 and update nodejs_0.12.7 to the latest stable
nodejs_4.2.3.

Nodejs is picky about which architectures it supports. The supported arch
mapping required some updating to bring it up to date with the current nodejs
code. Add COMPATIBLE_MACHINE entries so it only builds for the supported
architectures.

ARM cores that don't support at least VFP2 have been dropped:

    https://groups.google.com/forum/#!topic/v8-users/aSOFbaAQvMk

    "Due the increasing cost of the keeping the "no-VFPv2" port of V8 working
    on ARM, we are planning on making 3.17 the last V8 release that that
    supports ARM chips without VFPv2. Starting with the 3.18 release, the
    minimal V8 requirements will increase to ARMv6 + VFPv2. In order to
    simplify maintenance, we will also remove the "pre-VFP2" ARM code from the
    V8 code base."

Additionally, gcc no longer supports a VFPv2 option:

    https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html#index-mfpu-1460

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-01-04 14:56:23 +01:00
Martin Jansa
c6eef3a0c1 nodejs: fix no-registry option
* https://github.com/npm/npm/issues/3691
* https://github.com/npm/npm/issues/5509

Signed-off-by: Martin Jansa <martin.jansa@lge.com>
2015-07-16 21:09:05 +02:00
Martin Jansa
c6c324c904 nodejs: fix qemuarm build without thumb and drop unused patch
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-05-11 10:25:53 +02:00
Martin Jansa
c8aa4b10b2 Revert "nodejs: upgrade to 0.10.4"
This reverts commit 903e7131ba.
2013-06-20 12:33:07 +02:00
Martin Jansa
903e7131ba nodejs: upgrade to 0.10.4
* 0001-gcc-has-a-builtin-define-to-denote-hard-abi-when-in-.patch seems
  to be resolved by https://chromiumcodereview.appspot.com/10713009

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-06-20 12:30:07 +02:00
Martin Jansa
79b8431f61 nodejs: remove older 0.6.21
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-04-11 11:33:38 +02:00
Koen Kooi
ae72ce9aeb nodejs: add 0.8.18
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-04-11 11:33:38 +02:00
Otavio Salvador
2bf758cb02 nodejs: update to 0.6.18 and fix hardfloat detection
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2012-05-18 22:21:22 +02:00
Koen Kooi
05203855ac nodejs 0.4.12: rename to node4 to make it parallel installable with 0.6.x
This is done to support running cloud9 using node 0.4.x but all other node apps with 0.6.x

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2012-04-08 21:48:57 +02:00
Stefan Schmidt
86c42ab05a nodejs: Update to latest 0.4x series release 0.4.12
Rename patch and update checksums accordingly.

Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2011-11-16 13:35:47 +01:00
Koen Kooi
a49c995b40 nodejs: update to 0.4.9
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2011-11-14 18:27:42 +01:00
Koen Kooi
ffd6c31cb4 nodejs 0.4.2: import from OE rev e02237d7e46e60fbd9eb4a05a308e6adcf916ebb
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2011-08-17 09:21:10 +02:00