[llvm-dev] Port to other Operating Systems

John Reagan via llvm-dev llvm-dev at lists.llvm.org
Wed Oct 12 05:42:54 PDT 2016


> The OS is Pyro, it's a fork of Syllable, which itself is a fork of
> AtheOS. We're prepping to move from x86 to x86_64. We thought that this
> would be the best time to go ahead & move from our outdated GCC to
> LLVM.
> I realize that we should do these things in stages. Currently, our GCC
> support is 4.1.2, which is horribly outdated. So, the first step is to
> port our OS as a target, so we can build our binaries on a FreeBSD
> host.
> Once we're able to build the OS with LLVM, we'll worry about porting
> LLVM to Pyro as a host.
> 
> 
> --
> Regards,
> 
> Apollo D. Sharpe, Sr.

So you want to host on FreeBSD and target Pyro.

Since you are using some gcc version for Pyro, does that mean you are using
standard ELF/DWARF?  Where does your linker come from?  Can it handle the
appropriate relocations?  

Looking at your somewhat outdated www.pyro-os.org, Pyro looks essentially
UNIX like given the software packages listed.  Looking further at the Syllable
website confirms that.  

I don't see anything particularly difficult unless you've added/modified the
ELF/DWARF/relocations in the object or image files.  Just tell LLVM that you
are x86-64 Linux and see what you get.  For instance, I haven't added OpenVMS
as a triple, we use the x86-64 Linux triple.  We might have enough differences
that I might lobby for my own triple, but I'm not anywhere near that place
yet.

John





More information about the llvm-dev mailing list