On Fri, Nov 04, 2016 at 12:25:39AM +0000, Ian Jackson wrote: > Hi, grub2 maintainers. I'm CCing you into this conversation in the > hope you can help explain the semantics of the grub2 package's > build-dependency on libxen-dev.
[Technically you CCed grub@p.d.o rather than grub2@p.d.o, but no matter. CC corrected.] > I don't know why grub2 Build-Depends libxen-dev. None of the binaries > in my test-rebuild end up Depending on libxen-4.8. > > Perhaps the B-D is just because it needs a copy of the Xen public > headers for the hypervisor API. This is correct. > I doubt it statically links against > libxen* libraries, but I don't think I can entirely rule it out. Indeed, it doesn't. All the Xen interaction is in freestanding boot code that has no legitimate reason to link against the userspace libraries. > grub-xen-bin contains grub compiled for the Xen PV environment: that > is, to run directly under Xen as part of a guest startup. It will > need header files describing the Xen public ABI. These are the "Xen > public headers", and because of Xen's ABI compatibility guarantees the > normal upstream recommendation is to actually copy those into the > trees of projects which are building binaries to run on Xen. (So for > example Linux has its own - modified - copies.) It appears that upstream took a copy a little while back (upstream commit e07badcc31babb24ace4f96444bc484502427d3a), but I didn't notice this when preparing packages of 2.02~beta3. I'll test whether the package still builds correctly without libxen-dev and if so I'll upload without that build-dependency. In any case, I don't think grub2 needs to be rebuilt for this transition. Thanks, -- Colin Watson [cjwat...@debian.org]