[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] some build configuration issues
I'm looking into building the various tools and libraries for PPC now, and it's exposing a bit of build configuration difficulty. Here are some specific issues: In xen/drivers/Makefile and xen/Makefile, we need to avoid building ACPI. More generally, I think it would be a good thing to get away from the "ifeq ($(XEN_TARGET_ARCH),foo)" hackery that can be found all over the Makefiles. Linux would do it this way: obj-$(CONFIG_ACPI) += acpi/ Since I don't think we have too many feature permutations to worry about in the Xen core, having a per-architecture config.mk would work, e.g.: CONFIG_ACPI := y CONFIG_VMX := y Note that CONFIG_VMX needs to be used in tools/libxc/Makefile, and CONFIG_ACPI in xen/drivers/Makefile, so this would need to be a top-level include. (As a side benefit, the "obj-$(CONFIG_FOO) += ..." thing could solve the current parallel-hostile Makefile code like this from xen/drivers/Makefile: default: $(MAKE) -C char $(MAKE) -C acpi ) Another problem is that PPC needs to have a different CC for tools/ than for xen/. There are library dependencies like zlib in tools/, and there is no guarantee or need to have a 64-bit zlib installed. Accordingly, the PPC arch-config.mk could specify a 32-bit TOOLS_CC and 64-bit CC. Looking at the VMX case a little more, we can see that xc_vmx_build() is called from tools/python/xen/lowlevel/xc/xc.c. That will probably need an ifdef, especially since pyxc_vmx_build() is listed in the large static pyxc_methods list. That means in addition to arch-config.mk, we will need a top-level config.h for C code to use, including some of the same information (such as CONFIG_VMX). In general though, I think such ifdefs should be avoided, which typically means calling out to arch-specific code (or building an arch-specific file). Thoughts? -- Hollis Blanchard IBM Linux Technology Center _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |