dfe68fc8d5
NodeJS requires GCC 10.1. However, GCC 10.1 is the first release of the GCC 10.x series. As such, we can safely downgrade the GCC version requirements to 10. Tested with: run-tests tests.package.test_nodejs using Debian 11 and gcc 10.2.1. Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
91 lines
3.1 KiB
Plaintext
91 lines
3.1 KiB
Plaintext
config BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
|
|
bool
|
|
# On ARM, at least ARMv6+ with VFPv2+ is needed
|
|
default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 && BR2_ARM_CPU_HAS_VFPV2
|
|
default y if BR2_aarch64 || BR2_i386 || BR2_x86_64
|
|
# libuv
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
depends on BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS
|
|
|
|
comment "nodejs needs a toolchain w/ C++, dynamic library, NPTL, gcc >= 10, wchar, host gcc >= 10"
|
|
depends on BR2_USE_MMU
|
|
depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
|
|
depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
|
|
!BR2_HOST_GCC_AT_LEAST_10 || !BR2_TOOLCHAIN_GCC_AT_LEAST_10 || !BR2_USE_WCHAR
|
|
|
|
config BR2_PACKAGE_NODEJS
|
|
bool "nodejs"
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
|
|
depends on BR2_INSTALL_LIBSTDCPP
|
|
depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
|
|
depends on BR2_HOST_GCC_AT_LEAST_10
|
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10
|
|
depends on BR2_USE_WCHAR
|
|
# uses fork()
|
|
depends on BR2_USE_MMU
|
|
# uses dlopen(). On ARMv5, we could technically support static
|
|
# linking, but that's too much of a corner case to support it.
|
|
depends on !BR2_STATIC_LIBS
|
|
select BR2_PACKAGE_NODEJS_SRC
|
|
select BR2_PACKAGE_HOST_NODEJS if BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL != ""
|
|
select BR2_PACKAGE_HOST_PYTHON3
|
|
select BR2_PACKAGE_HOST_PYTHON3_BZIP2
|
|
select BR2_PACKAGE_HOST_PYTHON3_SSL
|
|
select BR2_PACKAGE_HOST_QEMU
|
|
select BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE
|
|
select BR2_PACKAGE_C_ARES
|
|
select BR2_PACKAGE_LIBUV
|
|
select BR2_PACKAGE_ZLIB
|
|
select BR2_PACKAGE_NGHTTP2
|
|
help
|
|
Event-driven I/O server-side JavaScript environment based on
|
|
V8.
|
|
|
|
http://nodejs.org/
|
|
|
|
if BR2_PACKAGE_NODEJS
|
|
|
|
config BR2_PACKAGE_NODEJS_NPM
|
|
bool "NPM for the target"
|
|
select BR2_PACKAGE_OPENSSL
|
|
help
|
|
NPM is the package manager for the Node JavaScript platform.
|
|
Note that enabling NPM on the target also selects OpenSSL
|
|
for the target.
|
|
|
|
http://www.npmjs.org
|
|
|
|
Note that NPM is always built for the buildroot host.
|
|
|
|
config BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL
|
|
string "Additional modules"
|
|
help
|
|
List of space-separated nodejs modules to install via npm.
|
|
See https://npmjs.org/ to find modules and 'npm help install'
|
|
for available installation methods. For repeatable builds,
|
|
download and save tgz files or clone git repos for the
|
|
components you care about.
|
|
|
|
Example:
|
|
serialport uglify-js@1.3.4 /my/module/mymodule.tgz \
|
|
git://github.com/someuser/somemodule.git#v1.2
|
|
|
|
This would install the serialport module (at the newest
|
|
version), the uglify-js module at 1.3.4, a module from a
|
|
filesystem path, and a module from a git repository.
|
|
|
|
config BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS
|
|
string "Additional module dependencies"
|
|
help
|
|
List of space-separated buildroot recipes which must be
|
|
built before your npms can be installed. For example, if in
|
|
'Additional modules' you specified 'node-curl' (see:
|
|
https://github.com/jiangmiao/node-curl), you could then
|
|
specify 'libcurl' here, to ensure that buildroot builds the
|
|
libcurl package, and does so before building your node
|
|
modules.
|
|
|
|
endif
|
|
|
|
source "package/nodejs/nodejs-src/Config.in"
|