[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Netboot Xen images for amd64



On Sat, 2009-04-18 at 09:45 +0000, Ian Campbell wrote:
> Hi all,
> 
> Since the Xen modules will be included in the next
> linux-kernel-di-amd64-2.6 upload I'd like to also add a netboot-xen
> target to the build. This is slightly unusual since, unlike i386, the
> standard kernel used on amd64 is Xen capable and therefore the regular
> images work just fine. However I would still like to maintain the
> netboot/xen subdirectory for consistency with i386 and also to have a
> sane place to put the xm-debian.cfg example configuration file. I would
> prefer to populate netboot/xen with symlinks rather than actual images
> which do nothing but duplicate the netboot/gtk images.
> 
> What are peoples feelings on this patch? I couldn't think of a cleaner
> way to do this or a way to avoid touching the generic Makefile.

No comments on this bit? OK if I commit shortly?

[...]
> 
> Ian.
> ---
>  installer/build/Makefile                     |   14 ++++++++++++++
>  installer/build/config/amd64.cfg             |    2 +-
>  installer/build/config/amd64/netboot-xen.cfg |   13 +++++++++++++
>  3 files changed, 28 insertions(+), 1 deletions(-)
>  create mode 100644 installer/build/config/amd64/netboot-xen.cfg
> 
> diff --git a/installer/build/Makefile b/installer/build/Makefile
> index b917b8f..0bf9b1e 100644
> --- a/installer/build/Makefile
> +++ b/installer/build/Makefile
> @@ -617,20 +617,34 @@ $(TEMP_INITRD): $(STAMPS)tree-$(targetstring)-stamp arch_tree
>  
>  # Create the images for dest/. Those are the targets called from config.
>  
> +ifeq ($(SYMLINK_INITRD),)
>  $(INITRD): $(TEMP_INITRD)
>  	install -m 644 -D $< $@
>  	update-manifest $@ $(MANIFEST-INITRD) $(UDEB_LISTS)
> +else
> +$(INITRD): $(realpath $(dir $(INITRD))/$(SYMLINK_INITRD))
> +	mkdir -p $(dir $(INITRD))
> +	ln -s $(SYMLINK_INITRD) $@
> +	update-manifest $@ $(MANIFEST-INITRD) $(UDEB_LISTS)
> +endif
>  
>  $(RAMDISK): $(TEMP_INITRD)
>  	install -m 644 -D $< $@
>  	update-manifest $@ $(MANIFEST-RAMDISK) $(UDEB_LISTS)
>  
>  # raw kernel images
> +ifeq ($(SYMLINK_KERNEL),)
>  $(KERNEL): TEMP_REAL_KERNEL = $(TEMP)/$(shell echo ./$@ |sed 's,$(SOME_DEST)/$(EXTRANAME),,')
>  $(KERNEL):
>  	@$(MAKE) $(STAMPS)tree-unpack-$(targetstring)-stamp $(TEMP_REAL_KERNEL)
>  	install -m 644 -D $(TEMP_REAL_KERNEL) $@
>  	update-manifest $@ $(MANIFEST-KERNEL)
> +else
> +$(KERNEL): $(realpath $(dir $(KERNEL))/$(SYMLINK_KERNEL))
> +	mkdir -p $(dir $(KERNEL))
> +	ln -s $(SYMLINK_KERNEL) $@
> +	update-manifest $@ $(MANIFEST-KERNEL)
> +endif
>  
>  # bootable images
>  $(BOOT): $(TEMP_BOOT)
> diff --git a/installer/build/config/amd64.cfg b/installer/build/config/amd64.cfg
> index 5d7e19d..5cab89c 100644
> --- a/installer/build/config/amd64.cfg
> +++ b/installer/build/config/amd64.cfg
> @@ -1,4 +1,4 @@
> -MEDIUM_SUPPORTED = cdrom netboot netboot-gtk hd-media
> +MEDIUM_SUPPORTED = cdrom netboot netboot-gtk netboot-xen hd-media
>  MEDIUM_SUPPORTED_EXTRA = monolithic
>  
>  # The version of the kernel to use.
> diff --git a/installer/build/config/amd64/netboot-xen.cfg b/installer/build/config/amd64/netboot-xen.cfg
> new file mode 100644
> index 0000000..71ba29a
> --- /dev/null
> +++ b/installer/build/config/amd64/netboot-xen.cfg
> @@ -0,0 +1,13 @@
> +TYPE=netboot/gtk
> +
> +EXTRANAME=netboot/xen/
> +
> +MANIFEST-KERNEL = "kernel image for installing under Xen"
> +MANIFEST-INITRD = "initrd for installing under Xen"
> +MANIFEST-XENCFG = "example Xen configuration"
> +
> +TARGET = $(KERNEL) $(INITRD) xen_config
> +SYMLINK_KERNEL = ../gtk/debian-installer/amd64/linux
> +SYMLINK_INITRD = ../gtk/debian-installer/amd64/initrd.gz
> +
> +EXTRATARGETS = build_netboot-gtk
> -- 
> 1.6.2.2
> 
> 
> 
> -- 
> Ian Campbell
> 
> Demographic polls show that you have lost credibility across the board.
> Especially with those 14 year-old Valley girls.
-- 
Ian Campbell
Current Noise: Reverend Bizarre - In The Rectory

If all the world's a stage, I want to operate the trap door.
		-- Paul Beatty


Reply to: