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

[Xen-changelog] [xen staging] libx86: generate cpuid-autogen.h in the libx86 include dir



commit eddf9559c9779e9a11e1c4db46b5ec26b3cb8709
Author:     Roger Pau Monné <roger.pau@xxxxxxxxxx>
AuthorDate: Thu Jun 21 16:35:46 2018 +0200
Commit:     Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
CommitDate: Thu Jul 19 19:31:31 2018 +0100

    libx86: generate cpuid-autogen.h in the libx86 include dir
    
    This avoids all users needing to opencode local generation of the file.
    
    Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
    Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
    Reviewed-by: Wei Liu <wei.liu2@xxxxxxxxxx>
    Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
---
 .gitignore                        |  2 +-
 tools/include/Makefile            |  7 +++++--
 tools/libxc/Makefile              |  9 ---------
 tools/libxc/xc_cpuid_x86.c        |  1 -
 xen/include/Makefile              | 11 +++++------
 xen/include/asm-x86/cpufeatures.h |  2 +-
 xen/include/xen/lib/x86/Makefile  |  8 ++++++++
 xen/include/xen/lib/x86/cpuid.h   |  2 ++
 8 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.gitignore b/.gitignore
index 5b8448d8f7..55b78008c0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -311,7 +311,6 @@ xen/arch/*/efi/runtime.c
 xen/include/headers*.chk
 xen/include/asm
 xen/include/asm-*/asm-offsets.h
-xen/include/asm-x86/cpuid-autogen.h
 xen/include/compat/*
 xen/include/config/
 xen/include/generated/
@@ -319,6 +318,7 @@ xen/include/public/public
 xen/include/xen/*.new
 xen/include/xen/acm_policy.h
 xen/include/xen/compile.h
+xen/include/xen/lib/x86/cpuid-autogen.h
 xen/test/livepatch/config.h
 xen/test/livepatch/xen_bye_world.livepatch
 xen/test/livepatch/xen_hello_world.livepatch
diff --git a/tools/include/Makefile b/tools/include/Makefile
index 34ca1cb760..22df221daa 100644
--- a/tools/include/Makefile
+++ b/tools/include/Makefile
@@ -23,8 +23,11 @@ xen/.dir:
        ln -sf $(XEN_ROOT)/xen/include/acpi acpi
 ifeq ($(CONFIG_X86),y)
        ln -sf $(XEN_ROOT)/xen/include/asm-x86 xen/asm
-       mkdir -p xen/lib
-       ln -sf $(XEN_ROOT)/xen/include/xen/lib/x86 xen/lib/x86
+       mkdir -p xen/lib/x86
+       for f in $(filter-out %autogen.h,$(patsubst 
$(XEN_ROOT)/xen/include/xen/lib/x86/%,%,Makefile $(wildcard 
$(XEN_ROOT)/xen/include/xen/lib/x86/*.h))); do \
+               ln -sf $(XEN_ROOT)/xen/include/xen/lib/x86/$$f xen/lib/x86/$$f; 
\
+       done
+       $(MAKE) -C xen/lib/x86 all XEN_ROOT=$(XEN_ROOT)
 endif
        touch $@
 
diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile
index 157553c0b3..ca2b20345e 100644
--- a/tools/libxc/Makefile
+++ b/tools/libxc/Makefile
@@ -147,15 +147,6 @@ $(eval $(genpath-target))
 
 xc_private.h: _paths.h
 
-ifeq ($(CONFIG_X86),y)
-
-_xc_cpuid_autogen.h: $(XEN_ROOT)/xen/include/public/arch-x86/cpufeatureset.h 
$(XEN_ROOT)/xen/tools/gen-cpuid.py
-       $(PYTHON) $(XEN_ROOT)/xen/tools/gen-cpuid.py -i $^ -o $@.new
-       $(call move-if-changed,$@.new,$@)
-
-build: _xc_cpuid_autogen.h
-endif
-
 $(CTRL_LIB_OBJS) $(GUEST_LIB_OBJS) \
 $(CTRL_PIC_OBJS) $(GUEST_PIC_OBJS): xc_private.h
 
diff --git a/tools/libxc/xc_cpuid_x86.c b/tools/libxc/xc_cpuid_x86.c
index 165bbf86ac..6e02792a15 100644
--- a/tools/libxc/xc_cpuid_x86.c
+++ b/tools/libxc/xc_cpuid_x86.c
@@ -31,7 +31,6 @@ enum {
 #define XEN_CPUFEATURE(name, value) X86_FEATURE_##name = value,
 #include <xen/arch-x86/cpufeatureset.h>
 };
-#include "_xc_cpuid_autogen.h"
 
 #include <xen/lib/x86/cpuid.h>
 
diff --git a/xen/include/Makefile b/xen/include/Makefile
index 7c5034e6e0..df04182965 100644
--- a/xen/include/Makefile
+++ b/xen/include/Makefile
@@ -141,14 +141,13 @@ headers++.chk: $(PUBLIC_HEADERS) Makefile
 endif
 
 ifeq ($(XEN_TARGET_ARCH),x86_64)
+.PHONY: lib-x86-all
+lib-x86-all:
+       $(MAKE) -C xen/lib/x86 all
 
-$(BASEDIR)/include/asm-x86/cpuid-autogen.h: 
$(BASEDIR)/include/public/arch-x86/cpufeatureset.h 
$(BASEDIR)/tools/gen-cpuid.py FORCE
-       $(PYTHON) $(BASEDIR)/tools/gen-cpuid.py -i $< -o $@.new
-       $(call move-if-changed,$@.new,$@)
-
-all: $(BASEDIR)/include/asm-x86/cpuid-autogen.h
+all: lib-x86-all
 endif
 
 clean::
        rm -rf compat config generated headers*.chk
-       rm -f $(BASEDIR)/include/asm-x86/cpuid-autogen.h
+       rm -f $(BASEDIR)/include/xen/lib/x86/cpuid-autogen.h
diff --git a/xen/include/asm-x86/cpufeatures.h 
b/xen/include/asm-x86/cpufeatures.h
index 8e5cc53dde..249fa6e531 100644
--- a/xen/include/asm-x86/cpufeatures.h
+++ b/xen/include/asm-x86/cpufeatures.h
@@ -2,7 +2,7 @@
  * Explicitly intended for multiple inclusion.
  */
 
