From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: [PATCH 1/3] xen: allow architecture to choose how/whether to compress installed xen binary Date: Wed, 17 Jul 2013 16:37:51 +0100 Message-ID: <1374075473-32502-1-git-send-email-ian.campbell@citrix.com> References: <1374075441.26728.14.camel@kazak.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1374075441.26728.14.camel@kazak.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org Cc: keir@xen.org, Ian Campbell , stefano.stabellini@eu.citrix.com, tim@xen.org, julien.grall@citrix.com, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org This is a follow up to "xen: arm: make zImage the default target which we install". On ARM the xen.gz binary installed into /boot is not immediately useful because bootloaders (e.g. u-boot) do not unconditionally support decompression (except via the uImage wrapper, which we currently do not support via our build system) Signed-off-by: Ian Campbell --- v3: Restrict $(Z) to just the rules which use it v2: Allowarch to specify the compression suffix to use --- config/arm32.mk | 2 ++ config/arm64.mk | 2 ++ config/x86_64.mk | 2 ++ xen/Makefile | 23 +++++++++++++---------- 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/config/arm32.mk b/config/arm32.mk index d8e958b..3bc642d 100644 --- a/config/arm32.mk +++ b/config/arm32.mk @@ -2,6 +2,8 @@ CONFIG_ARM := y CONFIG_ARM_32 := y CONFIG_ARM_$(XEN_OS) := y +CONFIG_XEN_INSTALL_SUFFIX := + # -march= -mcpu= # Explicitly specifiy 32-bit ARM ISA since toolchain default can be -mthumb: diff --git a/config/arm64.mk b/config/arm64.mk index b2457eb..1130630 100644 --- a/config/arm64.mk +++ b/config/arm64.mk @@ -2,6 +2,8 @@ CONFIG_ARM := y CONFIG_ARM_64 := y CONFIG_ARM_$(XEN_OS) := y +CONFIG_XEN_INSTALL_SUFFIX := + CFLAGS += #-marm -march= -mcpu= etc HAS_PL011 := y diff --git a/config/x86_64.mk b/config/x86_64.mk index 4ec6cc1..70c0d8d 100644 --- a/config/x86_64.mk +++ b/config/x86_64.mk @@ -8,6 +8,8 @@ CONFIG_MIGRATE := y CONFIG_XCUTILS := y CONFIG_IOEMU ?= y +CONFIG_XEN_INSTALL_SUFFIX := .gz + CFLAGS += -m64 SunOS_LIBDIR = $(SunOS_LIBDIR_x86_64) diff --git a/xen/Makefile b/xen/Makefile index 854a370..8bc8f3a 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -29,15 +29,17 @@ else endif .PHONY: _build -_build: $(TARGET).gz +_build: Z=$(CONFIG_XEN_INSTALL_SUFFIX) +_build: $(TARGET)$(Z) .PHONY: _install -_install: $(TARGET).gz +_install: Z=$(CONFIG_XEN_INSTALL_SUFFIX) +_install: $(TARGET)$(Z) [ -d $(DESTDIR)/boot ] || $(INSTALL_DIR) $(DESTDIR)/boot - $(INSTALL_DATA) $(TARGET).gz $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_FULLVERSION).gz - ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION).gz $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_VERSION).$(XEN_SUBVERSION).gz - ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION).gz $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_VERSION).gz - ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION).gz $(DESTDIR)/boot/$(notdir $(TARGET)).gz + $(INSTALL_DATA) $(TARGET)$(Z) $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_FULLVERSION)$(Z) + ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION)$(Z) $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_VERSION).$(XEN_SUBVERSION)$(Z) + ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION)$(Z) $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_VERSION)$(Z) + ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION)$(Z) $(DESTDIR)/boot/$(notdir $(TARGET))$(Z) $(INSTALL_DATA) $(TARGET)-syms $(DESTDIR)/boot/$(notdir $(TARGET))-syms-$(XEN_FULLVERSION) if [ -r $(TARGET).efi -a -n '$(EFI_DIR)' ]; then \ [ -d $(DESTDIR)$(EFI_DIR) ] || $(INSTALL_DIR) $(DESTDIR)$(EFI_DIR); \ @@ -53,13 +55,14 @@ _install: $(TARGET).gz fi .PHONY: _uninstall +_uninstall: Z=$(CONFIG_XEN_INSTALL_SUFFIX) _uninstall: D=$(DESTDIR) _uninstall: T=$(notdir $(TARGET)) _uninstall: - rm -f $(D)/boot/$(T)-$(XEN_FULLVERSION).gz - rm -f $(D)/boot/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION).gz - rm -f $(D)/boot/$(T)-$(XEN_VERSION).gz - rm -f $(D)/boot/$(T).gz + rm -f $(D)/boot/$(T)-$(XEN_FULLVERSION)$(Z) + rm -f $(D)/boot/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION)$(Z) + rm -f $(D)/boot/$(T)-$(XEN_VERSION)$(Z) + rm -f $(D)/boot/$(T)$(Z) rm -f $(D)/boot/$(T)-syms-$(XEN_FULLVERSION) rm -f $(D)$(EFI_DIR)/$(T)-$(XEN_FULLVERSION).efi rm -f $(D)$(EFI_DIR)/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION).efi -- 1.7.2.5