mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Rich Felker <dalias@libc.org>
To: Michael Forney <mforney@mforney.org>
Cc: musl@lists.openwall.com
Subject: Re: [musl] Re: [musl-cross-make] [PATCH v2] litecross: Fix system header dir when building native toolchains
Date: Sun, 10 May 2020 17:52:57 -0400	[thread overview]
Message-ID: <20200510215257.GW21576@brightrain.aerifal.cx> (raw)
In-Reply-To: <CAGw6cBusuyEQeyK_Evhd4aXDwygye6ckEyog34CdqfXEc-fGUA@mail.gmail.com>

On Sun, May 10, 2020 at 01:35:23PM -0700, Michael Forney wrote:
> Thanks for your response, Rich.
> 
> On 2020-05-10, Rich Felker <dalias@libc.org> wrote:
> > Sorry I haven't had the time/attention to devote to this. I think
> > there's still a major mismatch in expectations -- the system you
> > install this native compiler onto is not going to have its include
> > files in /include but the standard /usr/include, among a lot of other
> > things.
> 
> My understanding was that musl-cross-make toolchains (native or cross)
> were meant to be self-contained units, so the include directory
> relative to the sysroot is always /include.

This is true for cross compilers, which were the original only
in-scope task of musl-cross-make. Adding NATIVE=y mode was a quick
hack that was later fleshed out somewhat, but there was never any
real design behind how it should work, and it shows. I'm not really
sure whether it should be a proper native compiler for the target, or
effectively a sysrooted self-targeting cross compiler that runs on the
target. In some sense these are two different things and the user
should be aware of which one they're requesting/getting....

> Merging a native toolchain into / can't work, even using the default
> /usr/include search directory, because you'd still have musl headers
> installed into /include, so the compiler would be unable to find the
> musl headers (this is the same reason why you currently need the usr
> -> . symlink). To support something like this, I think you'd need to
> make the prefix configurable.

I think the symlink is just missing (not done via the same rule as for
cross compilers because the sysroot base is different for a non-cross
compiler). At least relative to what I remember of my original intent.
But I'm doubtful that this was well thought out at all since the only
real intent at the time I added it was "can I make a compiler run on a
nommu j2?" where I didn't want to bootstrap a whole distro or have
anything serious actually compiled on the target where it would have
been prohibitively slow.

Rich

  reply	other threads:[~2020-05-10 21:53 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-07  6:49 [musl-cross-make] [PATCH] " Michael Forney
2020-03-23  4:34 ` [musl] [musl-cross-make] [PATCH v2] " Michael Forney
2020-05-09  0:27   ` [musl] " Michael Forney
2020-05-10 16:35     ` Rich Felker
2020-05-10 20:35       ` Michael Forney
2020-05-10 21:52         ` Rich Felker [this message]
2020-05-13  8:18           ` Michael Forney
2020-05-13 14:37             ` Rich Felker
2020-05-13 18:48               ` Michael Forney
2020-05-13 18:55                 ` Rich Felker
2020-05-13 19:34                   ` Michael Forney
2020-05-13 20:04                     ` Laurent Bercot
2020-05-13 21:51                       ` Rich Felker
2020-05-14  8:40                         ` Laurent Bercot
2020-08-19 21:00       ` Michael Forney

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=20200510215257.GW21576@brightrain.aerifal.cx \
    --to=dalias@libc.org \
    --cc=mforney@mforney.org \
    --cc=musl@lists.openwall.com \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

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 NNTP newsgroup(s).