On Fri, Mar 08, 2024 at 10:57:03PM +0100, Ludovic Courtès wrote: > Hi, > > Efraim Flashner skribis: > > > On Thu, Mar 07, 2024 at 10:38:06PM +0100, Ludovic Courtès wrote: > > [...] > > >> Then it should be declared in a module that’s not in a cycle with its > >> users (that’s annoying!). Maybe a separate ‘llvm-meta.scm’? > > > > How about moving it into (guix cpu) together with the ones from gcc? > > There are apparently some CPUs that are identical but have different > > names that we could map together and would allow us to make any changes > > to them in one place. We've already pretty much done that with the > > search paths. > > To me, the whole point of the ‘compiler-cpu-architectures’ property is > that this info can be stored in the compiler package itself rather than > in some remote unrelated place (the same goes for search paths). My > instinct would be to preserve that, hence the suggestion of a new (gnu > packages llvm-meta) or (… llvm-infra) module, something like that. > > We should also keep in mind that those CPU names are those defined by > compilers themselves; they don’t have to match the vendor-chosen name or > the name chosen by some other compiler. > > WDYT? Does that make sense? That makes sense to me. I'm also going to look at moving system->llvm-target to llvm-meta. I think its used with dlang.scm and maybe elsewhere, or could be used at least. All these languages using llvm as a backend means we keep on wanting to use these functions elsewhere. -- Efraim Flashner רנשלפ םירפא GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted