Skip to contentSkip to conversation

package/nodejs: remove 0.10.x support

PATCH New Martin Bark 2 participants 3 messages Mar 14, 2017

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/2 package/nodejs: remove 0.10.x support

nodejs 0.10.x is now end of life and is no longer maintained so remove it. See https://github.com/nodejs/LTS

---
Changes v1 -> v2:
- reorder patch to be before bumping version to 7.7.2 (Thomas Petazzoni)

---
 .../0001-remove-python-bz2-dependency.patch        | 27 -------------
 .../0002-gyp-force-link-command-to-use-CXX.patch   | 26 ------------
 .../0003-fix-musl-USE-MISC-build-issue.patch       | 47 ----------------------
 .../0.10.48/0004-Fix-support-for-uClibc-ng.patch   | 33 ---------------
 .../0001-gyp-force-link-command-to-use-CXX.patch   |  0
 ...-don-t-build-when-ssl-support-is-disabled.patch |  0
 package/nodejs/Config.in                           | 32 +++++----------
 package/nodejs/nodejs.hash                         |  3 --
 package/nodejs/nodejs.mk                           |  7 +---
 9 files changed, 11 insertions(+), 164 deletions(-)
 delete mode 100644 package/nodejs/0.10.48/0001-remove-python-bz2-dependency.patch
 delete mode 100644 package/nodejs/0.10.48/0002-gyp-force-link-command-to-use-CXX.patch
 delete mode 100644 package/nodejs/0.10.48/0003-fix-musl-USE-MISC-build-issue.patch
 delete mode 100644 package/nodejs/0.10.48/0004-Fix-support-for-uClibc-ng.patch
 rename package/nodejs/{6.9.4 => }/0001-gyp-force-link-command-to-use-CXX.patch (100%)
 rename package/nodejs/{6.9.4 => }/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch (100%)
