diff options
author | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2019-09-09 21:56:00 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2019-09-09 21:57:26 +0300 |
commit | c1d34338068e7d99e34db98597b2d8b3b58e6c2a (patch) | |
tree | 9d67e75edf68185cb9bd927a46accb4da1076174 /meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb | |
parent | 8b5c4203192fdd08369251934d67889367169f44 (diff) | |
download | openbmc-c1d34338068e7d99e34db98597b2d8b3b58e6c2a.tar.xz |
meta-openembedded: subtree update:6a5d6bc9ad..3061ead8cf
Adrian Bunk (2):
gpsd: gpscat no longer uses python-curses in 3.19
dejagnu: Remove, moved to oe-core
Alex Kiernan (1):
zstd: Upgrade 1.4.2 -> 1.4.3
Alistair Francis (2):
python3-twine: Initial commit of 1.13.0
python3-pytest-asyncio: Initial commit of 0.10.0
Andreas Müller (4):
fluidsynth: upgrade 2.0.5 -> 2.0.6
imsettings: upgrade 1.7.3 -> 1.8.1 and rework recipe
xfce4-settings: upgrade 4.14.0 -> 4.14.1
xfce4-screenshooter: upgrade 1.9.5 -> 1.9.6
Andrej Valek (1):
nodejs: 10.16.2 -> 10.16.3
Changqing Li (7):
yail: update UPSTREAM_CHECK_GITTAGREGEX
iscsi-initiator-utils: 2.0.876 -> 2.0.877
postgresql: 11.4 -> 11.5
satyr: upgrade 0.27 -> 0.28
freeradius: upgrade 3.0.17 -> 3.0.19
drbd-utils: switch to add patch from change source in do_configure
xfsdump: support usrmerge
Gianfranco Costamagna (2):
grpc: don't use unexisting gettid function on glibc 2.29, it has been implemented only in 2.30
grpc: Change gettid patch with the upstream merged version
Hongxu Jia (1):
lvm2: fix blkdeactivate failed with command not found
Kai Kang (4):
lmbench: update script lmbench-run
mariadb: fix file conflictions when multilib enabled
php: sync with apache2's change
apache2: fix multilib file conflicts
Khem Raj (11):
iperf2: Fix build with latest libc++
iscsi-initiator-utils: Inherit pkgconfig and override PKG_CONFIG
klibc: Fix build with 5.2+ kernel headers
samba: Fix configure tests to work with clang
ltrace: Fix build on mips
python-jinja2: Make asyncio specific to python3 module alone
python3-cmd2: Add to blacklist
nodejs: Mark incompatible with risc-v
drbd,netkit-rusers: Blacklist packages
vboxguestdrivers,can-isotp,bpftool: Add to Blacklist
strongswan: Fix do_patch fuzz
Li Zhou (1):
tipcutils: ptts: Set recv buffer size to max to receive as many packets as possible
Martin Jansa (1):
python3-pyatspi: restrict with GTK2DISTROFEATURES
Oleksandr Kravchuk (1):
nano: update to 4.4
Qi.Chen@windriver.com (2):
python-hyperlink: rdepend on python-idna
python-jinja2: rdepend on asyncio module
Robert Yang (1):
netcf: Fix do_configure failed when multilib
Scott Ellis (1):
wireguard: Upgrade 20190702 to 20190905
Yuan Chao (10):
strongswan: upgrade 5.8.0 -> 5.8.1
php: upgrade 7.3.8 -> 7.3.9
libtalloc: upgrade 2.2.0 -> 2.3.0
numactl: upgrade 2.0.12 -> 2.0.13
uhubctl: upgrade 2.0.0 -> 2.1.0
python-pytest: upgrade 5.1.1 -> 5.1.2
python-stevedore: upgrade 1.30.1 -> 1.31.0
python-dbus: upgrade 1.2.8 -> 1.2.10
python-pbr: upgrade 5.4.2 -> 5.4.3
python-pyasn1: upgrade 0.4.6 -> 0.4.7
Zang Ruochen (3):
python-paste: upgrade 3.1.1 -> 3.2.0
libnet-dns-perl: upgrade 1.20 -> 1.21
hwdata: upgrade 0.326 -> 0.327
Zheng Ruoqin (1):
python-cmd2: Add python3 version
aehs29@gmail.com (1):
remmina: Add recipe for the remmina remote desktop client
Change-Id: I11f4319f53655ab389fcb7a0ce4f22b71f9a8da2
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb new file mode 100644 index 000000000..a978eebe4 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb @@ -0,0 +1,113 @@ +DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript" +HOMEPAGE = "http://nodejs.org" +LICENSE = "MIT & BSD & Artistic-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=be980eb7ccafe287cb438076a65e888c" + +DEPENDS = "openssl" +DEPENDS_append_class-target = " nodejs-native" + +inherit pkgconfig + +COMPATIBLE_MACHINE_armv4 = "(!.*armv4).*" +COMPATIBLE_MACHINE_armv5 = "(!.*armv5).*" +COMPATIBLE_MACHINE_mips64 = "(!.*mips64).*" + +COMPATIBLE_HOST_riscv64 = "null" +COMPATIBLE_HOST_riscv32 = "null" + +SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ + file://0001-Disable-running-gyp-files-for-bundled-deps.patch \ + file://0003-Crypto-reduce-memory-usage-of-SignFinal.patch \ + file://0004-Make-compatibility-with-gcc-4.8.patch \ + file://0005-Link-atomic-library.patch \ + file://0006-Use-target-ldflags.patch \ + " +SRC_URI_append_class-target = " \ + file://0002-Using-native-torque.patch \ + " + +SRC_URI[md5sum] = "b41275a018e670947c1950b12f050a2f" +SRC_URI[sha256sum] = "7bf1123d7415964775b8f81fe6ec6dd5c3c08abb42bb71dfe4409dbeeba26bbd" + +S = "${WORKDIR}/node-v${PV}" + +# v8 errors out if you have set CCACHE +CCACHE = "" + +def map_nodejs_arch(a, d): + import re + + if re.match('i.86$', a): return 'ia32' + elif re.match('x86_64$', a): return 'x64' + elif re.match('aarch64$', a): return 'arm64' + elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64' + elif re.match('powerpc$', a): return 'ppc' + return a + +ARCHFLAGS_arm = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '--with-arm-float-abi=hard', '--with-arm-float-abi=softfp', d)} \ + ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--with-arm-fpu=neon', \ + bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '--with-arm-fpu=vfpv3-d16', \ + bb.utils.contains('TUNE_FEATURES', 'vfpv3', '--with-arm-fpu=vfpv3', \ + '--with-arm-fpu=vfp', d), d), d)}" +GYP_DEFINES_append_mipsel = " mips_arch_variant='r1' " +ARCHFLAGS ?= "" + +PACKAGECONFIG ??= "zlib icu" +PACKAGECONFIG[zlib] = "--shared-zlib,,zlib" +PACKAGECONFIG[icu] = "--with-intl=system-icu,--without-intl,icu" + +# Node is way too cool to use proper autotools, so we install two wrappers to forcefully inject proper arch cflags to workaround gypi +do_configure () { + rm -rf ${S}/deps/openssl + export LD="${CXX}" + GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES + # $TARGET_ARCH settings don't match --dest-cpu settings + ./configure --prefix=${prefix} --without-snapshot --shared-openssl \ + --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \ + --dest-os=linux \ + ${ARCHFLAGS} \ + ${PACKAGECONFIG_CONFARGS} +} + +do_compile () { + export LD="${CXX}" + oe_runmake BUILDTYPE=Release +} + +do_install () { + oe_runmake install DESTDIR=${D} +} + +do_install_append_class-native() { + # use node from PATH instead of absolute path to sysroot + # node-v0.10.25/tools/install.py is using: + # shebang = os.path.join(node_prefix, 'bin/node') + # update_shebang(link_path, shebang) + # and node_prefix can be very long path to bindir in native sysroot and + # when it exceeds 128 character shebang limit it's stripped to incorrect path + # and npm fails to execute like in this case with 133 characters show in log.do_install: + # updating shebang of /home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/work/x86_64-linux/nodejs-native/0.10.15-r0/image/home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/sysroots/x86_64-linux/usr/bin/npm to /home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/sysroots/x86_64-linux/usr/bin/node + # /usr/bin/npm is symlink to /usr/lib/node_modules/npm/bin/npm-cli.js + # use sed on npm-cli.js because otherwise symlink is replaced with normal file and + # npm-cli.js continues to use old shebang + sed "1s^.*^#\!/usr/bin/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js + + # Install the native torque to provide it within sysroot for the target compilation + install -d ${D}${bindir} + install -m 0755 ${S}/out/Release/torque ${D}${bindir}/torque +} + +do_install_append_class-target() { + sed "1s^.*^#\!${bindir}/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js +} + +PACKAGES =+ "${PN}-npm" +FILES_${PN}-npm = "${exec_prefix}/lib/node_modules ${bindir}/npm ${bindir}/npx" +RDEPENDS_${PN}-npm = "bash python-core python-shell python-datetime python-subprocess python-textutils \ + python-compiler python-misc python-multiprocessing" + +PACKAGES =+ "${PN}-systemtap" +FILES_${PN}-systemtap = "${datadir}/systemtap" + + +BBCLASSEXTEND = "native" |