Opened 8 years ago

Closed 8 years ago

#34925 closed defect (fixed)

nodejs-devel does not use MacPorts openssl

Reported by: ryandesign (Ryan Schmidt) Owned by: ci42
Priority: Normal Milestone:
Component: ports Version: 2.1.1
Keywords: Cc:
Port: nodejs-devel

Description

nodejs declares a dependency on openssl and nodejs 0.6.x does indeed use MacPorts openssl:

$ port -q installed nodejs
  nodejs @0.6.19_0+python27+ssl (active)
$ port -q deps nodejs
Build Dependencies:   pkgconfig
Library Dependencies: python27, openssl
$ otool -L $(which node)
/opt/local/bin/node:
	/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.7)
	/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0)
	/opt/local/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/opt/local/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
	/usr/lib/libutil.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
	/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 44.0.0)
	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.44.0)
	/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 38.0.0)

nodejs-devel also declares a dependency on openssl, but does not actually link with it:

$ port -q installed nodejs-devel
  nodejs-devel @0.7.9_0+python27+ssl (active)
$ port -q deps nodejs-devel
Build Dependencies:   pkgconfig
Library Dependencies: python27, openssl
$ otool -L $(which node)
/opt/local/bin/node:
	/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0)
	/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 44.0.0)
	/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
	/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 830.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)

Ben Noordhuis on the nodejs Google group explains:

v0.6.x doesn't really support linking against a static openssl, not unless you hack the wscript. The bundled openssl is only used on windows.

v0.7.x and v0.8.x however will build against the bundled version by default. Maybe give that a spin.

So either we should drop the openssl dependency, or we should fix it to use MacPorts openssl again. Unless there's a specific reason why nodejs does not like the version of openssl that's in MacPorts today, I would think we should be using the MacPorts version, like other ports do.

Change History (1)

comment:1 Changed 8 years ago by ci42

Resolution: fixed
Status: newclosed

Fixed in r94586.

Note: See TracTickets for help on using tickets.