From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A2C2B1382F6 for ; Thu, 7 Jul 2016 02:41:32 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 6C4F2E0AF5; Thu, 7 Jul 2016 02:41:29 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 9582AE08A1 for ; Thu, 7 Jul 2016 02:41:28 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 8FD21340D31 for ; Thu, 7 Jul 2016 02:41:27 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 66438244A for ; Thu, 7 Jul 2016 02:41:24 +0000 (UTC) From: "Benda XU" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Benda XU" Message-ID: <1467859257.166387d875842c64c191dc86f7fc5719c2cc56d1.heroxbd@gentoo> Subject: [gentoo-commits] repo/proj/prefix:master commit in: scripts/ X-VCS-Repository: repo/proj/prefix X-VCS-Files: scripts/bootstrap-prefix.sh X-VCS-Directories: scripts/ X-VCS-Committer: heroxbd X-VCS-Committer-Name: Benda XU X-VCS-Revision: 166387d875842c64c191dc86f7fc5719c2cc56d1 X-VCS-Branch: master Date: Thu, 7 Jul 2016 02:41:24 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: fea296aa-de6f-47e8-bc52-54fff9a07310 X-Archives-Hash: b8100746ebd124a229032a8e2221bd48 commit: 166387d875842c64c191dc86f7fc5719c2cc56d1 Author: Benda Xu gentoo org> AuthorDate: Thu Jul 7 01:43:34 2016 +0000 Commit: Benda XU gentoo org> CommitDate: Thu Jul 7 02:40:57 2016 +0000 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=166387d8 bootstrap-prefix.sh: no USR SPLIT for RAP. Support Debian multiarch. scripts/bootstrap-prefix.sh | 82 +++------------------------------------------ 1 file changed, 5 insertions(+), 77 deletions(-) diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh index 0fadb13..af2f690 100755 --- a/scripts/bootstrap-prefix.sh +++ b/scripts/bootstrap-prefix.sh @@ -229,7 +229,7 @@ bootstrap_setup() { echo "CONFIG_SHELL=\"${ROOT}/bin/bash\"" echo "# sandbox does not work well on Prefix, bug 490246" echo 'FEATURES="-usersandbox -sandbox"' - if [[ -n ${PREFIX_DISABLE_USR_SPLIT} ]] ; then + if [[ !is-rap && -n ${PREFIX_DISABLE_USR_SPLIT} ]] ; then echo echo "# This disables /usr-split, removing this will break" echo "PREFIX_DISABLE_GEN_USR_LDSCRIPT=yes" @@ -1476,83 +1476,11 @@ bootstrap_interactive() { # eventually ends up in make.conf, see the end of stage3. We don't # do this in bootstrap_setup() because in that case we'd also have # to cater for getting this right with manual bootstraps. - export PREFIX_DISABLE_USR_SPLIT=yes + is-rap || export PREFIX_DISABLE_USR_SPLIT=yes - # immediately die on platforms that we know are impossible due to - # brain-deadness (Debian/Ubuntu) or extremely hard dependency chains - # (TODO NetBSD/OpenBSD) - case ${CHOST} in - *-linux-gnu) - local toolchain_impossible= - # Figure out if this is Ubuntu... - if [[ $(lsb_release -is 2>/dev/null) == "Ubuntu" ]] ; then - case "$(lsb_release -sr)" in - [456789].*|10.*) - : # good versions - ;; - *) - # Debian/Ubuntu have seriously fscked up their - # toolchain to support their multi-arch crap - # since Natty (11.04) that noone really wants, - # and certainly not upstream. Some details: - # https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/738098 - toolchain_impossible="Ubuntu >= 11.04 (Natty)" - ;; - esac - fi - # Figure out if this is Debian - if [[ -e /etc/debian_release ]] ; then - case "$(< /etc/debian_release)" in - hamm/*|slink/*|potato/*|woody/*|sarge/*|etch/*|lenny/*|squeeze/*) - : # good versions - ;; - *) - # Debian introduced their big crap since Wheezy - # (7.0), like for Ubuntu, see above - toolchain_impossible="Debian >= 7.0 (Wheezy)" - ;; - esac - fi - if [[ -n ${toolchain_impossible} ]] ; then - # In short, it's impossible for us to compile a - # compiler, since 1) gcc picks up our ld, which doesn't - # support sysroot (can work around with a wrapper - # script), 2) headers and libs aren't found (symlink - # them to Prefix), 3) stuff like crtX.i isn't found - # during bootstrap, since the bootstrap compiler doesn't - # get any of our flags and doesn't know where to find - # them (even if we copied them). So we cannot do this, - # unless we use the Ubuntu patches in our ebuilds, which - # is a NO-GO area. - cat << EOF -Oh My! ${toolchain_impossible}! AAAAAAAAAAAAAAAAAAAAARGH! HELL comes over me! - -EOF - echo -n "..." - sleep 1 - echo -n "." - sleep 1 - echo -n "." - sleep 1 - echo -n "." - sleep 1 - echo - echo - cat << EOF -and over you. You're on the worst Linux distribution from a developer's -(and so Gentoo Prefix) perspective since http://wiki.debian.org/Multiarch/. -Due to this multi-arch idea, it is IMPOSSIBLE for Gentoo Prefix to -bootstrap a compiler without using Debuntu patches, which is an absolute -NO-GO area! GCC and binutils upstreams didn't just reject those patches -for fun. - -I really can't help you, and won't waste any of your time either. The -story simply ends here. Sorry. -EOF - exit 1 - fi - ;; - esac + # TODO should immediately die on platforms that we know are + # impossible due extremely hard dependency chains + # (NetBSD/OpenBSD) cat <<"EOF"