-#include <asm/cpuid-autogen.h>
+#include <xen/lib/x86/cpuid-autogen.h>
 
 #define FSCAPINTS FEATURESET_NR_ENTRIES
 
diff --git a/xen/include/xen/lib/x86/Makefile b/xen/include/xen/lib/x86/Makefile
new file mode 100644
index 0000000000..408d69c99e
--- /dev/null
+++ b/xen/include/xen/lib/x86/Makefile
@@ -0,0 +1,8 @@
+include $(XEN_ROOT)/Config.mk
+
+.PHONY: all
+all: cpuid-autogen.h
+
+cpuid-autogen.h: $(XEN_ROOT)/xen/include/public/arch-x86/cpufeatureset.h 
$(XEN_ROOT)/xen/tools/gen-cpuid.py
+       $(PYTHON) $(XEN_ROOT)/xen/tools/gen-cpuid.py -i $< -o $@.new
+       $(call move-if-changed,$@.new,$@)
diff --git a/xen/include/xen/lib/x86/cpuid.h b/xen/include/xen/lib/x86/cpuid.h
index cedbec518d..347f5dbdfd 100644
--- a/xen/include/xen/lib/x86/cpuid.h
+++ b/xen/include/xen/lib/x86/cpuid.h
@@ -2,6 +2,8 @@
 #ifndef XEN_LIB_X86_CPUID_H
 #define XEN_LIB_X86_CPUID_H
 
+#include <xen/lib/x86/cpuid-autogen.h>
+
 struct cpuid_leaf
 {
     uint32_t a, b, c, d;
--
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®.