On 10/19/2014 3:03 PM, Marcin Cieslak wrote: > > On Sun, 19 Oct 2014, Matthew Grooms wrote: > [...] > > I have recently managed to compile Xen (4.5 unstable from git master) using > few patches in the source code (I posted them to xen-devel_at_, most of them > are almost the same as some earlier work by Julien Grall). > Hi Marcin, I pulled in a few patches that were posted on the xen-devel list to get things to compile. Attached was the subset that I needed to get Xen 4.5 to build with the clang 3.4.1 ( with seabios disabled ). > I have used clang version 3.5.0 (trunk) from ports just for the .code16 > support, other than that clang 3.4.1 was fine. > Do you have a link to your patch set? I sifted through the ones posted by Julien and I probably saw most of yours as well. My goal was to get as much as possible to compile with the existing system compiler so I didn't try 3.5.0. Maybe that's a better bet. > Xen kernel compiled this way even boots successfully and starts Debian > dom0. > I was able to boot a FreeBSD PVH dom0 based on Rogers instructions. Pretty amazing that it all works with a GENERIC kernel. Was mostly focusing on getting the compile clean enough for a port/pkg of the final 4.5 release. [mgrooms_at_xen2 ~]$ uname -a FreeBSD xen2.shrew.lab 11.0-CURRENT FreeBSD 11.0-CURRENT #0 a50212f(pvh_dom0_v7): Sun Oct 19 09:57:23 CDT 2014 root_at_xen2.shrew.lab:/usr/obj/usr/src/sys/GENERIC amd64 [root_at_xen2 ~]# xl list Name ID Mem VCPUs State Time(s) Domain-0 0 1024 2 r----- 7.1 > This command was used to compile with 3.4.1 (without hvmloader): > env CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib gmake clang=y > CC=clang-devel HOSTCC=clang-devel CONFIG_SEABIOS=y CONFIG_HVMLOADER=n > SEABIOS_PATH=$HOME/qemu/bios.bin-1.7.5 CONFIG_QEMU=n "$_at_" > Thanks for that. I hope the Xen devs can get the yajl and signed int patches committed. Those were the only C level code changes I ran into and would clean up the build significantly for clang users. Tho only other knit was the ... register unsigned long sp asm("rsp"); ... assembly but maybe that compiles with 3.5 as well? http://llvm.org/bugs/show_bug.cgi?id=11255 Everything else was build level compiler flag fiddling. -Matthew
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:53 UTC