From: Joseph Myers <joseph@codesourcery.com>
To: "Maciej W. Rozycki" <macro@wdc.com>
Cc: <gcc-patches@gcc.gnu.org>, <libffi-discuss@sourceware.org>,
<golang-dev@googlegroups.com>, <zlib@gzip.org>
Subject: Re: [PATCH v2] Add `--with-install-sysroot=' configuration option
Date: Wed, 20 Nov 2019 17:46:00 -0000 [thread overview]
Message-ID: <alpine.DEB.2.21.1911201742380.29882@digraph.polyomino.org.uk> (raw)
In-Reply-To: <alpine.LFD.2.21.1911190134470.13542@redsun52.ssa.fujisawa.hgst.com>
On Wed, 20 Nov 2019, Maciej W. Rozycki wrote:
> > But even then, if you configure GCC using "--with-sysroot" or
> > "--with-build-sysroot", both of those paths are the top-level sysroot, to
> > which the sysroot suffix gets appended before GCC uses it for any purpose,
> > unless you explicitly build using --no-sysroot-suffix. So I still think
> > it's natural for a user of GCC's configure scripts to expect the new
> > option, like the other sysroot-related configure options, also to be one
> > to which the per-multilib sysroot suffix gets appended before GCC uses it.
> > And if it's not like that, the documentation needs to say so explicitly.
>
> Thanks for your concern, however again, AFAICT this change is tangential
> to any sysroot suffix, which necessarily has to be already included in the
> multilib OS directory as given by `-print-multi-os-directory', so that it
> gets embedded within $toolexeclibdir for the purpose of target library
> installation across the relevant subdirs, as per this excerpt from
> `configure' code right after the assignments quoted in the example above:
>
> multi_os_directory=`$CC -print-multi-os-directory`
> case $multi_os_directory in
> .) ;; # Avoid trailing /.
> *) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
> esac
>
> or otherwise the existing arrangement where
> toolexeclibdir='$(toolexecdir)/lib' wouldn't have worked either (and
> neither would in the native case where toolexeclibdir='$(libdir)').
>
> Does this answer clear your concern? OK to apply with the documentation
> thinko fixed?
The answer explains the reasoning behind the design of the option (i.e.,
the design that means it's not particularly useful with sysroot suffixes,
because the user would still need to relocate libraries manually to the
correct suffixed sysroot). It is indeed the case that making a version
useful with sysroot suffixes would not simply be a configuration change
but involve changes in the compiler driver to disentangle two different
uses of multilib OS directory suffixes.
However, it's not enough to answer the question about the semantics of the
option on the mailing list. The question is a natural one for anyone who
knows about sysroot suffixes and is reading the documentation of the
option. And so *the actual GCC documentation proposed to be committed*,
not just explanations on the mailing list that people reading that
documentation won't see, needs to say explicitly that the OS directory
suffix is appended to lib/ in the *unsuffixed* sysroot, so that all
libraries get installed in the same sysroot even if suffixes are in use.
--
Joseph S. Myers
joseph@codesourcery.com
next prev parent reply other threads:[~2019-11-20 17:46 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-14 2:47 [PATCH] " Maciej W. Rozycki
2019-11-14 3:06 ` Joseph Myers
2019-11-18 2:04 ` [PATCH v2] " Maciej W. Rozycki
2019-11-19 0:11 ` Joseph Myers
2019-11-20 2:39 ` Maciej W. Rozycki
2019-11-20 17:46 ` Joseph Myers [this message]
2019-11-22 23:41 ` Maciej W. Rozycki
2019-11-22 23:54 ` Joseph Myers
2019-11-28 20:45 ` Maciej W. Rozycki
2019-11-28 21:06 ` Joseph Myers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.DEB.2.21.1911201742380.29882@digraph.polyomino.org.uk \
--to=joseph@codesourcery.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=golang-dev@googlegroups.com \
--cc=libffi-discuss@sourceware.org \
--cc=macro@wdc.com \
--cc=zlib@gzip.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).