Skip to contentSkip to conversation

package/nodejs: disable for static build

PATCH New Jörg Krause 3 participants 4 messages Aug 2, 2015 – Aug 3, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 package/nodejs: disable for static build

nodejs requires dlopen(), etc.

Fixes:
http://autobuild.buildroot.net/results/87d/87dab0186abd7b2737a56b2f939f3aba294e8772/
http://autobuild.buildroot.net/results/be1/be1010a3a31642d49ec3a118858c77fed2f762b8/

---
 package/nodejs/Config.in | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
package/nodejs/Config.in +3 -2
index c5ec792..69063fc 100644
@@ -8,17 +8,18 @@ config BR2_PACKAGE_NODEJS
 	depends on !BR2_ARM_CPU_ARMV4
 	# uses fork()
 	depends on BR2_USE_MMU
+	depends on !BR2_STATIC_LIBS # dlopen, etc.
 	select BR2_PACKAGE_ZLIB
 	help
 	  Event-driven I/O server-side JavaScript environment based on V8.
 
 	  http://nodejs.org/
 
-comment "nodejs needs a toolchain w/ C++, threads"
+comment "nodejs needs a toolchain w/ C++, dynamic library, threads"
 	depends on BR2_USE_MMU
 	depends on BR2_arm || BR2_i386 || BR2_x86_64 || BR2_mipsel
 	depends on !BR2_ARM_CPU_ARMV4
-	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
 
 if BR2_PACKAGE_NODEJS
 
Signature · 1 line
2.5.0
#1 lore raw

PATCH 1/1 package/nodejs: disable for static build

J?rg, All,

On 2015-08-02 11:07 +0200, J?rg Krause spake thusly:

Quoted 16 lines

nodejs requires dlopen(), etc.

Fixes:
http://autobuild.buildroot.net/results/87d/87dab0186abd7b2737a56b2f939f3aba294e8772/
http://autobuild.buildroot.net/results/be1/be1010a3a31642d49ec3a118858c77fed2f762b8/

---
 package/nodejs/Config.in | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
package/nodejs/Config.in +0 -0
index c5ec792..69063fc 100644

package/nodejs/Config.in config BR2_PACKAGE_NODEJS · line 11

Quoted 4 lines
package/nodejs/Config.in +1 -0
@@ -8,17 +8,18 @@ config BR2_PACKAGE_NODEJS
 	depends on !BR2_ARM_CPU_ARMV4
 	# uses fork()
 	depends on BR2_USE_MMU
+	depends on !BR2_STATIC_LIBS # dlopen, etc.

That's not entirely true. For armv5, nodejs 0.10 does not require dynamic libraries.

So, maybe something like:

    config BR2_PACKAGE_NODEJS
        depends on !BR2_STATIC_LIBS if BR2_arm && !BR2_ARM_CPU_ARMV5

package/nodejs/Config.in config BR2_PACKAGE_NODEJS · line 22

Quoted 13 lines
package/nodejs/Config.in +2 -2
 	select BR2_PACKAGE_ZLIB
 	help
 	  Event-driven I/O server-side JavaScript environment based on V8.
 
 	  http://nodejs.org/
 
-comment "nodejs needs a toolchain w/ C++, threads"
+comment "nodejs needs a toolchain w/ C++, dynamic library, threads"
 	depends on BR2_USE_MMU
 	depends on BR2_arm || BR2_i386 || BR2_x86_64 || BR2_mipsel
 	depends on !BR2_ARM_CPU_ARMV4
-	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS

However, I don't see a simple solution here. Maybe just add a second comment just for the dynamic library requirement?

Regards,
Yann E. MORIN.

Quoted 9 lines
package/nodejs/Config.in +0 -0
 if BR2_PACKAGE_NODEJS
 
Signature · 6 lines
2.5.0

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#2 lore raw

PATCH 1/1 package/nodejs: disable for static build

Yann,

Quoted 4 lines · Yann E. MORIN
Quoted 4 lines
package/nodejs/Config.in +0 -0
index c5ec792..69063fc 100644
Quoted 8 lines

package/nodejs/Config.in config BR2_PACKAGE_NODEJS · line 11

Quoted 5 lines
package/nodejs/Config.in +1 -0
@@ -8,17 +8,18 @@ config BR2_PACKAGE_NODEJS
 	depends on !BR2_ARM_CPU_ARMV4
 	# uses fork()
 	depends on BR2_USE_MMU
+	depends on !BR2_STATIC_LIBS # dlopen, etc.

That's not entirely true. For armv5, nodejs 0.10 does not require dynamic libraries.

Do we really care? Nodejs is a big stuff, unlikely to be used in static-only configurations. Plus the latest version of NodeJS, 0.12.x, no longer supports ARMv5. So I'm tempted to simply not support static linking at all, even if indeed for a very specific case it could be supported.

What do you think?

Best regards,

Thomas

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

PATCH 1/1 package/nodejs: disable for static build

Thomas, All,

On 2015-08-03 11:14 +0200, Thomas Petazzoni spake thusly:

Quoted 17 lines

Yann,

Quoted 4 lines · Yann E. MORIN
Quoted 4 lines
package/nodejs/Config.in +0 -0
index c5ec792..69063fc 100644
Quoted 8 lines

package/nodejs/Config.in config BR2_PACKAGE_NODEJS · line 11

Quoted 5 lines
package/nodejs/Config.in +1 -0
@@ -8,17 +8,18 @@ config BR2_PACKAGE_NODEJS
 	depends on !BR2_ARM_CPU_ARMV4
 	# uses fork()
 	depends on BR2_USE_MMU
+	depends on !BR2_STATIC_LIBS # dlopen, etc.

That's not entirely true. For armv5, nodejs 0.10 does not require dynamic libraries.

Quoted 7 lines

Do we really care? Nodejs is a big stuff, unlikely to be used in static-only configurations. Plus the latest version of NodeJS, 0.12.x, no longer supports ARMv5. So I'm tempted to simply not support static linking at all, even if indeed for a very specific case it could be supported.

What do you think?

Even though this is not "optimum", that's OK for me.

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'