From owner-cvs-all@FreeBSD.ORG Sat Apr 19 20:51:13 2008 Return-Path: Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 78A051065674; Sat, 19 Apr 2008 20:51:13 +0000 (UTC) (envelope-from bsam@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 673EE8FC12; Sat, 19 Apr 2008 20:51:13 +0000 (UTC) (envelope-from bsam@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m3JKpDOo035826; Sat, 19 Apr 2008 20:51:13 GMT (envelope-from bsam@repoman.freebsd.org) Received: (from bsam@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m3JKpDCW035825; Sat, 19 Apr 2008 20:51:13 GMT (envelope-from bsam) Message-Id: <200804192051.m3JKpDCW035825@repoman.freebsd.org> From: Boris Samorodov Date: Sat, 19 Apr 2008 20:51:13 +0000 (UTC) To: ports-committers@FreeBSD.org, cvs-ports@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: ports/emulators/linux_base-fc4 Makefile pkg-install pkg-plist X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Apr 2008 20:51:13 -0000 bsam 2008-04-19 20:51:13 UTC FreeBSD ports repository Modified files: emulators/linux_base-fc4 Makefile pkg-install pkg-plist Log: 1. Add a symlink from /compat/linux/lib/librt.so.1 to /compat/linux/usr/lib/librt.so.1. This bug exists only at linux_base-fc4 _and_ osrelease=2.4.2. 2. Bump PORTREVISION. Note: The symlink is created at pkg-install script since the first run of '/compat/linux/sbin/ldconfig -r /compat/linux' seems to remove the link. Tijl Coosemans : ----- This is not really a bug of linux compat, but is because of the following: 1. opening /path/to/somefile under linux compat first tries /compat/linux/path/to/somefile then /path/to/somefile. 2. linux binaries have two search paths for librt.so.1: /lib and /usr/lib. 3. fc4 has a librt.so.1 in /lib but it is rejected under 2.4.2 emulation. 4. fc4 does not have a librt.so.1 under /usr/lib so when the runtime linker tries this search path it ends up opening FreeBSD /usr/lib/librt.so.1 (because of point 1) and fails. By adding a softlink in /compat/linux/usr/lib to the librt.so.1 in /compat/linux/lib, the linker doesn't open the FreeBSD librt.so.1 anymore. Instead, under 2.4.2, it rejects this lib and then tries an internal search path /lib/obsolete/linuxthreads where it finds the correct version. Under 2.6.16 the softlink doesn't change anything, so imho this is something the fc4 port/package should deal with. ----- PR: 121494 Submitted by: Jason Bacon Convinced by: Tijl Coosemans Patched by: bsam (me) Revision Changes Path 1.28 +1 -1 ports/emulators/linux_base-fc4/Makefile 1.6 +5 -0 ports/emulators/linux_base-fc4/pkg-install 1.14 +1 -0 ports/emulators/linux_base-fc4/pkg-plist