public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas K. Huettel" <dilfridge@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: riscv@gentoo.org
Subject: [gentoo-dev] How to structure our RISC-V support
Date: Thu, 06 May 2021 22:01:23 +0200	[thread overview]
Message-ID: <14808987.iMDcRRXYNz@pinacolada> (raw)

[-- Attachment #1: Type: text/plain, Size: 1789 bytes --]

Howdy. 

I'm sending this not only to the team members on the alias, but also 
to the whole dev list for discussion. 

So far I've been trying to support in Gentoo the full risc-v multilib 
directory structure and the ABI sets supported by glibc. According to 
specs this means for riscv64 

-mabi=rv64gc -march=lp64d 
  libdir = lib64/lp64d
  ("hardfloat")

-mabi=rv64imac -march=lp64
  libdir = lib64/lp64
  ("softfloat")

and theoretically similar for riscv32 (which just landed in glibc and 
is still broken in qemu-user).

However, this leads to several levels of pain (and I definitely dont 
have time to deal with it myself):

a) In many places the two-level libdir (e.g., /usr/lib64/lp64d) leads 
to difficulties in build systems. Right now Qt5 and CMake are still 
somewhat broken (in *Gentoo*).

b) Rust only supports rv64gc/lp64d. (Which is arguably what you should 
have for decent Linux support.)

I'm pretty sure these are not the only things, but they are somewhat 
symptomatic.

So, I would like to bring two proposals up for discussion.

1) We stop caring about anything except rv64gc/lp64d.
People can still bootstrap other stuff with crossdev etc, but the 
Gentoo tree and the riscv keyword reflect that things work with above 
-mabi and -march settings.

2) We drop the multilib paths and use "normal" lib64, with additional 
"safety symlinks" (/usr)/lib64/lp64d -> .
This is what SuSE and (I think) Fedora already does. The symlink 
should be there since "lib64" is NOT an official fallback coded into 
gcc/glibc/binutils; the only fallback present is "lib" ...

Opinions?

Cheers,
Andreas



-- 
Andreas K. Hüttel
dilfridge@gentoo.org
Gentoo Linux developer
(council, toolchain, base-system, perl, libreoffice)

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 981 bytes --]

             reply	other threads:[~2021-05-06 20:01 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-06 20:01 Andreas K. Huettel [this message]
2021-05-06 20:16 ` [gentoo-dev] How to structure our RISC-V support Andreas K. Huettel
2021-05-06 20:16 ` [gentoo-dev] " Palmer Dabbelt
2021-05-06 20:16 ` [gentoo-dev] " Michał Górny
2021-05-06 20:30   ` Andreas K. Huettel
2021-05-06 20:34     ` Palmer Dabbelt
2021-05-07 16:11       ` Andreas K. Huettel
2021-05-07  6:15     ` Yixun Lan
2021-05-07  7:38       ` Michał Górny
2021-05-07 16:08       ` Andreas K. Huettel
2021-05-07  6:24 ` Yixun Lan
2021-05-07 16:05   ` Andreas K. Huettel
2021-05-08 12:42 ` [gentoo-dev] How to structure our RISC-V support -- Summary Andreas K. Huettel

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=14808987.iMDcRRXYNz@pinacolada \
    --to=dilfridge@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    --cc=riscv@gentoo.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