illumos has done a free and clear implementation of locale support for libc, and, in fact, it was taken from FreeBSD. Have a look at: https://www.illumos.org/projects/illumos-gate/repository/show/usr/src/lib/libc/port/locale I'd love it if we could get libc++ ported to illumos. I've got two bugs already filed for issues I had with the build infrastructure that our porting system turned up (12517 & 12518). I'll file another issue for the test suite issues, of which there were three for LLVM and one for clang IIRC. On Tue, Apr 10, 2012 at 11:41 AM, David Chisnall <csdavec at swan.ac.uk> wrote:> Open bug reports, and if you could add me to the CC list that would be great. I did the Solaris port for a customer and I have a couple of diffs that I need to commit, which may fix some things for you. I'm not sure how applicable it is to Illumos, but on Solaris 10 and 11 on x86-64 they've got LLVM/Clang (self-hosting) running on top of libc++ / libcxxrt and able to build their own projects. > > The libc++ port to Solaris is a little bit ugly because they can't hack up libc and Solaris libc locale support is something that Sun bought around 1994 and never touched subsequently, but for Illumos maybe you can import the xlocale implementation from FreeBSD? I'd be happy to help with porting this if you're interested. > > David
Hi Bayard, (and apologies to anyone for whom this is off-topic) On 10 Apr 2012, at 19:56, Bayard Bell wrote:> illumos has done a free and clear implementation of locale support for > libc, and, in fact, it was taken from FreeBSD. Have a look at: > > https://www.illumos.org/projects/illumos-gate/repository/show/usr/src/lib/libc/port/localeI saw that, but unfortunately it's based on an old version of FreeBSD. I only added the xlocale stuff (which libc++ needs. Or, at least, really wants...) a couple of months ago. It shouldn't be a massive amount of effort to pull in the xlocale stuff.> I'd love it if we could get libc++ ported to illumos. I've got two > bugs already filed for issues I had with the build infrastructure that > our porting system turned up (12517 & 12518). I'll file another issue > for the test suite issues, of which there were three for LLVM and one > for clang IIRC.That's great. We have libc++ running on Solaris, and Dmitri Shubin has submitted patches for a couple of bits of the build system that didn't work out of the box for them. Bootstrapping was a bit painful because Solaris seems to come with a GCC that can't produce a working clang if asserts are enabled, but clang built with clang works nicely. I'd love to see this all working on Illumos too. It would greatly help matters, by the way, if you can standarise the location of the crt*.o files on Solaris, as *BSD has done - it saves us needing a load of search logic to find the GCC path containing them, as we do on GNU/Linux. David
On Tue, Apr 10, 2012 at 8:54 PM, David Chisnall <csdavec at swan.ac.uk> wrote:> Hi Bayard, > > That's great. We have libc++ running on Solaris, and Dmitri Shubin has submitted patches for a couple of bits of the build system that didn't work out of the box for them. Bootstrapping was a bit painful because Solaris seems to come with a GCC that can't produce a working clang if asserts are enabled, but clang built with clang works nicely. I'd love to see this all working on Illumos too. It would greatly help matters, by the way, if you can standarise the location of the crt*.o files on Solaris, as *BSD has done - it saves us needing a load of search logic to find the GCC path containing them, as we do on GNU/Linux.As I also happen to maintain gcc 4.4 ATM for the illumos-userland project, I can probably help with that. I hadn't tried enabling asserts with the gcc we've got to see if it fails. When I switch to one of our compiler servers, I'll give it another whack. Otherwise tweaking compiler builds is about as much fun as watching paint dry. Part of what motivated me to pick up a recent port of llvm/clang was the talk about DTrace integration at dtrace.conf the other week: http://www.youtube.com/watch?v=6NqV_Uj8Ba4 That may not be news to you.
Possibly Parallel Threads
- [LLVMdev] [cfe-dev] where to send test suite errors
- [LLVMdev] where to send test suite errors
- [LLVMdev] [cfe-dev] where to send test suite errors
- [lld] Has anybody ever run into the Solaris linker before?
- [cfe-dev] [RFC] Open sourcing and contributing TAPI back to the LLVM community