From owner-freebsd-ports@FreeBSD.ORG Thu Jul 26 12:18:29 2012 Return-Path: Delivered-To: freebsd-ports@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B58CC106566C; Thu, 26 Jul 2012 12:18:29 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id D5BE48FC12; Thu, 26 Jul 2012 12:18:28 +0000 (UTC) Received: from odyssey.starpoint.kiev.ua (alpha-e.starpoint.kiev.ua [212.40.38.101]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id PAA01551; Thu, 26 Jul 2012 15:18:27 +0300 (EEST) (envelope-from avg@FreeBSD.org) Message-ID: <50113592.3000906@FreeBSD.org> Date: Thu, 26 Jul 2012 15:18:26 +0300 From: Andriy Gapon User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:13.0) Gecko/20120625 Thunderbird/13.0.1 MIME-Version: 1.0 To: Jung-uk Kim 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> In-Reply-To: <50108FEF.3030405@FreeBSD.org> X-Enigmail-Version: 1.4.2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: freebsd-ports@FreeBSD.org Subject: Re: [RFC] LibreOffice build issues X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Jul 2012 12:18:29 -0000 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. Thank you. -- Andriy Gapon