From: Ian Campbell <ian.campbell@citrix.com>
To: xen-devel@lists.xen.org
Cc: keir@xen.org, Ian Campbell <ian.campbell@citrix.com>,
stefano.stabellini@eu.citrix.com, tim@xen.org,
julien.grall@citrix.com, jbeulich@suse.com
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 [thread overview]
Message-ID: <1374075473-32502-1-git-send-email-ian.campbell@citrix.com> (raw)
In-Reply-To: <1374075441.26728.14.camel@kazak.uk.xensource.com>
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 <ian.campbell@citrix.com>
---
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
next prev parent reply other threads:[~2013-07-17 15:37 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-17 15:37 [PATCH 0/3] xen: various changes to what we install in /boot Ian Campbell
2013-07-17 15:37 ` Ian Campbell [this message]
2013-07-17 16:32 ` [PATCH 1/3] xen: allow architecture to choose how/whether to compress installed xen binary Keir Fraser
2013-07-17 16:44 ` Julien Grall
2013-07-18 7:34 ` Jan Beulich
2013-07-18 7:54 ` Ian Campbell
2013-07-17 15:37 ` [PATCH 2/3] xen: x86: drop the ".gz" suffix when installing Ian Campbell
2013-07-17 16:33 ` Keir Fraser
2013-07-17 16:53 ` Julien Grall
2013-07-17 15:37 ` [PATCH 3/3] xen: Use $(T) and $(D) aliases in install target Ian Campbell
2013-07-17 16:33 ` Keir Fraser
2013-07-17 16:54 ` Julien Grall
2013-07-18 7:26 ` Jan Beulich
2013-07-18 7:54 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1374075473-32502-1-git-send-email-ian.campbell@citrix.com \
--to=ian.campbell@citrix.com \
--cc=jbeulich@suse.com \
--cc=julien.grall@citrix.com \
--cc=keir@xen.org \
--cc=stefano.stabellini@eu.citrix.com \
--cc=tim@xen.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.