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

[Xen-changelog] [xen staging] pvshim: make PV shim build selectable from configure



commit 8845155c831c59e867ee3dd31ee63e0cc6c7dcf2
Author:     Roger Pau Monne <roger.pau@xxxxxxxxxx>
AuthorDate: Tue May 14 15:59:22 2019 +0200
Commit:     Wei Liu <wei.liu2@xxxxxxxxxx>
CommitDate: Wed May 15 10:49:30 2019 +0100

    pvshim: make PV shim build selectable from configure
    
    So a user can decide whether to compile a PV shim as part of the tools
    build. Note that the default behavior is preserved, which is to build
    a PV shim when the target or host (if target is unset) architecture is
    64bit x86.
    
    Requested-by: Olaf Hering <olaf@xxxxxxxxx>
    Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
    Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
    [ wei: run autogen.s ]
    Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
---
 config/Tools.mk.in      |  2 ++
 tools/configure         | 24 ++++++++++++++++++++++++
 tools/configure.ac      | 13 +++++++++++++
 tools/firmware/Makefile |  4 ----
 4 files changed, 39 insertions(+), 4 deletions(-)

diff --git a/config/Tools.mk.in b/config/Tools.mk.in
index 98245f63c9..84ddb1a542 100644
--- a/config/Tools.mk.in
+++ b/config/Tools.mk.in
@@ -75,3 +75,5 @@ TINFO_LIBS          := @TINFO_LIBS@
 ARGP_LDFLAGS        := @argp_ldflags@
 
 FILE_OFFSET_BITS    := @FILE_OFFSET_BITS@
+
+CONFIG_PV_SHIM      := @pvshim@
diff --git a/tools/configure b/tools/configure
index 92ead93335..0be0be75de 100755
--- a/tools/configure
+++ b/tools/configure
@@ -624,6 +624,7 @@ ac_includes_default="\
 
 ac_subst_vars='LTLIBOBJS
 LIBOBJS
+pvshim
 ninepfs
 SYSTEMD_LIBS
 SYSTEMD_CFLAGS
@@ -822,6 +823,7 @@ enable_systemd
 with_systemd
 with_systemd_modules_load
 enable_9pfs
+enable_pvshim
 '
       ac_precious_vars='build_alias
 host_alias
@@ -1504,6 +1506,8 @@ Optional Features:
   --enable-systemd        Enable systemd support (default is DISABLED)
   --enable-9pfs           Explicitly enable 9pfs support in QEMU build
                           (default is to defer to QEMU configure default)
+  --disable-pvshim        Disable pvshim build (enabled by default on 64bit
+                          x86)
 
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
@@ -9774,6 +9778,26 @@ fi
 
 
 
+# Check whether --enable-pvshim was given.
+if test "${enable_pvshim+set}" = set; then :
+  enableval=$enable_pvshim; if test "x$enable_pvshim" = "xno"; then :
+  pvshim=n
+else
+  pvshim=y
+fi
+else
+
+    cpu=`test -z "$target_cpu" && echo "$host_cpu" || echo "$target_cpu"`
+    case "$cpu" in
+        x86_64)
+           pvshim="y";;
+        *) pvshim="n";;
+    esac
+
+fi
+
+
+
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
 # tests run on this system so they can be shared between configure
diff --git a/tools/configure.ac b/tools/configure.ac
index c9fd69ddfa..fcf282e74e 100644
--- a/tools/configure.ac
+++ b/tools/configure.ac
@@ -492,4 +492,17 @@ AC_ARG_ENABLE([9pfs],
 
 AC_SUBST(ninepfs)
 
+AC_ARG_ENABLE([pvshim],
+    AS_HELP_STRING([--disable-pvshim],
+                   [Disable pvshim build (enabled by default on 64bit x86)]),
+    [AS_IF([test "x$enable_pvshim" = "xno"], [pvshim=n], [pvshim=y])], [
+    cpu=`test -z "$target_cpu" && echo "$host_cpu" || echo "$target_cpu"`
+    case "$cpu" in
+        x86_64)
+           pvshim="y";;
+        *) pvshim="n";;
+    esac
+])
+AC_SUBST(pvshim)
+
 AC_OUTPUT()
diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
index cf304fc578..809a5fd025 100644
--- a/tools/firmware/Makefile
+++ b/tools/firmware/Makefile
@@ -1,10 +1,6 @@
 XEN_ROOT = $(CURDIR)/../..
 include $(XEN_ROOT)/tools/Rules.mk
 
-ifneq ($(XEN_TARGET_ARCH),x86_32)
-CONFIG_PV_SHIM := y
-endif
-
 # hvmloader is a 32-bit protected mode binary.
 TARGET      := hvmloader/hvmloader
 INST_DIR := $(DESTDIR)$(XENFIRMWAREDIR)
--
generated by git-patchbot for /home/xen/git/xen.git#staging

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/xen-changelog

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.