package/nodejs/0.10.48/0001-remove-python-bz2-dependency.patch deleted +0 -27
deleted file mode 100644
index 75fe437..0000000
@@ -1,27 +0,0 @@
-Remove dependency on Python bz2 module
-
-The Python bz2 module is only needed in certain cases, so only import
-it when needed. In the normal nodejs build, this allows to remove the
-dependency on this module.
-
-Signed-off-by: Thomas Petazzoni <[email protected]>
-Index: b/deps/v8/tools/js2c.py
-===================================================================
---- a/deps/v8/tools/js2c.py
-+++ b/deps/v8/tools/js2c.py
-@@ -33,7 +33,6 @@
- 
- import os, re, sys, string
- import jsmin
--import bz2
- 
- 
- def ToCAsciiArray(lines):
-@@ -344,6 +343,7 @@
-   else:
-     raw_sources_declaration = RAW_SOURCES_COMPRESSION_DECLARATION
-     if env['COMPRESSION'] == 'bz2':
-+      import bz2
-       all_sources = bz2.compress("".join(all_sources))
-     total_length = len(all_sources)
-     sources_data = ToCArray(all_sources)
package/nodejs/0.10.48/0002-gyp-force-link-command-to-use-CXX.patch deleted +0 -26
deleted file mode 100644
index a2f02ab..0000000
@@ -1,26 +0,0 @@
-From 00d809e9305241f8636a2d75e22c493293e6971a Mon Sep 17 00:00:00 2001
-From: Samuel Martin <[email protected]>
-Date: Sun, 20 Apr 2014 15:03:01 +0200
-Subject: [PATCH] gyp: force link command to use CXX
-
-Signed-off-by: Samuel Martin <[email protected]>
----
- tools/gyp/pylib/gyp/generator/make.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tools/gyp/pylib/gyp/generator/make.py b/tools/gyp/pylib/gyp/generator/make.py
-index 0de510e..54e4c96 100644
---- a/tools/gyp/pylib/gyp/generator/make.py
-+++ b/tools/gyp/pylib/gyp/generator/make.py
-@@ -134,7 +134,7 @@ cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^)
- # special "figure out circular dependencies" flags around the entire
- # input list during linking.
- quiet_cmd_link = LINK($(TOOLSET)) $@
--cmd_link = $(LINK.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
-+cmd_link = $(CXX.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
- 
- # We support two kinds of shared objects (.so):
- # 1) shared_library, which is just bundling together many dependent libraries
--- 
-1.9.2
-
package/nodejs/0.10.48/0003-fix-musl-USE-MISC-build-issue.patch deleted +0 -47

47 lines not on this page · raw message

package/nodejs/0.10.48/0004-Fix-support-for-uClibc-ng.patch deleted +0 -33
deleted file mode 100644
index 59b9d50..0000000
@@ -1,33 +0,0 @@
-From 1cc08f6ceacbb0e5ba1f4638ca3a97ac002d7792 Mon Sep 17 00:00:00 2001
-From: "Bark, Martin" <[email protected]>
-Date: Mon, 14 Dec 2015 13:26:10 +0000
-Subject: [PATCH 2/2] Fix support for uClibc-ng
-
-uClibc-ng is currently at v1.0.9.  The patch corrects the uClibc
-version test so that HAVE_IFADDRS_H is defined for uClibc versions
-after v0.9.32.
-
-Submitted upstream to libuv and accepted, see
-https://github.com/libuv/libuv/pull/653 and
-https://github.com/libuv/libuv/commit/c861972
-
-Signed-off-by: Bark, Martin <[email protected]>
----
- deps/uv/src/unix/linux-core.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/deps/uv/src/unix/linux-core.c b/deps/uv/src/unix/linux-core.c
-index e6e6828..6cbbb71 100644
---- a/deps/uv/src/unix/linux-core.c
-+++ b/deps/uv/src/unix/linux-core.c
-@@ -39,7 +39,7 @@
- #define HAVE_IFADDRS_H 1
-
- #ifdef __UCLIBC__
--# if __UCLIBC_MAJOR__ < 0 || __UCLIBC_MINOR__ < 9 || __UCLIBC_SUBLEVEL__ < 32
-+# if __UCLIBC_MAJOR__ < 0 && __UCLIBC_MINOR__ < 9 && __UCLIBC_SUBLEVEL__ < 32
- #  undef HAVE_IFADDRS_H
- # endif
- #endif
---
-2.6.2
package/nodejs/0001-gyp-force-link-command-to-use-CXX.patch renamed from package/nodejs/6.9.4/0001-gyp-force-link-command-to-use-CXX.patch +0 -0
similarity index 100%
rename from package/nodejs/6.9.4/0001-gyp-force-link-command-to-use-CXX.patch
rename to package/nodejs/0001-gyp-force-link-command-to-use-CXX.patch
package/nodejs/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch renamed from package/nodejs/6.9.4/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch +0 -0
similarity index 100%
rename from package/nodejs/6.9.4/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch
rename to package/nodejs/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch
package/nodejs/Config.in +9 -23
index b8c45f5..4810d59 100644
@@ -1,8 +1,13 @@
+config BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
+	bool
+	# On ARM,@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_mipsel && !BR2_MIPS_SOFT_FLOAT
+	default y if BR2_aarch64 || BR2_i386 || BR2_x86_64
+
 comment "nodejs needs a toolchain w/ C++, dynamic library, threads, gcc >= 4.8, wchar"
 	depends on BR2_USE_MMU
-	depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_mipsel
-	depends on !BR2_MIPS_SOFT_FLOAT
-	depends on !BR2_ARM_CPU_ARMV4
+	depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
 	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \
 		!BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR
 
@@ -10,12 +15,7 @@ config BR2_PACKAGE_NODEJS
 	bool "nodejs"
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_INSTALL_LIBSTDCPP
-	depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_mipsel
-	depends on !BR2_MIPS_SOFT_FLOAT
-	# ARM needs BLX, so v5t+
-	depends on !BR2_ARM_CPU_ARMV4
-	# 0.10.x could be built without the following toolchain dependencies but
-	# simplify things by requiring these basic dependencies for all versions.
+	depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
 	depends on BR2_HOST_GCC_AT_LEAST_4_8
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
 	depends on BR2_USE_WCHAR
@@ -32,20 +32,6 @@ config BR2_PACKAGE_NODEJS
 
 if BR2_PACKAGE_NODEJS
 
-# Starting with 0.12.x, on ARM, V8 (the JS engine)
-# now requires an armv6+ and a VFPv2+.
-config BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS
-	bool
-	# On supported architectures other than ARM, no special requirement
-	default y if !BR2_arm
-	# On ARM, at least ARMv6+ with VFPv2+ is needed
-	default y if !BR2_ARM_CPU_ARMV5 && BR2_ARM_CPU_HAS_VFPV2
-
-config BR2_PACKAGE_NODEJS_VERSION_STRING
-	string
-	default "6.9.4"		if BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS
-	default "0.10.48"
-
 config BR2_PACKAGE_NODEJS_NPM
 	bool "NPM for the target"
 	select BR2_PACKAGE_OPENSSL
package/nodejs/nodejs.hash +0 -3
index 8c8c5a3..02ad8f3 100644
@@ -1,5 +1,2 @@
-# From upstream URL: http://nodejs.org/dist/v0.10.48/SHASUMS256.txt
-sha256  365a93d9acc076a0d93f087d269f376abeebccad599a9dab72f2f6ed96c8ae6e  node-v0.10.48.tar.xz
-
 # From upstream URL: http://nodejs.org/dist/v6.9.4/SHASUMS256.txt
 sha256  c51d7c61db40455d57428abcadc7eb0f0a08a8878cb1d8ea3c1e211c54532c35  node-v6.9.4.tar.xz
package/nodejs/nodejs.mk +2 -5
index 042cc3f..858626a 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-NODEJS_VERSION = $(call qstrip,$(BR2_PACKAGE_NODEJS_VERSION_STRING))
+NODEJS_VERSION = 6.9.4
 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
 NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
 NODEJS_DEPENDENCIES = host-python host-nodejs zlib \
@@ -27,15 +27,12 @@ else
 NODEJS_CONF_OPTS += --without-ssl
 endif
 
-# 0.10.x does not have icu support
-ifeq ($(findstring 0.10.,$(NODEJS_VERSION)),)
 ifeq ($(BR2_PACKAGE_ICU),y)
 NODEJS_DEPENDENCIES += icu
 NODEJS_CONF_OPTS += --with-intl=system-icu
 else
 NODEJS_CONF_OPTS += --with-intl=none
 endif
-endif
 
 ifneq ($(BR2_PACKAGE_NODEJS_NPM),y)
 NODEJS_CONF_OPTS += --without-npm
@@ -63,7 +60,7 @@ define HOST_NODEJS_CONFIGURE_CMDS
 		--without-dtrace \
 		--without-etw \
 		--shared-zlib \
-		$(if $(BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS),--with-intl=none) \
+		--with-intl=none \
 	)
 endef
 
Signature · 1 line
2.7.4
#1 lore raw

PATCH v2 2/2 package/nodejs: bump version to 7.7.2

See https://nodejs.org/en/blog/release/v7.7.2/

---

Changes v1 -> v2:
- reorder patch to be after removal of 0.10.x (Thomas Petazzoni)
- bump to 7.7.2 instead of 7.7.1

Note: 0002-src-add-HAVE_OPENSSL-directive-to-openssl_config.patch was taken from https://github.com/nodejs/node/pull/11734

0001-check-if-uclibc-has-backtrace-support.patch is against files in v8 so will be around until a new major version of nodejs

---
 ...001-check-if-uclibc-has-backtrace-support.patch | 26 ++++++++++++
 .../0001-gyp-force-link-command-to-use-CXX.patch   | 29 -------------
 ...-don-t-build-when-ssl-support-is-disabled.patch | 35 ----------------
 ...-HAVE_OPENSSL-directive-to-openssl_config.patch | 47 ++++++++++++++++++++++
 package/nodejs/nodejs.hash                         |  4 +-
 package/nodejs/nodejs.mk                           |  7 +++-
 6 files changed, 81 insertions(+), 67 deletions(-)
 create mode 100644 package/nodejs/0001-check-if-uclibc-has-backtrace-support.patch
 delete mode 100644 package/nodejs/0001-gyp-force-link-command-to-use-CXX.patch
 delete mode 100644 package/nodejs/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch
 create mode 100644 package/nodejs/0002-src-add-HAVE_OPENSSL-directive-to-openssl_config.patch
package/nodejs/0001-check-if-uclibc-has-backtrace-support.patch new file +26 -0
new file mode 100644
index 0000000..079bbb4
@@ -0,0 +1,26 @@
+From 7c69553d7275bbcaa88fada8ccd0d2d9f787e1ad Mon Sep 17 00:00:00 2001
+From: Martin Bark <[email protected]>
+Date: Sat, 4 Mar 2017 20:41:40 +0000
+Subject: [PATCH] check if uclibc has backtrace support
+
+Signed-off-by: Martin Bark <[email protected]>
+---
+ deps/v8/src/base/debug/stack_trace_posix.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/deps/v8/src/base/debug/stack_trace_posix.cc b/deps/v8/src/base/debug/stack_trace_posix.cc
+index 87c0a73..d2c182a 100644
+--- a/deps/v8/src/base/debug/stack_trace_posix.cc
++++ b/deps/v8/src/base/debug/stack_trace_posix.cc
+@@ -25,7 +25,7 @@
+ #include <string>
+ #include <vector>
+ 
+-#if V8_LIBC_GLIBC || V8_LIBC_BSD || V8_LIBC_UCLIBC || V8_OS_SOLARIS
++#if V8_LIBC_GLIBC || V8_LIBC_BSD || ( V8_LIBC_UCLIBC && __UCLIBC_HAS_BACKTRACE__ ) || V8_OS_SOLARIS
+ #define HAVE_EXECINFO_H 1
+ #endif
+ 
+-- 
+2.7.4
+
package/nodejs/0001-gyp-force-link-command-to-use-CXX.patch deleted +0 -29
deleted file mode 100644
index 5746582..0000000
@@ -1,29 +0,0 @@
-From 90a3c113c19ec615249ab880c45c6c0a8d369098 Mon Sep 17 00:00:00 2001
-From: Martin Bark <[email protected]>
-Date: Tue, 30 Jun 2015 09:43:47 +0100
-Subject: [PATCH 2/4] gyp: force link command to use CXX
-
-Signed-off-by: Samuel Martin <[email protected]>
-Signed-off-by: Martin Bark <[email protected]>
-[yann.morin.1998 at free.fr: adapt to 4.1.2]
-Signed-off-by: "Yann E. MORIN" <[email protected]>
----
- tools/gyp/pylib/gyp/generator/make.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tools/gyp/pylib/gyp/generator/make.py b/tools/gyp/pylib/gyp/generator/make.py
-index b88a433..0a1f2e0 100644
---- a/tools/gyp/pylib/gyp/generator/make.py
-+++ b/tools/gyp/pylib/gyp/generator/make.py
-@@ -142,7 +142,7 @@ cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^)
- # special "figure out circular dependencies" flags around the entire
- # input list during linking.
- quiet_cmd_link = LINK($(TOOLSET)) $@
--cmd_link = $(LINK.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
-+cmd_link = $(CXX.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
- 
- # We support two kinds of shared objects (.so):
- # 1) shared_library, which is just bundling together many dependent libraries
--- 
-2.1.4
-
package/nodejs/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch deleted +0 -35
deleted file mode 100644
index c07cbf8..0000000
@@ -1,35 +0,0 @@
-From 7fa541f6c0a31e3ddcab6ea85040b531bbaa4651 Mon Sep 17 00:00:00 2001
-From: Martin Bark <[email protected]>
-Date: Tue, 12 Jul 2016 19:03:28 +0100
-Subject: [PATCH] inspector: don't build when ssl support is disabled
-
-Signed-off-by: Martin Bark <[email protected]>
----
- node.gyp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/node.gyp b/node.gyp
-index 8a8bd00..fdccd60 100644
---- a/node.gyp
-+++ b/node.gyp
-@@ -302,7 +302,7 @@
-             'deps/v8/src/third_party/vtune/v8vtune.gyp:v8_vtune'
-           ],
-         }],
--        [ 'v8_inspector=="true"', {
-+        [ 'v8_inspector=="true" and node_use_openssl =="true"', {
-           'defines': [
-             'HAVE_INSPECTOR=1',
-             'V8_INSPECTOR_USE_STL=1',
-@@ -828,7 +828,7 @@
-       ],
- 
-       'conditions': [
--        ['v8_inspector=="true"', {
-+        ['v8_inspector=="true" and node_use_openssl =="true"', {
-           'sources': [
-             'src/inspector_socket.cc',
-             'test/cctest/test_inspector_socket.cc'
--- 
-2.7.4
-
package/nodejs/0002-src-add-HAVE_OPENSSL-directive-to-openssl_config.patch new file +47 -0

47 lines not on this page · raw message

package/nodejs/nodejs.hash +2 -2
index 02ad8f3..f0a4968 100644
@@ -1,2 +1,2 @@
-# From upstream URL: http://nodejs.org/dist/v6.9.4/SHASUMS256.txt
-sha256  c51d7c61db40455d57428abcadc7eb0f0a08a8878cb1d8ea3c1e211c54532c35  node-v6.9.4.tar.xz
+# From upstream URL: http://nodejs.org/dist/v7.7.2/SHASUMS256.txt
+sha256  e7448d8e44d32c2c63347c822508cf5c87b9662c07db290056fec66d37c4f584  node-v7.7.2.tar.xz
package/nodejs/nodejs.mk +6 -1
index 858626a..0db97e8 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-NODEJS_VERSION = 6.9.4
+NODEJS_VERSION = 7.7.2
 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
 NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
 NODEJS_DEPENDENCIES = host-python host-nodejs zlib \
@@ -76,6 +76,8 @@ define HOST_NODEJS_INSTALL_CMDS
 		$(MAKE) -C $(@D) install \
 		$(HOST_CONFIGURE_OPTS) \
 		PATH=$(@D)/bin:$(BR_PATH)
+
+	$(INSTALL) -m755 -D $(@D)/out/Release/mkpeephole $(HOST_DIR)/usr/bin/mkpeephole
 endef
 
 ifeq ($(BR2_i386),y)
@@ -123,6 +125,9 @@ define NODEJS_CONFIGURE_CMDS
 		$(if $(NODEJS_MIPS_FPU_MODE),--with-mips-fpu-mode=$(NODEJS_MIPS_FPU_MODE)) \
 		$(NODEJS_CONF_OPTS) \
 	)
+
+	# use host version of mkpeephole
+	sed "s#<(mkpeephole_exec)#$(HOST_DIR)/usr/bin/mkpeephole#g" -i $(@D)/deps/v8/src/v8.gyp
 endef
 
 define NODEJS_BUILD_CMDS
Signature · 1 line
2.7.4
#2 lore raw

PATCH v2 1/2 package/nodejs: remove 0.10.x support

In reply to Martin Bark

Hello,

Quoted 17 lines · Martin Bark

nodejs 0.10.x is now end of life and is no longer maintained so remove it. See https://github.com/nodejs/LTS

---
Changes v1 -> v2:
- reorder patch to be before bumping version to 7.7.2 (Thomas Petazzoni)

---
 .../0001-remove-python-bz2-dependency.patch        | 27 -------------
 .../0002-gyp-force-link-command-to-use-CXX.patch   | 26 ------------
 .../0003-fix-musl-USE-MISC-build-issue.patch       | 47 ----------------------
 .../0.10.48/0004-Fix-support-for-uClibc-ng.patch   | 33 ---------------
 .../0001-gyp-force-link-command-to-use-CXX.patch   |  0
 ...-don-t-build-when-ssl-support-is-disabled.patch |  0
 package/nodejs/Config.in                           | 32 +++++----------
 package/nodejs/nodejs.hash                         |  3 --
Quoted 8 lines
 package/nodejs/nodejs.mk                           |  7 +---
 9 files changed, 11 insertions(+), 164 deletions(-)
 delete mode 100644 package/nodejs/0.10.48/0001-remove-python-bz2-dependency.patch
 delete mode 100644 package/nodejs/0.10.48/0002-gyp-force-link-command-to-use-CXX.patch
 delete mode 100644 package/nodejs/0.10.48/0003-fix-musl-USE-MISC-build-issue.patch
 delete mode 100644 package/nodejs/0.10.48/0004-Fix-support-for-uClibc-ng.patch
 rename package/nodejs/{6.9.4 => }/0001-gyp-force-link-command-to-use-CXX.patch (100%)
 rename package/nodejs/{6.9.4 => }/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch (100%)

Both applied to master. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com