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 1Kf6Jv-00031A-Ui for garchives@archives.gentoo.org; Mon, 15 Sep 2008 05:08:20 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 71952E044A; Mon, 15 Sep 2008 05:08:19 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 29352E044A for ; Mon, 15 Sep 2008 05:08:19 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp.gentoo.org (Postfix) with ESMTP id 161C667B09 for ; Mon, 15 Sep 2008 05:08:18 +0000 (UTC) X-Virus-Scanned: amavisd-new at gentoo.org X-Spam-Score: -2.472 X-Spam-Level: X-Spam-Status: No, score=-2.472 required=5.5 tests=[AWL=0.127, BAYES_00=-2.599] Received: from smtp.gentoo.org ([127.0.0.1]) by localhost (smtp.gentoo.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id WqNberSpTmnl for ; Mon, 15 Sep 2008 05:08:10 +0000 (UTC) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.169]) by smtp.gentoo.org (Postfix) with ESMTP id 53FC9B4A0A for ; Mon, 15 Sep 2008 05:08:09 +0000 (UTC) Received: by ug-out-1314.google.com with SMTP id 36so726647ugg.21 for ; Sun, 14 Sep 2008 22:08:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=WPO1PPI7z/6Um5bPpFOlq7KXrUIw4Mpd7SDDJtKjWwg=; b=olZVEd/jGHHfe3wBrCij0rYNjLfl5pDEzFbUUSMBmevMnq1sxkqhfdAy9eigvmjTIK hUyGYMMWbYS6W/KH/oCBhTO4SMnc4I9mtFkG8fHKR/NnTGiTQoHwVJamsPLYisTjcOqI l4p660A7uXauN9TkSlbOXA6rXmD50tArAE6ZE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=Zxu2nrfVxzNMCNwniuWb85zXTgpbzT2e0k9cc1YWqAJ8yGY487YSffTpXp2oeMAdLx wYinI0bWpNqhQyrRp7beF1FKmOB6brYd5p/2ynqu6aGPOFhBqWIv3IEJ2xvF8gkU7CL2 HH537MGj+X7XtLPw1sZ1CV2BWAZFg93aIIEWc= Received: by 10.67.40.15 with SMTP id s15mr2716866ugj.67.1221455288121; Sun, 14 Sep 2008 22:08:08 -0700 (PDT) Received: by 10.66.218.13 with HTTP; Sun, 14 Sep 2008 22:08:08 -0700 (PDT) Message-ID: <9e0cf0bf0809142208g2140ffc4kc205e0e069e58884@mail.gmail.com> Date: Mon, 15 Sep 2008 08:08:08 +0300 From: "Alon Bar-Lev" To: "Andrew John Hughes" Subject: Re: [gentoo-java] icedtea6 bootstrap Cc: gentoo-java@lists.gentoo.org In-Reply-To: <9e0cf0bf0809142112w70b06774l539cbce4940d30cc@mail.gmail.com> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-java@lists.gentoo.org MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <9e0cf0bf0809140538v70975cd1la9582c6e7ab2f0f3@mail.gmail.com> <20080914203857.GA17566@rivendell.middle-earth.co.uk> <9e0cf0bf0809142112w70b06774l539cbce4940d30cc@mail.gmail.com> X-Archives-Salt: d1d44c85-762d-43c9-ad01-4074bf4e2b87 X-Archives-Hash: 1f7383828e4bb2a2c461f965247fa78d On 9/15/08, Alon Bar-Lev wrote: > > Well this is probably a flaw in portage then, but the solution is only > > a two-step emerge process: > > > > emerge gcj-jdk > > emerge icedtea6 > > > > I don't think that's inherently difficult. > > > You forgot: > java-config -S icedtea6 > emerge --unmerge gcj-jdk And on a second thought... You need also add the gcj USE flag to gcc, reemerge gcc, then at the end remove the gcj USE flag from gcc and reemerge gcc. So it is much more complex. So basically, provided that >=gcc-4.3 is stable, this is the outline of what I thought, you can make it more efficient if you check for other valid jdks and not force only gcj... if installed icedtea6; then exit 0 fi if ! has_use gcc gcj; then should_remove_gcj_use_from_gcc=1 USE="gcj" emerge --oneshot gcc || die fi if ! installed gcj-jdk; then should_remove_gcj_jdk=1 emerge --oneshot gcj-jdk || die fi old_java=$(java-config -f) java-config -S gcj-jdk || die emerge icedtea6 || die if [ ${old_java}" = "gcj-jdk" -a -n "${should_remove_gcj_jdk}" ]; then java-config -S icedtea6 || die else java-config -S $(old_java) || die fi [ -n "${should_remove_gcj_jdk}" ] && emerge --unmerge gcj-jdk [ -n "${should_remove_gcj_use_from_gcc}" ] && emerge --oneshot gcc exit 0