[erlang-patches] shared library avoidance code harmful on certain architectures

Ignatios Souvatzis <>
Fri Sep 26 14:40:31 CEST 2008


Hi,

erlang 12 fails to build on NetBSD/amd64. I was told to test the
patches below.

Basically - use of -lfoo will do the right thing on all (sane) systems,
while the complicated stuff ended up using libfoo.a, which happened to
work on NetBSD/i386, but fails on NetBSD/amd64 due to the created text
relocations.

<> should be able to give you more details. I'm only a 
user of Erlang, most of the time.

Regards,
	-is

Allow the system linker to use the shared library for dynamic modules.

--- lib/crypto/c_src/Makefile.in.orig   2007-11-26 20:01:59.000000000 +0100
+++ lib/crypto/c_src/Makefile.in
@@ -91,11 +91,7 @@ endif
 endif
 DYNAMIC_CRYPTO_LIB=@SSL_DYNAMIC_ONLY@
 
-ifeq ($(DYNAMIC_CRYPTO_LIB),yes)
 CRYPTO_LINK_LIB=-L$(SSL_LIBDIR) -lcrypto
-else
-CRYPTO_LINK_LIB=$(SSL_LIBDIR)/libcrypto.a 
-endif
 
llow the system linker to use the shared library for dynamic modules.

--- lib/ssl/c_src/Makefile.in.orig      2008-06-20 19:33:40.000000000 +0200
+++ lib/ssl/c_src/Makefile.in
@@ -87,11 +87,7 @@ PORT_PROGRAM = $(BINDIR)/ssl_esock$(exe)
 SKIP_BUILDING_BINARIES := false
 
 # Try to be BC for R10
-ifeq ($(findstring @@))
 DYNAMIC_CRYPTO_LIB=yes
-else
-DYNAMIC_CRYPTO_LIB=@SSL_DYNAMIC_ONLY@
-endif
 
 
 ifeq ($(DYNAMIC_CRYPTO_LIB),yes)




More information about the erlang-patches mailing list