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 A3547138334 for ; Thu, 13 Jun 2019 20:10:27 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id AC566E0932; Thu, 13 Jun 2019 20:10:26 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 86C6DE0932 for ; Thu, 13 Jun 2019 20:10:26 +0000 (UTC) Received: from symphony.aura-online.co.uk (154.189.187.81.in-addr.arpa [81.187.189.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: chewi) by smtp.gentoo.org (Postfix) with ESMTPSA id A9DDE34604E for ; Thu, 13 Jun 2019 20:10:24 +0000 (UTC) Date: Thu, 13 Jun 2019 21:09:56 +0100 From: James Le Cuirot To: gentoo-pms@lists.gentoo.org Subject: Re: [gentoo-pms] [PATCH] Correct the definition of ESYSROOT as EPREFIX isn't always applicable Message-ID: <20190613210956.165c5961@symphony.aura-online.co.uk> In-Reply-To: References: <20190601222921.12072-1-chewi@gentoo.org> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Package Manager Specification discussions X-BeenThere: gentoo-pms@gentoo.org X-BeenThere: gentoo-pms@lists.gentoo.org Reply-To: gentoo-pms@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/SB8sI6V2dIXYVrfYSwiWX2g"; protocol="application/pgp-signature" X-Archives-Salt: faa9c7ce-b041-4298-b0ea-b01cf436fa15 X-Archives-Hash: 5834e0923e699bd638c6e056c52ca9ff --Sig_/SB8sI6V2dIXYVrfYSwiWX2g Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Thu, 13 Jun 2019 12:30 +0100 Ulrich Mueller wrote in #gentoo-dev: > Chewi: tbh, I don't understand your update for ESYSROOT > SYSROOT is related to DEPEND/CHOST type dependencies > so why would you have ESYSROOT=3D"/${BROOT}" if SYSROOT is equal to= / ? since BROOT is related to BDEPEND/CBUILD I kind of see what you mean but I've been thinking of SYSROOT as being more like a mechanism to choose between building against BROOT, EROOT (previously the only two valid options), or some other unprefixed location. There is no dedicated variable for SYSROOT's prefix so the user cannot directly define it and it can therefore only be calculated from BROOT when SYSROOT=3D/ or EROOT when SYSROOT=3D${ROOT}. > but if SYSROOT is blank, then ESYSROOT will be blank too, ignoring = EPREFIX altogether? (or at least, that's how I read your patch) What gave you that impression? The rule is that if the prefix cannot be calculated because SYSROOT is neither / nor ROOT then we have to assume no prefix. Where else could we get a prefix from? You may think that we should just create that missing SYSROOT prefix variable but consider that the distinct "somewhere else" location is not intended for general use. In other words, you wouldn't execute commands from it or chroot into it and therefore there is no value in allowing it to be prefixed. Typically this location would be /usr/${CHOST} as set up by crossdev. I haven't forgotten about the cross-prefix case. In this scenario, both ROOT=3D/ and SYSROOT=3D/ but BROOT and EPREFIX are different. Which prefix do we choose? We pick EPREFIX because the prefix guys try to use the target prefix as much as possible. Once SYSROOT has the OS headers and libc headers, you should be able to build anything. Does this help? --=20 James Le Cuirot (chewi) Gentoo Linux Developer --Sig_/SB8sI6V2dIXYVrfYSwiWX2g Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEPxcZ3tkwcedKm2a8EiZBXQDdMTcFAl0CrZQACgkQEiZBXQDd MTfkXA/9G0MVb4lZYn4ua9yGGZEE1KeJ82CewuWh3MUKdFkEzBXctlwfOonpVeMr xeajB5l9luOUWz8anhqCvfsZtZBy/uwVapb1WYFJQvuAt9bGJjxoYKBhKIDxF4cK 7VWWPDrzViWRq51KJCEY/r/8fkbP1/ysOu+C9w6NRM19YgBQFSwAjhH2AEoPkQJn euwCAxnGiA+EzDlPG318sMKaPa2lOpeibVyVhc+WYXrmUDfcfXiLf8BCkcWze89r DSOI03qZ1jWE0TTNZDshrMxuc1iG549Ya8jCTTAdXAD3RZlxXabiID+EHr/MtA6+ vXsZjLzvl2fJh/7IL8P84tDiJDopy6J2W4hhr/aynR6UVS+ER7ruiYmzsEC+ATQ/ RGJG37hjysEAQ/ee5/6bTKKlg7xyj7eVobQqqBlsxcKs8lEQ55clv+CbBEmcOCHj mtXocJBWMjVFnognmENYD87vVhlc+B2z9Owshg9yunfMzoyGk+81uBqGLMQFEbOA GGP1YFoNg30QMUP3LY7eWjHglmAcn2LpLabEu/ptfWITzASOwSfLj736JNHbMat6 5CCeEUzOfgYz0dQsUEXXer1R0/Hgt4LejZ/CzDE6r66qHP9bAEHwpfP4l87SU/zc IkUO/x981bBQRwBlJQ0ghLvlEZd9AOz6IL8qI98o1O44LdsUJ7M= =63Rb -----END PGP SIGNATURE----- --Sig_/SB8sI6V2dIXYVrfYSwiWX2g--