From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([69.77.167.62] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1KVKSe-0007Bd-O3 for garchives@archives.gentoo.org; Tue, 19 Aug 2008 06:12:57 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 2708EE01F1; Tue, 19 Aug 2008 06:12:56 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id C61B0E01F1 for ; Tue, 19 Aug 2008 06:12:55 +0000 (UTC) Received: from stork.gentoo.org (stork.gentoo.org [64.127.104.133]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTP id E7D7867741 for ; Tue, 19 Aug 2008 06:12:54 +0000 (UTC) Received: from zmedico by stork.gentoo.org with local (Exim 4.69) (envelope-from ) id 1KVKSb-0002qm-Fn for gentoo-commits@lists.gentoo.org; Tue, 19 Aug 2008 06:12:53 +0000 From: "Zac Medico (zmedico)" To: gentoo-commits@lists.gentoo.org Reply-To: gentoo-dev@lists.gentoo.org, zmedico@gentoo.org Subject: [gentoo-commits] gentoo-x86 commit in sys-apps/baselayout: ChangeLog baselayout-2.0.0.ebuild X-VCS-Repository: gentoo-x86 X-VCS-Files: ChangeLog baselayout-2.0.0.ebuild X-VCS-Directories: sys-apps/baselayout X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico Content-Type: text/plain; charset=utf8 Message-Id: Sender: Zac Medico Date: Tue, 19 Aug 2008 06:12:53 +0000 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: 671d5fdb-c1fe-4443-a1c6-de70c707bd8a X-Archives-Hash: a6f72dd2f33ae2eb978ccca7272d37cf zmedico 08/08/19 06:12:53 Modified: ChangeLog baselayout-2.0.0.ebuild Log: Make the SYMLINK_LIB code in pkg_preinst merge files from lib directori= es to lib64 directories when necessary, instead of blindly wiping out the content of the lib dir. Thanks to Daniel Robbins for finding the cause = of this issue, which he discovered when building stage1 with catalyst. (Portage version: 2.2_rc8_p11419/cvs/Linux 2.6.26-0810-x86-64 i686) Revision Changes Path 1.469 sys-apps/baselayout/ChangeLog file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayou= t/ChangeLog?rev=3D1.469&view=3Dmarkup plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayou= t/ChangeLog?rev=3D1.469&content-type=3Dtext/plain diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayou= t/ChangeLog?r1=3D1.468&r2=3D1.469 Index: ChangeLog =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /var/cvsroot/gentoo-x86/sys-apps/baselayout/ChangeLog,v retrieving revision 1.468 retrieving revision 1.469 diff -u -r1.468 -r1.469 --- ChangeLog 10 May 2008 10:03:38 -0000 1.468 +++ ChangeLog 19 Aug 2008 06:12:52 -0000 1.469 @@ -1,10 +1,16 @@ # ChangeLog for sys-apps/baselayout # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/ChangeLog,v 1.468= 2008/05/10 10:03:38 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/ChangeLog,v 1.469= 2008/08/19 06:12:52 zmedico Exp $ =20 # See the rc-scripts ChangeLog in subversion for release info: # http://sources.gentoo.org/viewcvs.py/*checkout*/baselayout/trunk/Chang= eLog =20 + 19 Aug 2008; Zac Medico baselayout-2.0.0.ebuild: + Make the SYMLINK_LIB code in pkg_preinst merge files from lib director= ies + to lib64 directories when necessary, instead of blindly wiping out the + content of the lib dir. Thanks to Daniel Robbins for finding the cause= of + this issue, which he discovered when building stage1 with catalyst. + 10 May 2008; Mike Frysinger baselayout-2.0.0.ebuil= d: Install the Makefile into $D so that we can use it in pkg_preinst step= s (for binpkgs) #218877 by Kevin Cody Jr. 1.6 sys-apps/baselayout/baselayout-2.0.0.ebuild file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayou= t/baselayout-2.0.0.ebuild?rev=3D1.6&view=3Dmarkup plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayou= t/baselayout-2.0.0.ebuild?rev=3D1.6&content-type=3Dtext/plain diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayou= t/baselayout-2.0.0.ebuild?r1=3D1.5&r2=3D1.6 Index: baselayout-2.0.0.ebuild =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /var/cvsroot/gentoo-x86/sys-apps/baselayout/baselayout-2.0.0.eb= uild,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- baselayout-2.0.0.ebuild 10 May 2008 10:03:38 -0000 1.5 +++ baselayout-2.0.0.ebuild 19 Aug 2008 06:12:52 -0000 1.6 @@ -1,6 +1,6 @@ # Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/baselayout-2.0.0.= ebuild,v 1.5 2008/05/10 10:03:38 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/baselayout-2.0.0.= ebuild,v 1.6 2008/08/19 06:12:52 zmedico Exp $ =20 inherit multilib =20 @@ -40,13 +40,81 @@ touch "${ROOT}usr/local/${dir}"/.keep done =20 - # Ugly compatibility with stupid ebuilds and old profiles symlinks - if [ "${SYMLINK_LIB}" =3D "yes" ] ; then - rm -r "${ROOT}"/{lib,usr/lib,usr/local/lib} 2>/dev/null - local lib=3D$(get_abi_LIBDIR ${DEFAULT_ABI}) - ln -s "${lib}" "${ROOT}lib" - ln -s "${lib}" "${ROOT}usr/lib" - ln -s "${lib}" "${ROOT}usr/local/lib" + # Create symlinks for /lib, /usr/lib, and /usr/local/lib and + # merge contents of duplicate directories if necessary. + # Only do this when $ROOT !=3D / since it should only be necessary + # when merging to an empty $ROOT, and it's not very safe to perform + # this operation when $ROOT =3D /. + if [ "${SYMLINK_LIB}" =3D yes ] && [ "$ROOT" !=3D / ] ; then + local prefix libabi=3D$(get_abi_LIBDIR $DEFAULT_ABI) + for prefix in "$ROOT"{,usr/,usr/local/} ; do + + [ ! -d "${prefix}lib" ] && rm -f "${prefix}lib" && \ + mkdir -p "${prefix}lib" + + [ ! -d "$prefix$libabi" ] && ln -sf "${prefix}lib" + + [ -h "$prefix$libabi" ] && [ -d "${prefix}lib" ] && \ + [ "$prefix$libabi" -ef "${prefix}lib" ] && continue + + local destdir=3D$prefix$libabi/ srcdir=3D${prefix}lib/ + + [ -d "$destdir" ] || die "unable to create '$destdir'" + [ -d "$srcdir" ] || die "unable to create $srcdir" + + mv -f "$srcdir".keep "$destdir".keep 2>/dev/null + if ! rmdir "$srcdir" 2>/dev/null ; then + ewarn "merging contents of '$srcdir' into '$destdir':" + + # Move directories if the dest doesn't exist. + find "$srcdir" -type d -print0 | \ + while read -d $'\0' src ; do + dest=3D$destdir${src#${srcdir}} + if [ ! -d "$dest" ] ; then + if [ -e "$dest" ] ; then + ewarn " not overwriting file '$dest'" \ + "with directory '$src'" + continue + fi + mv -f "$src" "$dest" && \ + ewarn " /${src#${ROOT}} merged" || \ + ewarn " /${src#${ROOT}} not merged" + fi + done + + # Move non-directories. + find "$srcdir" ! -type d -print0 | \ + while read -d $'\0' src ; do + dest=3D$destdir${src#${srcdir}} + if [ -e "$dest" ] ; then + if [ -d "$dest" ] ; then + ewarn " not overwriting directory '$dest'" \ + "with file '$src'" + else + if [ -f "$src" -a ! -s "$src" ] && \ + [ -f "$dest" -a ! -s "$dest" ] ; then + # Ignore empty files such as '.keep'. + true + else + ewarn " not overwriting file '$dest'" \ + "with file '$src'" + fi + fi + continue + fi + + mv -f "$src" "$dest" && \ + ewarn " /${src#${ROOT}} merged" || \ + ewarn " /${src#${ROOT}} not merged" + done + fi + + rm -rf "${prefix}lib" || \ + die "unable to remove '${prefix}lib'" + + ln -s "$libabi" "${prefix}lib" || \ + die "unable to create '${prefix}lib' symlink" + done fi =20 emake -C "${D}/usr/share/${PN}" DESTDIR=3D"${ROOT}" layout || die "fai= led to layout filesystem"