This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] Fine control sysroot runtime behavior.
- From: Hans-Peter Nilsson <hp at bitrange dot com>
- To: Benda Xu <heroxbd at gentoo dot org>
- Cc: binutils at sourceware dot org
- Date: Mon, 1 Dec 2014 23:38:42 -0500 (EST)
- Subject: Re: [PATCH] Fine control sysroot runtime behavior.
- Authentication-results: sourceware.org; auth=none
- References: <1417429768-14413-1-git-send-email-heroxbd at gentoo dot org>
On Mon, 1 Dec 2014, Benda Xu wrote:
> This is a rebase of patch submitted in
>
> http://article.gmane.org/gmane.comp.gnu.binutils/63137
>
> to the HEAD of git repository.
>
> Patch updated for the Changelog entries and for regeneration with
> autoconf and autoheader.
Just a few comments, having been in this area in the last months
(and likely causing your rebase conflicts, sorry).
I think you're going to need a little bit more than a straight
rebase-with-conflict-resolution for this to do something
well-defined. For example, as your patch stands, I would guess
it will fail a "make check-ld" when --disable-runtime-sysroot
(either or both with/without --with-sysroot=Y) specifically
running the sysroot tests. It seems you're not disabling
--sysroot=X as a run-time option as would be truthful the name
of the option. Your patch just touches the static ELF-specific
paths (IIUC) and the predicate that tells whether a file is
found in the sysroot. Thus, --sysroot=X will be accepted and
all X prepended through "=" will be found but wrongly be thought
to be outside the sysroot, still --print-sysroot will emit the
specified directory. I'm not sure that makes sense other than
it happening to work for you.
Are you using --disable-runtime-sysroot --with-sysroot=Y as just
specifying some kind of alternative installation point, sort of
(but not exactly) like --prefix=Y? Maybe instead introduce an
appropriately named option to do exactly that.
If not, I suggest you tell us the "user story" as it's unclear
why the full --sysroot functionality is wrong for the
intended use.
brgds, H-P