[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [MirageOS-devel] TLS packaging status update
On 1 Dec 2014, at 11:04, Thomas Leonard <talex5@xxxxxxxxx> wrote: > > This is taking a bit longer than expected... here's the current status. > > I have ocaml-tls working on Xen/ARM (and demoed by Anil at #osio), by > compiling in an OPAM switch with the right CFLAGS for Mini-OS. > However, we don't want to do it this way because dealing with OPAM > switches is annoying. > > Instead, I'm adding an ocamlfind variable which packages can use to > indicate the C stubs to link against under Xen. e.g. tcpip would put > this in its META file: > > xen_linkopts = "-ltcpip_xen_stubs" > > No libraries will be linked without this option, so we won't > accidentally link Unix libraries. This is important on x86_64, where > linking Unix libraries creates subtle race conditions due to the "red > zone" not being available in kernel mode. All sounds good to me! > > When testing this, I realised we compile openlibm for Unix, so I > updated that to get the CFLAGS from Mini-OS, but it turned out that > didn't work because Mini-OS doesn't provide sys/types.h (just > types.h), and also openlibm used some legacy type names that Mini-OS > doesn't provide. sys/types.h is currently provided by mirage-platform. > > Options: > > 1. Make openlibm depend on mirage-platform to get sys/types.h. > 2. Rename Mini-OS's types.h to sys/types.h and put everything there. > 3. Modify openlibm to use only stdint.h. > > I'm leaning towards option (3) at the moment (assuming it's possible), > but shout if you have a better idea! Isn't 2) a reasonable thing to do as well? <sys/types.h> is very commonly included due to POSIX, so there seems little harm in making MiniOS's layout comply. > After that, I'll update mirage-profile and tcpip to the new linking > system and make a pull request for the updated mirage tool. You'll > probably need to update several things at once when this happens. > > Then we'll be in a position to add the tls libraries. That might > require a little > extra work if we want to add Xen C stubs to 3rd-party packages (e.g. > zarith). Anil has suggested using OPAM depexts for this. > > Finally, we could really use some pkg-config support in OASIS. > Otherwise, getting the necessary CFLAGS is unreasonably difficult... Yeah. I believe there might be some PRs floating around, but I'd rather put the effort into Assemblage at the moment than shoehorn pkg-config into OASIS at the moment... -anil _______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |