All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony PERARD <anthony.perard@citrix.com>
To: <xen-devel@lists.xenproject.org>
Cc: "Anthony PERARD" <anthony.perard@citrix.com>,
	"Andrew Cooper" <andrew.cooper3@citrix.com>,
	"Wei Liu" <wl@xen.org>, "Jan Beulich" <jbeulich@suse.com>,
	"Roger Pau Monné" <roger.pau@citrix.com>
Subject: [Xen-devel] [XEN PATCH 6/8] xen: Move CONFIG_INDIRECT_THUNK to Kconfig
Date: Thu, 12 Dec 2019 18:27:38 +0000	[thread overview]
Message-ID: <20191212182740.2190199-7-anthony.perard@citrix.com> (raw)
In-Reply-To: <20191212182740.2190199-1-anthony.perard@citrix.com>

Now that Kconfig has the capability to run shell command when
generating CONFIG_* we can use it in some cases to test CFLAGS.

CONFIG_INDIRECT_THUNK is a good example that wants to exist both in
Makefile and as a C macro, which Kconfig do. So use Kconfig to
generate CONFIG_INDIRECT_THUNK and have the CFLAGS depends on that.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---
 xen/arch/x86/Kconfig  | 3 +++
 xen/arch/x86/Rules.mk | 4 +---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 02bb05f42ef1..ac0fbe3e1aa1 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -32,6 +32,9 @@ config ARCH_DEFCONFIG
 	string
 	default "arch/x86/configs/x86_64_defconfig"
 
+config INDIRECT_THUNK
+	def_bool $(cc-option,-mindirect-branch-register)
+
 menu "Architecture Features"
 
 source "arch/Kconfig"
diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk
index 92fdbe9d6822..a2c257fb95b2 100644
--- a/xen/arch/x86/Rules.mk
+++ b/xen/arch/x86/Rules.mk
@@ -71,11 +71,9 @@ CFLAGS += -DGCC_HAS_VISIBILITY_ATTRIBUTE
 endif
 
 # Compile with thunk-extern, indirect-branch-register if avaiable.
-ifneq ($(call cc-option,$(CC),-mindirect-branch-register,n),n)
+ifeq ($(CONFIG_INDIRECT_THUNK),y)
 CFLAGS += -mindirect-branch=thunk-extern -mindirect-branch-register
-CFLAGS += -DCONFIG_INDIRECT_THUNK
 CFLAGS += -fno-jump-tables
-export CONFIG_INDIRECT_THUNK=y
 endif
 
 # If supported by the compiler, reduce stack alignment to 8 bytes. But allow
-- 
Anthony PERARD


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  parent reply	other threads:[~2019-12-12 18:28 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-12 18:27 [Xen-devel] [XEN PATCH 0/8] xen: Kconfig update with few extra Anthony PERARD
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 1/8] Config.mk: Remove unused setvar_dir macro Anthony PERARD
2019-12-12 18:30   ` Andrew Cooper
2019-12-13 14:51     ` Anthony PERARD
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 2/8] Config.mk: Remove stray comment Anthony PERARD
2019-12-12 18:32   ` Andrew Cooper
2019-12-13 15:16     ` Anthony PERARD
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 3/8] xen: Update Kconfig to Linux v5.4 Anthony PERARD
2019-12-12 18:45   ` Andrew Cooper
2019-12-13 15:31     ` Anthony PERARD
2019-12-13 11:05   ` Jan Beulich
2019-12-13 15:49     ` Anthony PERARD
2019-12-13 16:59       ` Jan Beulich
2019-12-13 19:17         ` Andrew Cooper
2019-12-16 10:16           ` Jan Beulich
2019-12-16 14:01             ` Anthony PERARD
2019-12-16 15:55               ` Jan Beulich
2019-12-16 16:34                 ` Anthony PERARD
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 4/8] xen: Have Kconfig check $(CC)'s version Anthony PERARD
2019-12-12 18:56   ` Andrew Cooper
2019-12-13 16:08     ` Anthony PERARD
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 5/8] xen: Import cc-ifversion from Kbuild Anthony PERARD
2019-12-12 18:56   ` Andrew Cooper
2019-12-12 18:27 ` Anthony PERARD [this message]
2019-12-12 18:58   ` [Xen-devel] [XEN PATCH 6/8] xen: Move CONFIG_INDIRECT_THUNK to Kconfig Andrew Cooper
2019-12-13 11:13   ` Jan Beulich
2019-12-13 12:18     ` Anthony PERARD
2019-12-13 12:27       ` Jan Beulich
2020-02-18 16:43       ` Jan Beulich
2020-02-18 17:13         ` Anthony PERARD
2020-02-19  7:55           ` Jan Beulich
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 7/8] xen: Use $(CONFIG_CC_IS_CLANG) instead of $(clang) in Makefile Anthony PERARD
2019-12-12 19:00   ` Andrew Cooper
2019-12-13 14:37     ` Anthony PERARD
2019-12-12 18:27 ` [Xen-devel] [XEN PATCH 8/8] xen: Move GCC_HAS_VISIBILITY_ATTRIBUTE to Kconfig and common Anthony PERARD
2019-12-12 19:04   ` Andrew Cooper
2019-12-13 11:27     ` Jan Beulich

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=20191212182740.2190199-7-anthony.perard@citrix.com \
    --to=anthony.perard@citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=roger.pau@citrix.com \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.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.