Date: Wed, 09 Oct 2013 21:26:14 -0400 From: "Mikhail T." <mi+thun@aldan.algebra.com> To: gecko@freebsd.org Subject: Allow thunderbird port to build with any compiler Message-ID: <52560236.9090006@aldan.algebra.com>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Hello!
The "fix" of requiring a special gcc for Thunderbird (and Seamonkey) on i386 is
an abomination. If a library is reporting a missing symbol, it needs to be
linked with a library, that defines the symbol (-lnspr4 in this case). Careful
reading of ldap/sdks/c-sdk/ldap/libraries/libprldap/Makefile.in shows, that
libprldap is already being linked with NSPR-libraries on various platforms --
but not (yet?) on FreeBSD.
I don't know, why we haven't seen this problem yet with gcc (or on the 64-bit
platforms), but the proper fix is to include the necessary libraries -- not to
force the "special" compiler.
Please, apply the attached patch and let the healing begin. Something very
similar is needed for Seamonkey... Thank you. Yours,
-mi
[-- Attachment #2 --]
Index: Makefile
===================================================================
--- Makefile (revision 329910)
+++ Makefile (working copy)
@@ -74,11 +74,6 @@
XPI_LIBDIR= ${PREFIX}/lib/xpi
-# libprldap60.so: Undefined symbol "PR_GetCurrentThread"
-.if ${ARCH} == i386
-USE_GCC?= yes
-.endif
-
.if ${PORT_OPTIONS:MENIGMAIL}
MASTER_SITES+= https://www.enigmail.net/download/source/:enigmail
DISTFILES+= ${EM_DISTFILE}:enigmail
Index: files/patch-ldap-sdks-c-sdk-ldap-libraries-libprldap-Makefile.in
===================================================================
--- files/patch-ldap-sdks-c-sdk-ldap-libraries-libprldap-Makefile.in (revision 329910)
+++ files/patch-ldap-sdks-c-sdk-ldap-libraries-libprldap-Makefile.in (working copy)
@@ -1,11 +1,12 @@
--- ldap/sdks/c-sdk/ldap/libraries/libprldap/Makefile.in.orig 2008-09-11 16:38:35.000000000 +0200
+++ ldap/sdks/c-sdk/ldap/libraries/libprldap/Makefile.in 2009-12-01 10:18:43.000000000 +0100
-@@ -147,6 +147,11 @@
+@@ -147,6 +147,12 @@
CUSTOM_LIBS=1
endif
+ifeq ($(OS_ARCH), FreeBSD)
+EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME) -lpthread
++EXTRA_LIBS+= $(filter -L% -l%,${NSPRLINK})
+CUSTOM_LIBS=1
+endif
+
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52560236.9090006>
