Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Jul 2012 19:20:11 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        Andriy Gapon <avg@freebsd.org>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: [RFC] LibreOffice build issues
Message-ID:  <501716AB.4040909@FreeBSD.org>
In-Reply-To: <50113592.3000906@FreeBSD.org>
References:  <500D91AA.70502@FreeBSD.org> <500DB55A.8000301@FreeBSD.org> <500DB8CE.4040206@FreeBSD.org> <500DBA56.5040800@FreeBSD.org> <500F13CC.4070706@FreeBSD.org> <500F9C55.1030009@FreeBSD.org> <50108FEF.3030405@FreeBSD.org> <50113592.3000906@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2012-07-26 08:18:26 -0400, Andriy Gapon wrote:
> on 26/07/2012 03:31 Jung-uk Kim said the following:
>> I guess you had installed OpenSSL from ports. ;-)
> 
> Yes, bingo.
> 
>> Now I am able to build it with GCC 4.6:
>> 
>> http://people.freebsd.org/~jkim/libreoffice-20120725.tar.bz2
>> 
>> Basically, bsd.openssl.mk adds -rpath=/usr/lib:/usr/local/lib to 
>> LDFLAGS first, then bsd.gcc.mk adds
>> -Wl,-rpath=/usr/local/lib/gcc46 to it later.
>> 
>> Before: % make -V LDFLAGS -rpath=/usr/lib:/usr/local/lib % make
>> -V LDFLAGS USE_OPENSSL_BASE=yes -rpath=/usr/lib:/usr/local/lib %
>> make -V LDFLAGS USE_OPENSSL_PORT=yes -rpath=/usr/local/lib % make
>> -V LDFLAGS USE_OPENSSL_BASE=yes WITH_GCC=yes 
>> -rpath=/usr/lib:/usr/local/lib -Wl,-rpath=/usr/local/lib/gcc46 %
>> make -V LDFLAGS USE_OPENSSL_PORT=yes WITH_GCC=yes 
>> -rpath=/usr/local/lib -Wl,-rpath=/usr/local/lib/gcc46
>> 
>> For WITH_GCC case, I just defined OPENSSL_LDFLAGS as 
>> "-rpath=/usr/local/lib/gcc46".
>> 
>> After: % make -V LDFLAGS -rpath=/usr/lib:/usr/local/lib % make -V
>> LDFLAGS USE_OPENSSL_BASE=yes -rpath=/usr/lib:/usr/local/lib %
>> make -V LDFLAGS USE_OPENSSL_PORT=yes -rpath=/usr/local/lib % make
>> -V LDFLAGS USE_OPENSSL_BASE=yes WITH_GCC=yes 
>> -rpath=/usr/local/lib/gcc46 -rpath=/usr/lib:/usr/local/lib 
>> -Wl,-rpath=/usr/local/lib/gcc46 % make -V LDFLAGS
>> USE_OPENSSL_PORT=yes WITH_GCC=yes -rpath=/usr/local/lib/gcc46
>> -rpath=/usr/local/lib -Wl,-rpath=/usr/local/lib/gcc46
>> 
>> It's ugly but it's good enough for now.
>> 
>> Please note this is really a bug in bsd.openssl.mk (and/or
>> bsd.port.mk depending on how you look at it).  It shouldn't have
>> added /usr/lib in the first place.  It is only needed for
>> OPENSSL_PORT case and just /usr/local/lib itself.  Also,
>> bsd.gcc.mk had to be included before all bsd.foo.mk, whatever
>> touches rpath.
> 
> Good analysis and catch! I think that just dropping /usr/lib from
> rpath should be sufficient, but the way you are doing it could be
> safer in the long term.

I found that it doesn't really work, either.  For example, when
cppunit is installed, /usr/local/lib/libcppunit.so is always picked up
instead of local libcppunit.so.  Therefore, bsd.openssl.mk should
never ever set LDFLAGS globally IMHO.

Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (FreeBSD)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlAXFqsACgkQmlay1b9qnVN4IQCdFUo+QjJto7zoGX2f1W6Jhvfa
SxgAn2p1bP8bF9guoAmEIylU7kpKn/F0
=cTWj
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?501716AB.4040909>