at the moment), by linking the kernel to a GPL-ed ROM module
          provided by the hypervisor.
 
-config LGUEST_GUEST
-       bool "Lguest guest support"
-       select PARAVIRT
-       depends on !X86_PAE
-       help
-         Lguest is a tiny in-kernel hypervisor.  Selecting this will
-         allow your kernel to boot under lguest.  This option will increase
-         your kernel size by about 6k.  If in doubt, say N.
+source "arch/x86/lguest/Kconfig"
+
 endif
 
 config ACPI_SRAT
 
 # Xen paravirtualization support
 core-$(CONFIG_XEN)             += arch/x86/xen/
 
+# lguest paravirtualization support
+core-$(CONFIG_LGUEST_GUEST)    += arch/x86/lguest/
+
 # default subarch .h files
 mflags-y += -Iinclude/asm-x86/mach-default
 
 
--- /dev/null
+config LGUEST_GUEST
+       bool "Lguest guest support"
+       select PARAVIRT
+       depends on !X86_PAE
+       help
+         Lguest is a tiny in-kernel hypervisor.  Selecting this will
+         allow your kernel to boot under lguest.  This option will increase
+         your kernel size by about 6k.  If in doubt, say N.
 
--- /dev/null
+obj-y          := i386_head.o boot.o
 
 .section .init.text, "ax", @progbits
 .ascii "GenuineLguest"
        /* Set up initial stack. */
-       movl $(init_thread_union+THREAD_SIZE),%esp
+       movl $(init_thread_union+THREAD_SIZE),%esp
        movl %esi, %eax
        addl $__PAGE_OFFSET, %eax
        jmp lguest_init
 
-# Guest requires the paravirt_ops replacement and the bus driver.
-obj-$(CONFIG_LGUEST_GUEST) += lguest.o lguest_asm.o lguest_bus.o
+# Guest requires the bus driver.
+obj-$(CONFIG_LGUEST_GUEST) += lguest_bus.o
 
 # Host requires the other files, which can be a module.
 obj-$(CONFIG_LGUEST)   += lg.o