[systemd-devel] [PATCH] arch: add crisv32
Dan Horák
dan at danny.cz
Thu Jul 3 05:12:24 PDT 2014
On Thu, 3 Jul 2014 13:09:02 +0200
Lennart Poettering <lennart at poettering.net> wrote:
> On Thu, 03.07.14 09:54, Umut Tezduyar Lindskog
> (umut.tezduyar at axis.com) wrote:
>
> > ---
> > src/shared/architecture.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/src/shared/architecture.c b/src/shared/architecture.c
> > index 9e0c3ef..7dd049a 100644
> > --- a/src/shared/architecture.c
> > +++ b/src/shared/architecture.c
> > @@ -116,6 +116,7 @@ Architecture uname_architecture(void) {
> > { "tilegx", ARCHITECTURE_TILEGX },
> > #elif defined(__cris__)
> > { "cris", ARCHITECTURE_CRIS },
> > + { "crisv32", ARCHITECTURE_CRIS },
> > #else
> > #error "Please register your architecture here!"
> > #endif
>
> Applied, thanks!
>
> This makes me wonder though, was the "cris" identifier ever used by
> uname? Or was that simply incorrect cruft? If so, I'd prefer removing
> it?
>
> One more thing though: in context of the file-hierarchy(7) man page I
> added to systemd I added support for querying various system paths via
> the new "systemd-path" tool. This tool wants to know the arch "tuple"
> used for the specific ABI, building on what Debian is using:
>
> https://wiki.debian.org/Multiarch/Tuples
>
> I added support for detecting these ABIs to architecture.h, however, I
> couldn't fill in quite a number of them, becuase DEbian either didn't
> know these archs yet, and hence didn't list any tuple, or because I
> couldn't figure out how to detect the variety of ABIs used on the same
> architecture with just #ifdefs. For these architectures I currently
> added a "#error" line, which means the builds are broken on these
> archs, in the hope that people will quickly send me the appropriate
> patches.
>
> Currently the following archs are broken in this regard:
>
> ppc64le
the logical tuple is ppc64le-linux-gnu, also understood by the autotools
scripts, but AFAIK Debian is using ppc64el following the mipsel example
I guess (https://wiki.debian.org/ppc64el/)
> ppcle
my understanding is that the PowerPC little endian ABI (or rather called
version 2 ELF ABI) is defined only for 64 bits
> hppa64
> mips64
> mips64le
> 32bit ARM (yay, at least 4 ABIs to choose from, well done!)
> sh64
> tilegx
> cris
>
> Or with other words, systemd git will not build on your architecture,
> Umut!
>
> I figure most of these archs don't have many fans who care, but I am
> pretty sure cris, tilegx and especially ARM is something people care
> about!
>
> Hence, please, send me a patch that tries to figure out a
> debian-compatible ABI tuple simply with C #ifdefs! (which I really
> hopen is even possible on those fucked up archs like ARM!) Otherwise
> 215 will not compile on your arch!
>
> Note that different Linux distributions tend to use different
> triplets. For example, on FEdora:
>
> $ gcc -dumpmachine
> x86_64-redhat-linux
$ gcc -dumpmachine
ppc64le-redhat-linux
> I am mostly interested in the Debian-version of the tuples, as they
> don't bake any company or distro name into the string.
>
> (Why this all? Well, in the long run I kinda hope we can bring some
> cross-distro sanity back to the library logic, and as the DEbian
> scheme of splitting per-arch library dirs up into tuple directories
> appears the most sensible, this is what we document in file-hierarchy
> (7).)
Dan
More information about the systemd-devel
mailing list