* [PATCH 0/7] kbuild: remove cc-option-yn
@ 2021-08-17 0:21 Nick Desaulniers
2021-08-17 0:21 ` [PATCH 1/7] MIPS: replace cc-option-yn uses with cc-option Nick Desaulniers
` (6 more replies)
0 siblings, 7 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: linux-kbuild, clang-built-linux, Nick Desaulniers
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to remove cc-option-yn. Do so, and update the
docs.
Base is linux-next.
Nick Desaulniers (7):
MIPS: replace cc-option-yn uses with cc-option
s390: replace cc-option-yn uses with cc-option
powerpc: replace cc-option-yn uses with cc-option
arc: replace cc-option-yn uses with cc-option
x86: remove cc-option-yn test for -mtune=
Makefile: replace cc-option-yn uses with cc-option
kbuild: remove cc-option-yn, update Docs
Documentation/kbuild/makefiles.rst | 22 ++++++---------
Makefile | 2 +-
arch/arc/Makefile | 3 +-
arch/mips/Makefile | 44 +++++++++++++++---------------
arch/mips/sgi-ip22/Platform | 4 +--
arch/powerpc/Makefile | 12 ++++----
arch/powerpc/boot/Makefile | 5 +---
arch/s390/Makefile | 14 +++++-----
arch/x86/Makefile_32.cpu | 6 ----
scripts/Makefile.compiler | 5 ----
10 files changed, 49 insertions(+), 68 deletions(-)
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply [flat|nested] 36+ messages in thread
* [PATCH 1/7] MIPS: replace cc-option-yn uses with cc-option
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 1:59 ` Nathan Chancellor
2021-08-17 0:21 ` [PATCH 2/7] s390: " Nick Desaulniers
` (5 subsequent siblings)
6 siblings, 1 reply; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers,
Thomas Bogendoerfer, linux-mips
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: linux-mips@vger.kernel.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/mips/Makefile | 44 ++++++++++++++++++-------------------
arch/mips/sgi-ip22/Platform | 4 ++--
2 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index ea3cd080a1c7..f4b9850f17fa 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -58,9 +58,7 @@ endif
ifdef CONFIG_FUNCTION_GRAPH_TRACER
ifndef KBUILD_MCOUNT_RA_ADDRESS
- ifeq ($(call cc-option-yn,-mmcount-ra-address), y)
- cflags-y += -mmcount-ra-address -DKBUILD_MCOUNT_RA_ADDRESS
- endif
+ cflags-y += $(call cc-option,-mmcount-ra-address -DKBUILD_MCOUNT_RA_ADDRESS)
endif
endif
cflags-y += $(call cc-option, -mno-check-zero-division)
@@ -208,31 +206,33 @@ cflags-$(CONFIG_CPU_DADDI_WORKAROUNDS) += $(call cc-option,-mno-daddi,)
# been fixed properly.
mips-cflags := $(cflags-y)
ifeq ($(CONFIG_CPU_HAS_SMARTMIPS),y)
-smartmips-ase := $(call cc-option-yn,$(mips-cflags) -msmartmips)
-cflags-$(smartmips-ase) += -msmartmips -Wa,--no-warn
+cflags-y += $(call cc-option,-msmartmips -Wa$(comma)--no-warn)
endif
ifeq ($(CONFIG_CPU_MICROMIPS),y)
-micromips-ase := $(call cc-option-yn,$(mips-cflags) -mmicromips)
-cflags-$(micromips-ase) += -mmicromips
+cflags-y += $(call cc-option,-mmicromips)
endif
ifeq ($(CONFIG_CPU_HAS_MSA),y)
-toolchain-msa := $(call cc-option-yn,$(mips-cflags) -mhard-float -mfp64 -Wa$(comma)-mmsa)
-cflags-$(toolchain-msa) += -DTOOLCHAIN_SUPPORTS_MSA
+ifneq ($(call cc-option,-mhard-float -mfp64 -Wa$(comma)-mmsa),)
+cflags-y += -DTOOLCHAIN_SUPPORTS_MSA
+endif
+endif
+ifneq ($(call cc-option,-mvirt),)
+cflags-y += -DTOOLCHAIN_SUPPORTS_VIRT
endif
-toolchain-virt := $(call cc-option-yn,$(mips-cflags) -mvirt)
-cflags-$(toolchain-virt) += -DTOOLCHAIN_SUPPORTS_VIRT
# For -mmicromips, use -Wa,-fatal-warnings to catch unsupported -mxpa which
# only warns
-xpa-cflags-y := $(mips-cflags)
-xpa-cflags-$(micromips-ase) += -mmicromips -Wa$(comma)-fatal-warnings
-toolchain-xpa := $(call cc-option-yn,$(xpa-cflags-y) -mxpa)
-cflags-$(toolchain-xpa) += -DTOOLCHAIN_SUPPORTS_XPA
-toolchain-crc := $(call cc-option-yn,$(mips-cflags) -Wa$(comma)-mcrc)
-cflags-$(toolchain-crc) += -DTOOLCHAIN_SUPPORTS_CRC
-toolchain-dsp := $(call cc-option-yn,$(mips-cflags) -Wa$(comma)-mdsp)
-cflags-$(toolchain-dsp) += -DTOOLCHAIN_SUPPORTS_DSP
-toolchain-ginv := $(call cc-option-yn,$(mips-cflags) -Wa$(comma)-mginv)
-cflags-$(toolchain-ginv) += -DTOOLCHAIN_SUPPORTS_GINV
+ifneq ($(call cc-option,-mmicromips -Wa$(comma)-fatal-warnings -mxpa),)
+cflags-y += -DTOOLCHAIN_SUPPORTS_XPA
+endif
+ifneq ($(call cc-option,-Wa$(comma)-mcrc),)
+cflags-y += -DTOOLCHAIN_SUPPORTS_CRC
+endif
+ifneq ($(call cc-option,-Wa$(comma)-mdsp),)
+cflags-y += -DTOOLCHAIN_SUPPORTS_DSP
+endif
+ifneq ($(call cc-option,-Wa$(comma)-mginv),)
+cflags-y += -DTOOLCHAIN_SUPPORTS_GINV
+endif
#
# Firmware support
@@ -277,7 +277,7 @@ ifdef CONFIG_64BIT
endif
endif
- ifeq ($(KBUILD_SYM32)$(call cc-option-yn,-msym32), yy)
+ ifeq ($(KBUILD_SYM32)$(call cc-option,-msym32), y-msym32)
cflags-y += -msym32 -DKBUILD_64BIT_SYM32
else
ifeq ($(CONFIG_CPU_DADDI_WORKAROUNDS), y)
diff --git a/arch/mips/sgi-ip22/Platform b/arch/mips/sgi-ip22/Platform
index 62fa30bb959e..fd8f1d01c867 100644
--- a/arch/mips/sgi-ip22/Platform
+++ b/arch/mips/sgi-ip22/Platform
@@ -24,8 +24,8 @@ endif
# Simplified: what IP22 does at 128MB+ in ksegN, IP28 does at 512MB+ in xkphys
#
ifdef CONFIG_SGI_IP28
- ifeq ($(call cc-option-yn,-march=r10000 -mr10k-cache-barrier=store), n)
- $(error gcc doesn't support needed option -mr10k-cache-barrier=store)
+ ifeq ($(call cc-option,-march=r10000 -mr10k-cache-barrier=store),)
+ $(error $(CC) doesn't support needed option -mr10k-cache-barrier=store)
endif
endif
cflags-$(CONFIG_SGI_IP28) += -mr10k-cache-barrier=store -I$(srctree)/arch/mips/include/asm/mach-ip28
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 2/7] s390: replace cc-option-yn uses with cc-option
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
2021-08-17 0:21 ` [PATCH 1/7] MIPS: replace cc-option-yn uses with cc-option Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 2:03 ` Nathan Chancellor
2021-08-23 17:43 ` Heiko Carstens
2021-08-17 0:21 ` Nick Desaulniers
` (4 subsequent siblings)
6 siblings, 2 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers,
Heiko Carstens, Vasily Gorbik, Christian Borntraeger, linux-s390
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: linux-s390@vger.kernel.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/s390/Makefile | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/arch/s390/Makefile b/arch/s390/Makefile
index 17dc4f1ac4fa..a3cf33ad009f 100644
--- a/arch/s390/Makefile
+++ b/arch/s390/Makefile
@@ -70,7 +70,7 @@ cflags-y += -Wa,-I$(srctree)/arch/$(ARCH)/include
#
cflags-$(CONFIG_FRAME_POINTER) += -fno-optimize-sibling-calls
-ifeq ($(call cc-option-yn,-mpacked-stack -mbackchain -msoft-float),y)
+ifneq ($(call cc-option,-mpacked-stack -mbackchain -msoft-float),)
cflags-$(CONFIG_PACK_STACK) += -mpacked-stack -D__PACK_STACK
aflags-$(CONFIG_PACK_STACK) += -D__PACK_STACK
endif
@@ -78,22 +78,22 @@ endif
KBUILD_AFLAGS_DECOMPRESSOR += $(aflags-y)
KBUILD_CFLAGS_DECOMPRESSOR += $(cflags-y)
-ifeq ($(call cc-option-yn,-mstack-size=8192 -mstack-guard=128),y)
+ifneq ($(call cc-option,-mstack-size=8192 -mstack-guard=128),)
cflags-$(CONFIG_CHECK_STACK) += -mstack-size=$(STACK_SIZE)
-ifneq ($(call cc-option-yn,-mstack-size=8192),y)
+ifeq ($(call cc-option,-mstack-size=8192),)
cflags-$(CONFIG_CHECK_STACK) += -mstack-guard=$(CONFIG_STACK_GUARD)
endif
endif
ifdef CONFIG_WARN_DYNAMIC_STACK
- ifeq ($(call cc-option-yn,-mwarn-dynamicstack),y)
+ ifneq ($(call cc-option,-mwarn-dynamicstack),)
KBUILD_CFLAGS += -mwarn-dynamicstack
KBUILD_CFLAGS_DECOMPRESSOR += -mwarn-dynamicstack
endif
endif
ifdef CONFIG_EXPOLINE
- ifeq ($(call cc-option-yn,$(CC_FLAGS_MARCH) -mindirect-branch=thunk),y)
+ ifneq ($(call cc-option,$(CC_FLAGS_MARCH) -mindirect-branch=thunk),)
CC_FLAGS_EXPOLINE := -mindirect-branch=thunk
CC_FLAGS_EXPOLINE += -mfunction-return=thunk
CC_FLAGS_EXPOLINE += -mindirect-branch-table
@@ -104,10 +104,10 @@ ifdef CONFIG_EXPOLINE
endif
ifdef CONFIG_FUNCTION_TRACER
- ifeq ($(call cc-option-yn,-mfentry -mnop-mcount),n)
+ ifeq ($(call cc-option,-mfentry -mnop-mcount),)
# make use of hotpatch feature if the compiler supports it
cc_hotpatch := -mhotpatch=0,3
- ifeq ($(call cc-option-yn,$(cc_hotpatch)),y)
+ ifneq ($(call cc-option,$(cc_hotpatch)),)
CC_FLAGS_FTRACE := $(cc_hotpatch)
KBUILD_AFLAGS += -DCC_USING_HOTPATCH
KBUILD_CFLAGS += -DCC_USING_HOTPATCH
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 0:21 ` [PATCH 2/7] s390: " Nick Desaulniers
` (5 subsequent siblings)
6 siblings, 0 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers,
Michael Ellerman, Benjamin Herrenschmidt, Paul Mackerras,
linuxppc-dev
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/powerpc/Makefile | 12 ++++++------
arch/powerpc/boot/Makefile | 5 +----
2 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 9aaf1abbc641..85e224536cf7 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -12,12 +12,12 @@
# Rewritten by Cort Dougan and Paul Mackerras
#
-HAS_BIARCH := $(call cc-option-yn, -m32)
+HAS_BIARCH := $(call cc-option,-m32)
# Set default 32 bits cross compilers for vdso and boot wrapper
CROSS32_COMPILE ?=
-ifeq ($(HAS_BIARCH),y)
+ifeq ($(HAS_BIARCH),-m32)
ifeq ($(CROSS32_COMPILE),)
ifdef CONFIG_PPC32
# These options will be overridden by any -mcpu option that the CPU
@@ -107,7 +107,7 @@ cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
aflags-$(CONFIG_CPU_BIG_ENDIAN) += $(call cc-option,-mbig-endian)
aflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
-ifeq ($(HAS_BIARCH),y)
+ifeq ($(HAS_BIARCH),-m32)
KBUILD_CFLAGS += -m$(BITS)
KBUILD_AFLAGS += -m$(BITS) -Wl,-a$(BITS)
KBUILD_LDFLAGS += -m elf$(BITS)$(LDEMULATION)
@@ -125,7 +125,9 @@ LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie
LDFLAGS_vmlinux := $(LDFLAGS_vmlinux-y)
ifdef CONFIG_PPC64
-ifeq ($(call cc-option-yn,-mcmodel=medium),y)
+ifeq ($(call cc-option,-mcmodel=medium),)
+ export NO_MINIMAL_TOC := -mno-minimal-toc
+else
# -mcmodel=medium breaks modules because it uses 32bit offsets from
# the TOC pointer to create pointers where possible. Pointers into the
# percpu data area are created by this method.
@@ -135,8 +137,6 @@ ifeq ($(call cc-option-yn,-mcmodel=medium),y)
# kernel percpu data space (starting with 0xc...). We need a full
# 64bit relocation for this to work, hence -mcmodel=large.
KBUILD_CFLAGS_MODULE += -mcmodel=large
-else
- export NO_MINIMAL_TOC := -mno-minimal-toc
endif
endif
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index 10c0fb306f15..33e1de5d1c95 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -66,10 +66,7 @@ ifdef CONFIG_DEBUG_INFO
BOOTCFLAGS += -g
endif
-ifeq ($(call cc-option-yn, -fstack-protector),y)
-BOOTCFLAGS += -fno-stack-protector
-endif
-
+BOOTCFLAGS += $(call cc-option,-fstack-protector)
BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj)
DTC_FLAGS ?= -p 1024
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
@ 2021-08-17 0:21 ` Nick Desaulniers
0 siblings, 0 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, Nick Desaulniers, clang-built-linux,
Paul Mackerras, linuxppc-dev
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/powerpc/Makefile | 12 ++++++------
arch/powerpc/boot/Makefile | 5 +----
2 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 9aaf1abbc641..85e224536cf7 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -12,12 +12,12 @@
# Rewritten by Cort Dougan and Paul Mackerras
#
-HAS_BIARCH := $(call cc-option-yn, -m32)
+HAS_BIARCH := $(call cc-option,-m32)
# Set default 32 bits cross compilers for vdso and boot wrapper
CROSS32_COMPILE ?=
-ifeq ($(HAS_BIARCH),y)
+ifeq ($(HAS_BIARCH),-m32)
ifeq ($(CROSS32_COMPILE),)
ifdef CONFIG_PPC32
# These options will be overridden by any -mcpu option that the CPU
@@ -107,7 +107,7 @@ cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
aflags-$(CONFIG_CPU_BIG_ENDIAN) += $(call cc-option,-mbig-endian)
aflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
-ifeq ($(HAS_BIARCH),y)
+ifeq ($(HAS_BIARCH),-m32)
KBUILD_CFLAGS += -m$(BITS)
KBUILD_AFLAGS += -m$(BITS) -Wl,-a$(BITS)
KBUILD_LDFLAGS += -m elf$(BITS)$(LDEMULATION)
@@ -125,7 +125,9 @@ LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie
LDFLAGS_vmlinux := $(LDFLAGS_vmlinux-y)
ifdef CONFIG_PPC64
-ifeq ($(call cc-option-yn,-mcmodel=medium),y)
+ifeq ($(call cc-option,-mcmodel=medium),)
+ export NO_MINIMAL_TOC := -mno-minimal-toc
+else
# -mcmodel=medium breaks modules because it uses 32bit offsets from
# the TOC pointer to create pointers where possible. Pointers into the
# percpu data area are created by this method.
@@ -135,8 +137,6 @@ ifeq ($(call cc-option-yn,-mcmodel=medium),y)
# kernel percpu data space (starting with 0xc...). We need a full
# 64bit relocation for this to work, hence -mcmodel=large.
KBUILD_CFLAGS_MODULE += -mcmodel=large
-else
- export NO_MINIMAL_TOC := -mno-minimal-toc
endif
endif
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index 10c0fb306f15..33e1de5d1c95 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -66,10 +66,7 @@ ifdef CONFIG_DEBUG_INFO
BOOTCFLAGS += -g
endif
-ifeq ($(call cc-option-yn, -fstack-protector),y)
-BOOTCFLAGS += -fno-stack-protector
-endif
-
+BOOTCFLAGS += $(call cc-option,-fstack-protector)
BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj)
DTC_FLAGS ?= -p 1024
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 0:21 ` [PATCH 2/7] s390: " Nick Desaulniers
` (5 subsequent siblings)
6 siblings, 0 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers, Vineet Gupta,
linux-snps-arc
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Cc: Vineet Gupta <vgupta@kernel.org>
Cc: linux-snps-arc@lists.infradead.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/arc/Makefile | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/arc/Makefile b/arch/arc/Makefile
index c0d87ac2e221..8782a03f24a8 100644
--- a/arch/arc/Makefile
+++ b/arch/arc/Makefile
@@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
cflags-y += $(tune-mcpu-def-y)
else
tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
-tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
-ifeq ($(tune-mcpu-ok),y)
+ifneq ($(call cc-option,$(tune-mcpu)),)
cflags-y += $(tune-mcpu)
else
# The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
@ 2021-08-17 0:21 ` Nick Desaulniers
0 siblings, 0 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers, Vineet Gupta,
linux-snps-arc
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Cc: Vineet Gupta <vgupta@kernel.org>
Cc: linux-snps-arc@lists.infradead.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/arc/Makefile | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/arc/Makefile b/arch/arc/Makefile
index c0d87ac2e221..8782a03f24a8 100644
--- a/arch/arc/Makefile
+++ b/arch/arc/Makefile
@@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
cflags-y += $(tune-mcpu-def-y)
else
tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
-tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
-ifeq ($(tune-mcpu-ok),y)
+ifneq ($(call cc-option,$(tune-mcpu)),)
cflags-y += $(tune-mcpu)
else
# The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
--
2.33.0.rc1.237.g0d66db33f3-goog
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 5/7] x86: remove cc-option-yn test for -mtune=
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
` (3 preceding siblings ...)
2021-08-17 0:21 ` Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 2:08 ` Nathan Chancellor
` (2 more replies)
2021-08-17 0:21 ` [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option Nick Desaulniers
2021-08-17 0:21 ` [PATCH 7/7] kbuild: remove cc-option-yn, update Docs Nick Desaulniers
6 siblings, 3 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers,
Thomas Gleixner, Ingo Molnar, Borislav Petkov, H . Peter Anvin,
x86
As noted in the comment, -mtune= has been supported since GCC 3.4. The
minimum required version of GCC to build the kernel (as specified in
Documentation/process/changes.rst) is GCC 4.9.
tune is not immediately expanded. Instead it defines a macro that will
test via cc-option later values for -mtune=. But we can skip the test
whether to use -mtune= vs. -mcpu=.
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: x86@kernel.org
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
arch/x86/Makefile_32.cpu | 6 ------
1 file changed, 6 deletions(-)
diff --git a/arch/x86/Makefile_32.cpu b/arch/x86/Makefile_32.cpu
index cd3056759880..e7355f8b51c2 100644
--- a/arch/x86/Makefile_32.cpu
+++ b/arch/x86/Makefile_32.cpu
@@ -2,13 +2,7 @@
# CPU tuning section - shared with UML.
# Must change only cflags-y (or [yn]), not CFLAGS! That makes a difference for UML.
-#-mtune exists since gcc 3.4
-HAS_MTUNE := $(call cc-option-yn, -mtune=i386)
-ifeq ($(HAS_MTUNE),y)
tune = $(call cc-option,-mtune=$(1),$(2))
-else
-tune = $(call cc-option,-mcpu=$(1),$(2))
-endif
cflags-$(CONFIG_M486SX) += -march=i486
cflags-$(CONFIG_M486) += -march=i486
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
` (4 preceding siblings ...)
2021-08-17 0:21 ` [PATCH 5/7] x86: remove cc-option-yn test for -mtune= Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 2:09 ` Nathan Chancellor
2021-08-25 4:43 ` Masahiro Yamada
2021-08-17 0:21 ` [PATCH 7/7] kbuild: remove cc-option-yn, update Docs Nick Desaulniers
6 siblings, 2 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: linux-kbuild, clang-built-linux, Nick Desaulniers
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to pursue removing cc-option-yn.
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 72f9e2b0202c..f76be5f62d79 100644
--- a/Makefile
+++ b/Makefile
@@ -967,7 +967,7 @@ ifdef CONFIG_FUNCTION_TRACER
ifdef CONFIG_FTRACE_MCOUNT_USE_CC
CC_FLAGS_FTRACE += -mrecord-mcount
ifdef CONFIG_HAVE_NOP_MCOUNT
- ifeq ($(call cc-option-yn, -mnop-mcount),y)
+ ifneq ($(call cc-option, -mnop-mcount),)
CC_FLAGS_FTRACE += -mnop-mcount
CC_FLAGS_USING += -DCC_USING_NOP_MCOUNT
endif
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [PATCH 7/7] kbuild: remove cc-option-yn, update Docs
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
` (5 preceding siblings ...)
2021-08-17 0:21 ` [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option Nick Desaulniers
@ 2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 2:10 ` Nathan Chancellor
6 siblings, 1 reply; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 0:21 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: linux-kbuild, clang-built-linux, Nick Desaulniers
cc-option-yn can be replaced with cc-option. ie.
Checking for support:
ifeq ($(call cc-option-yn,$(FLAG)),y)
becomes:
ifneq ($(call cc-option,$(FLAG)),)
Checking for lack of support:
ifeq ($(call cc-option-yn,$(FLAG)),n)
becomes:
ifeq ($(call cc-option,$(FLAG)),)
This allows us to remove cc-option-yn. Do so and update the docs with
examples.
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
---
Documentation/kbuild/makefiles.rst | 22 +++++++++-------------
scripts/Makefile.compiler | 5 -----
2 files changed, 9 insertions(+), 18 deletions(-)
diff --git a/Documentation/kbuild/makefiles.rst b/Documentation/kbuild/makefiles.rst
index db3af0b45baf..4538c36d8df0 100644
--- a/Documentation/kbuild/makefiles.rst
+++ b/Documentation/kbuild/makefiles.rst
@@ -650,24 +650,20 @@ more details, with real examples.
-march=pentium-mmx if supported by $(CC), otherwise -march=i586.
The second argument to cc-option is optional, and if omitted,
cflags-y will be assigned no value if first option is not supported.
- Note: cc-option uses KBUILD_CFLAGS for $(CC) options
+ Note: cc-option uses KBUILD_CFLAGS for $(CC) options.
- cc-option-yn
- cc-option-yn is used to check if gcc supports a given option
- and return 'y' if supported, otherwise 'n'.
+ cc-option can be combined with conditionals to perform actions based on tool
+ support.
Example::
- #arch/ppc/Makefile
- biarch := $(call cc-option-yn, -m32)
- aflags-$(biarch) += -a32
- cflags-$(biarch) += -m32
+ ifneq ($(call cc-option,$(FLAG)),)
+ # $(FLAG) is supported
- In the above example, $(biarch) is set to y if $(CC) supports the -m32
- option. When $(biarch) equals 'y', the expanded variables $(aflags-y)
- and $(cflags-y) will be assigned the values -a32 and -m32,
- respectively.
- Note: cc-option-yn uses KBUILD_CFLAGS for $(CC) options
+ Or::
+
+ ifeq ($(call cc-option,$(FLAG)),)
+ # $(FLAG) is not supported
cc-disable-warning
cc-disable-warning checks if gcc supports a given warning and returns
diff --git a/scripts/Makefile.compiler b/scripts/Makefile.compiler
index 86ecd2ac874c..c19c0b544c0f 100644
--- a/scripts/Makefile.compiler
+++ b/scripts/Makefile.compiler
@@ -51,11 +51,6 @@ __cc-option = $(call try-run,\
cc-option = $(call __cc-option, $(CC),\
$(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS),$(1),$(2))
-# cc-option-yn
-# Usage: flag := $(call cc-option-yn,-march=winchip-c6)
-cc-option-yn = $(call try-run,\
- $(CC) -Werror $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",y,n)
-
# cc-disable-warning
# Usage: cflags-y += $(call cc-disable-warning,unused-but-set-variable)
cc-disable-warning = $(call try-run,\
--
2.33.0.rc1.237.g0d66db33f3-goog
^ permalink raw reply related [flat|nested] 36+ messages in thread
* Re: [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` Nick Desaulniers
@ 2021-08-17 1:41 ` Nathan Chancellor
-1 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 1:41 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Michael Ellerman,
Benjamin Herrenschmidt, Paul Mackerras, linuxppc-dev
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: linuxppc-dev@lists.ozlabs.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/powerpc/Makefile | 12 ++++++------
> arch/powerpc/boot/Makefile | 5 +----
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> index 9aaf1abbc641..85e224536cf7 100644
> --- a/arch/powerpc/Makefile
> +++ b/arch/powerpc/Makefile
> @@ -12,12 +12,12 @@
> # Rewritten by Cort Dougan and Paul Mackerras
> #
>
> -HAS_BIARCH := $(call cc-option-yn, -m32)
> +HAS_BIARCH := $(call cc-option,-m32)
>
> # Set default 32 bits cross compilers for vdso and boot wrapper
> CROSS32_COMPILE ?=
>
> -ifeq ($(HAS_BIARCH),y)
> +ifeq ($(HAS_BIARCH),-m32)
> ifeq ($(CROSS32_COMPILE),)
> ifdef CONFIG_PPC32
> # These options will be overridden by any -mcpu option that the CPU
> @@ -107,7 +107,7 @@ cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
> aflags-$(CONFIG_CPU_BIG_ENDIAN) += $(call cc-option,-mbig-endian)
> aflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
>
> -ifeq ($(HAS_BIARCH),y)
> +ifeq ($(HAS_BIARCH),-m32)
> KBUILD_CFLAGS += -m$(BITS)
> KBUILD_AFLAGS += -m$(BITS) -Wl,-a$(BITS)
> KBUILD_LDFLAGS += -m elf$(BITS)$(LDEMULATION)
> @@ -125,7 +125,9 @@ LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie
> LDFLAGS_vmlinux := $(LDFLAGS_vmlinux-y)
>
> ifdef CONFIG_PPC64
> -ifeq ($(call cc-option-yn,-mcmodel=medium),y)
> +ifeq ($(call cc-option,-mcmodel=medium),)
> + export NO_MINIMAL_TOC := -mno-minimal-toc
> +else
> # -mcmodel=medium breaks modules because it uses 32bit offsets from
> # the TOC pointer to create pointers where possible. Pointers into the
> # percpu data area are created by this method.
> @@ -135,8 +137,6 @@ ifeq ($(call cc-option-yn,-mcmodel=medium),y)
> # kernel percpu data space (starting with 0xc...). We need a full
> # 64bit relocation for this to work, hence -mcmodel=large.
> KBUILD_CFLAGS_MODULE += -mcmodel=large
> -else
> - export NO_MINIMAL_TOC := -mno-minimal-toc
> endif
> endif
>
> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
> index 10c0fb306f15..33e1de5d1c95 100644
> --- a/arch/powerpc/boot/Makefile
> +++ b/arch/powerpc/boot/Makefile
> @@ -66,10 +66,7 @@ ifdef CONFIG_DEBUG_INFO
> BOOTCFLAGS += -g
> endif
>
> -ifeq ($(call cc-option-yn, -fstack-protector),y)
> -BOOTCFLAGS += -fno-stack-protector
> -endif
> -
> +BOOTCFLAGS += $(call cc-option,-fstack-protector)
This was previously disabling the stack protector but now it is enabling
it. Just remove the ifeq conditional altogether as the kernel assumes
-fno-stack-protector is always supported after commit 893ab00439a4
("kbuild: remove cc-option test of -fno-stack-protector").
> BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj)
>
> DTC_FLAGS ?= -p 1024
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
@ 2021-08-17 1:41 ` Nathan Chancellor
0 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 1:41 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Paul Mackerras, linuxppc-dev
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: linuxppc-dev@lists.ozlabs.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/powerpc/Makefile | 12 ++++++------
> arch/powerpc/boot/Makefile | 5 +----
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> index 9aaf1abbc641..85e224536cf7 100644
> --- a/arch/powerpc/Makefile
> +++ b/arch/powerpc/Makefile
> @@ -12,12 +12,12 @@
> # Rewritten by Cort Dougan and Paul Mackerras
> #
>
> -HAS_BIARCH := $(call cc-option-yn, -m32)
> +HAS_BIARCH := $(call cc-option,-m32)
>
> # Set default 32 bits cross compilers for vdso and boot wrapper
> CROSS32_COMPILE ?=
>
> -ifeq ($(HAS_BIARCH),y)
> +ifeq ($(HAS_BIARCH),-m32)
> ifeq ($(CROSS32_COMPILE),)
> ifdef CONFIG_PPC32
> # These options will be overridden by any -mcpu option that the CPU
> @@ -107,7 +107,7 @@ cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
> aflags-$(CONFIG_CPU_BIG_ENDIAN) += $(call cc-option,-mbig-endian)
> aflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -mlittle-endian
>
> -ifeq ($(HAS_BIARCH),y)
> +ifeq ($(HAS_BIARCH),-m32)
> KBUILD_CFLAGS += -m$(BITS)
> KBUILD_AFLAGS += -m$(BITS) -Wl,-a$(BITS)
> KBUILD_LDFLAGS += -m elf$(BITS)$(LDEMULATION)
> @@ -125,7 +125,9 @@ LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie
> LDFLAGS_vmlinux := $(LDFLAGS_vmlinux-y)
>
> ifdef CONFIG_PPC64
> -ifeq ($(call cc-option-yn,-mcmodel=medium),y)
> +ifeq ($(call cc-option,-mcmodel=medium),)
> + export NO_MINIMAL_TOC := -mno-minimal-toc
> +else
> # -mcmodel=medium breaks modules because it uses 32bit offsets from
> # the TOC pointer to create pointers where possible. Pointers into the
> # percpu data area are created by this method.
> @@ -135,8 +137,6 @@ ifeq ($(call cc-option-yn,-mcmodel=medium),y)
> # kernel percpu data space (starting with 0xc...). We need a full
> # 64bit relocation for this to work, hence -mcmodel=large.
> KBUILD_CFLAGS_MODULE += -mcmodel=large
> -else
> - export NO_MINIMAL_TOC := -mno-minimal-toc
> endif
> endif
>
> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
> index 10c0fb306f15..33e1de5d1c95 100644
> --- a/arch/powerpc/boot/Makefile
> +++ b/arch/powerpc/boot/Makefile
> @@ -66,10 +66,7 @@ ifdef CONFIG_DEBUG_INFO
> BOOTCFLAGS += -g
> endif
>
> -ifeq ($(call cc-option-yn, -fstack-protector),y)
> -BOOTCFLAGS += -fno-stack-protector
> -endif
> -
> +BOOTCFLAGS += $(call cc-option,-fstack-protector)
This was previously disabling the stack protector but now it is enabling
it. Just remove the ifeq conditional altogether as the kernel assumes
-fno-stack-protector is always supported after commit 893ab00439a4
("kbuild: remove cc-option test of -fno-stack-protector").
> BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj)
>
> DTC_FLAGS ?= -p 1024
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 1/7] MIPS: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` [PATCH 1/7] MIPS: replace cc-option-yn uses with cc-option Nick Desaulniers
@ 2021-08-17 1:59 ` Nathan Chancellor
0 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 1:59 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Thomas Bogendoerfer, linux-mips
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
> Cc: linux-mips@vger.kernel.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/mips/Makefile | 44 ++++++++++++++++++-------------------
> arch/mips/sgi-ip22/Platform | 4 ++--
> 2 files changed, 24 insertions(+), 24 deletions(-)
>
> diff --git a/arch/mips/Makefile b/arch/mips/Makefile
> index ea3cd080a1c7..f4b9850f17fa 100644
> --- a/arch/mips/Makefile
> +++ b/arch/mips/Makefile
> @@ -58,9 +58,7 @@ endif
>
> ifdef CONFIG_FUNCTION_GRAPH_TRACER
> ifndef KBUILD_MCOUNT_RA_ADDRESS
> - ifeq ($(call cc-option-yn,-mmcount-ra-address), y)
> - cflags-y += -mmcount-ra-address -DKBUILD_MCOUNT_RA_ADDRESS
> - endif
> + cflags-y += $(call cc-option,-mmcount-ra-address -DKBUILD_MCOUNT_RA_ADDRESS)
> endif
> endif
> cflags-y += $(call cc-option, -mno-check-zero-division)
> @@ -208,31 +206,33 @@ cflags-$(CONFIG_CPU_DADDI_WORKAROUNDS) += $(call cc-option,-mno-daddi,)
> # been fixed properly.
> mips-cflags := $(cflags-y)
> ifeq ($(CONFIG_CPU_HAS_SMARTMIPS),y)
> -smartmips-ase := $(call cc-option-yn,$(mips-cflags) -msmartmips)
> -cflags-$(smartmips-ase) += -msmartmips -Wa,--no-warn
> +cflags-y += $(call cc-option,-msmartmips -Wa$(comma)--no-warn)
I do not think this diff and most of the ones that follow are
equivalent, as you are no longer including the previously checked flags
in the cc-option invocation, which could change the result (options that
follow may depend on a prior selected flag).
I think that as long as you add $(cflags-y) to all of the cc-option
tests, it should be fine. I guess cflags-y could be eliminated but it
looks like this variable exists so that the flags can be added to both
KBUILD_CFLAGS and KBUILD_AFLAGS at the same time so removing it would
duplicate a lot of things.
> endif
> ifeq ($(CONFIG_CPU_MICROMIPS),y)
> -micromips-ase := $(call cc-option-yn,$(mips-cflags) -mmicromips)
> -cflags-$(micromips-ase) += -mmicromips
> +cflags-y += $(call cc-option,-mmicromips)
> endif
> ifeq ($(CONFIG_CPU_HAS_MSA),y)
> -toolchain-msa := $(call cc-option-yn,$(mips-cflags) -mhard-float -mfp64 -Wa$(comma)-mmsa)
> -cflags-$(toolchain-msa) += -DTOOLCHAIN_SUPPORTS_MSA
> +ifneq ($(call cc-option,-mhard-float -mfp64 -Wa$(comma)-mmsa),)
> +cflags-y += -DTOOLCHAIN_SUPPORTS_MSA
> +endif
> +endif
> +ifneq ($(call cc-option,-mvirt),)
> +cflags-y += -DTOOLCHAIN_SUPPORTS_VIRT
> endif
> -toolchain-virt := $(call cc-option-yn,$(mips-cflags) -mvirt)
> -cflags-$(toolchain-virt) += -DTOOLCHAIN_SUPPORTS_VIRT
> # For -mmicromips, use -Wa,-fatal-warnings to catch unsupported -mxpa which
> # only warns
> -xpa-cflags-y := $(mips-cflags)
> -xpa-cflags-$(micromips-ase) += -mmicromips -Wa$(comma)-fatal-warnings
> -toolchain-xpa := $(call cc-option-yn,$(xpa-cflags-y) -mxpa)
> -cflags-$(toolchain-xpa) += -DTOOLCHAIN_SUPPORTS_XPA
> -toolchain-crc := $(call cc-option-yn,$(mips-cflags) -Wa$(comma)-mcrc)
> -cflags-$(toolchain-crc) += -DTOOLCHAIN_SUPPORTS_CRC
> -toolchain-dsp := $(call cc-option-yn,$(mips-cflags) -Wa$(comma)-mdsp)
> -cflags-$(toolchain-dsp) += -DTOOLCHAIN_SUPPORTS_DSP
> -toolchain-ginv := $(call cc-option-yn,$(mips-cflags) -Wa$(comma)-mginv)
> -cflags-$(toolchain-ginv) += -DTOOLCHAIN_SUPPORTS_GINV
> +ifneq ($(call cc-option,-mmicromips -Wa$(comma)-fatal-warnings -mxpa),)
> +cflags-y += -DTOOLCHAIN_SUPPORTS_XPA
> +endif
> +ifneq ($(call cc-option,-Wa$(comma)-mcrc),)
> +cflags-y += -DTOOLCHAIN_SUPPORTS_CRC
> +endif
> +ifneq ($(call cc-option,-Wa$(comma)-mdsp),)
> +cflags-y += -DTOOLCHAIN_SUPPORTS_DSP
> +endif
> +ifneq ($(call cc-option,-Wa$(comma)-mginv),)
> +cflags-y += -DTOOLCHAIN_SUPPORTS_GINV
> +endif
>
> #
> # Firmware support
> @@ -277,7 +277,7 @@ ifdef CONFIG_64BIT
> endif
> endif
>
> - ifeq ($(KBUILD_SYM32)$(call cc-option-yn,-msym32), yy)
> + ifeq ($(KBUILD_SYM32)$(call cc-option,-msym32), y-msym32)
> cflags-y += -msym32 -DKBUILD_64BIT_SYM32
> else
> ifeq ($(CONFIG_CPU_DADDI_WORKAROUNDS), y)
> diff --git a/arch/mips/sgi-ip22/Platform b/arch/mips/sgi-ip22/Platform
> index 62fa30bb959e..fd8f1d01c867 100644
> --- a/arch/mips/sgi-ip22/Platform
> +++ b/arch/mips/sgi-ip22/Platform
> @@ -24,8 +24,8 @@ endif
> # Simplified: what IP22 does at 128MB+ in ksegN, IP28 does at 512MB+ in xkphys
> #
> ifdef CONFIG_SGI_IP28
> - ifeq ($(call cc-option-yn,-march=r10000 -mr10k-cache-barrier=store), n)
> - $(error gcc doesn't support needed option -mr10k-cache-barrier=store)
> + ifeq ($(call cc-option,-march=r10000 -mr10k-cache-barrier=store),)
> + $(error $(CC) doesn't support needed option -mr10k-cache-barrier=store)
Heh :)
> endif
> endif
> cflags-$(CONFIG_SGI_IP28) += -mr10k-cache-barrier=store -I$(srctree)/arch/mips/include/asm/mach-ip28
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 2/7] s390: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` [PATCH 2/7] s390: " Nick Desaulniers
@ 2021-08-17 2:03 ` Nathan Chancellor
2021-08-23 17:43 ` Heiko Carstens
1 sibling, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 2:03 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Heiko Carstens, Vasily Gorbik,
Christian Borntraeger, linux-s390
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Heiko Carstens <hca@linux.ibm.com>
> Cc: Vasily Gorbik <gor@linux.ibm.com>
> Cc: Christian Borntraeger <borntraeger@de.ibm.com>
> Cc: linux-s390@vger.kernel.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
> ---
> arch/s390/Makefile | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/arch/s390/Makefile b/arch/s390/Makefile
> index 17dc4f1ac4fa..a3cf33ad009f 100644
> --- a/arch/s390/Makefile
> +++ b/arch/s390/Makefile
> @@ -70,7 +70,7 @@ cflags-y += -Wa,-I$(srctree)/arch/$(ARCH)/include
> #
> cflags-$(CONFIG_FRAME_POINTER) += -fno-optimize-sibling-calls
>
> -ifeq ($(call cc-option-yn,-mpacked-stack -mbackchain -msoft-float),y)
> +ifneq ($(call cc-option,-mpacked-stack -mbackchain -msoft-float),)
> cflags-$(CONFIG_PACK_STACK) += -mpacked-stack -D__PACK_STACK
> aflags-$(CONFIG_PACK_STACK) += -D__PACK_STACK
> endif
> @@ -78,22 +78,22 @@ endif
> KBUILD_AFLAGS_DECOMPRESSOR += $(aflags-y)
> KBUILD_CFLAGS_DECOMPRESSOR += $(cflags-y)
>
> -ifeq ($(call cc-option-yn,-mstack-size=8192 -mstack-guard=128),y)
> +ifneq ($(call cc-option,-mstack-size=8192 -mstack-guard=128),)
> cflags-$(CONFIG_CHECK_STACK) += -mstack-size=$(STACK_SIZE)
> -ifneq ($(call cc-option-yn,-mstack-size=8192),y)
> +ifeq ($(call cc-option,-mstack-size=8192),)
> cflags-$(CONFIG_CHECK_STACK) += -mstack-guard=$(CONFIG_STACK_GUARD)
> endif
> endif
>
> ifdef CONFIG_WARN_DYNAMIC_STACK
> - ifeq ($(call cc-option-yn,-mwarn-dynamicstack),y)
> + ifneq ($(call cc-option,-mwarn-dynamicstack),)
> KBUILD_CFLAGS += -mwarn-dynamicstack
> KBUILD_CFLAGS_DECOMPRESSOR += -mwarn-dynamicstack
> endif
> endif
>
> ifdef CONFIG_EXPOLINE
> - ifeq ($(call cc-option-yn,$(CC_FLAGS_MARCH) -mindirect-branch=thunk),y)
> + ifneq ($(call cc-option,$(CC_FLAGS_MARCH) -mindirect-branch=thunk),)
> CC_FLAGS_EXPOLINE := -mindirect-branch=thunk
> CC_FLAGS_EXPOLINE += -mfunction-return=thunk
> CC_FLAGS_EXPOLINE += -mindirect-branch-table
> @@ -104,10 +104,10 @@ ifdef CONFIG_EXPOLINE
> endif
>
> ifdef CONFIG_FUNCTION_TRACER
> - ifeq ($(call cc-option-yn,-mfentry -mnop-mcount),n)
> + ifeq ($(call cc-option,-mfentry -mnop-mcount),)
> # make use of hotpatch feature if the compiler supports it
> cc_hotpatch := -mhotpatch=0,3
> - ifeq ($(call cc-option-yn,$(cc_hotpatch)),y)
> + ifneq ($(call cc-option,$(cc_hotpatch)),)
> CC_FLAGS_FTRACE := $(cc_hotpatch)
> KBUILD_AFLAGS += -DCC_USING_HOTPATCH
> KBUILD_CFLAGS += -DCC_USING_HOTPATCH
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` Nick Desaulniers
@ 2021-08-17 2:05 ` Nathan Chancellor
-1 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 2:05 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Vineet Gupta, linux-snps-arc
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Vineet Gupta <vgupta@kernel.org>
> Cc: linux-snps-arc@lists.infradead.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/arc/Makefile | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> index c0d87ac2e221..8782a03f24a8 100644
> --- a/arch/arc/Makefile
> +++ b/arch/arc/Makefile
> @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> cflags-y += $(tune-mcpu-def-y)
> else
> tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> -ifeq ($(tune-mcpu-ok),y)
> +ifneq ($(call cc-option,$(tune-mcpu)),)
> cflags-y += $(tune-mcpu)
Any reason not to just turn this into
cflags-y += $(call cc-option,$(tune-mcpu))
?
If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
> else
> # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
@ 2021-08-17 2:05 ` Nathan Chancellor
0 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 2:05 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Vineet Gupta, linux-snps-arc
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Vineet Gupta <vgupta@kernel.org>
> Cc: linux-snps-arc@lists.infradead.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/arc/Makefile | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> index c0d87ac2e221..8782a03f24a8 100644
> --- a/arch/arc/Makefile
> +++ b/arch/arc/Makefile
> @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> cflags-y += $(tune-mcpu-def-y)
> else
> tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> -ifeq ($(tune-mcpu-ok),y)
> +ifneq ($(call cc-option,$(tune-mcpu)),)
> cflags-y += $(tune-mcpu)
Any reason not to just turn this into
cflags-y += $(call cc-option,$(tune-mcpu))
?
If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
> else
> # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
>
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 5/7] x86: remove cc-option-yn test for -mtune=
2021-08-17 0:21 ` [PATCH 5/7] x86: remove cc-option-yn test for -mtune= Nick Desaulniers
@ 2021-08-17 2:08 ` Nathan Chancellor
2021-08-19 19:54 ` Masahiro Yamada
2021-08-19 22:19 ` Miguel Ojeda
2 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 2:08 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Thomas Gleixner, Ingo Molnar,
Borislav Petkov, H . Peter Anvin, x86
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> As noted in the comment, -mtune= has been supported since GCC 3.4. The
> minimum required version of GCC to build the kernel (as specified in
> Documentation/process/changes.rst) is GCC 4.9.
>
> tune is not immediately expanded. Instead it defines a macro that will
> test via cc-option later values for -mtune=. But we can skip the test
> whether to use -mtune= vs. -mcpu=.
>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: H. Peter Anvin <hpa@zytor.com>
> Cc: x86@kernel.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Yay for removing stale checks!
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
> ---
> arch/x86/Makefile_32.cpu | 6 ------
> 1 file changed, 6 deletions(-)
>
> diff --git a/arch/x86/Makefile_32.cpu b/arch/x86/Makefile_32.cpu
> index cd3056759880..e7355f8b51c2 100644
> --- a/arch/x86/Makefile_32.cpu
> +++ b/arch/x86/Makefile_32.cpu
> @@ -2,13 +2,7 @@
> # CPU tuning section - shared with UML.
> # Must change only cflags-y (or [yn]), not CFLAGS! That makes a difference for UML.
>
> -#-mtune exists since gcc 3.4
> -HAS_MTUNE := $(call cc-option-yn, -mtune=i386)
> -ifeq ($(HAS_MTUNE),y)
> tune = $(call cc-option,-mtune=$(1),$(2))
> -else
> -tune = $(call cc-option,-mcpu=$(1),$(2))
> -endif
>
> cflags-$(CONFIG_M486SX) += -march=i486
> cflags-$(CONFIG_M486) += -march=i486
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option Nick Desaulniers
@ 2021-08-17 2:09 ` Nathan Chancellor
2021-08-25 4:43 ` Masahiro Yamada
1 sibling, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 2:09 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada; +Cc: linux-kbuild, clang-built-linux
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
> ---
> Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/Makefile b/Makefile
> index 72f9e2b0202c..f76be5f62d79 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -967,7 +967,7 @@ ifdef CONFIG_FUNCTION_TRACER
> ifdef CONFIG_FTRACE_MCOUNT_USE_CC
> CC_FLAGS_FTRACE += -mrecord-mcount
> ifdef CONFIG_HAVE_NOP_MCOUNT
> - ifeq ($(call cc-option-yn, -mnop-mcount),y)
> + ifneq ($(call cc-option, -mnop-mcount),)
> CC_FLAGS_FTRACE += -mnop-mcount
> CC_FLAGS_USING += -DCC_USING_NOP_MCOUNT
> endif
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 7/7] kbuild: remove cc-option-yn, update Docs
2021-08-17 0:21 ` [PATCH 7/7] kbuild: remove cc-option-yn, update Docs Nick Desaulniers
@ 2021-08-17 2:10 ` Nathan Chancellor
0 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-17 2:10 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada; +Cc: linux-kbuild, clang-built-linux
On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to remove cc-option-yn. Do so and update the docs with
> examples.
>
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
> ---
> Documentation/kbuild/makefiles.rst | 22 +++++++++-------------
> scripts/Makefile.compiler | 5 -----
> 2 files changed, 9 insertions(+), 18 deletions(-)
>
> diff --git a/Documentation/kbuild/makefiles.rst b/Documentation/kbuild/makefiles.rst
> index db3af0b45baf..4538c36d8df0 100644
> --- a/Documentation/kbuild/makefiles.rst
> +++ b/Documentation/kbuild/makefiles.rst
> @@ -650,24 +650,20 @@ more details, with real examples.
> -march=pentium-mmx if supported by $(CC), otherwise -march=i586.
> The second argument to cc-option is optional, and if omitted,
> cflags-y will be assigned no value if first option is not supported.
> - Note: cc-option uses KBUILD_CFLAGS for $(CC) options
> + Note: cc-option uses KBUILD_CFLAGS for $(CC) options.
>
> - cc-option-yn
> - cc-option-yn is used to check if gcc supports a given option
> - and return 'y' if supported, otherwise 'n'.
> + cc-option can be combined with conditionals to perform actions based on tool
> + support.
>
> Example::
>
> - #arch/ppc/Makefile
> - biarch := $(call cc-option-yn, -m32)
> - aflags-$(biarch) += -a32
> - cflags-$(biarch) += -m32
> + ifneq ($(call cc-option,$(FLAG)),)
> + # $(FLAG) is supported
>
> - In the above example, $(biarch) is set to y if $(CC) supports the -m32
> - option. When $(biarch) equals 'y', the expanded variables $(aflags-y)
> - and $(cflags-y) will be assigned the values -a32 and -m32,
> - respectively.
> - Note: cc-option-yn uses KBUILD_CFLAGS for $(CC) options
> + Or::
> +
> + ifeq ($(call cc-option,$(FLAG)),)
> + # $(FLAG) is not supported
>
> cc-disable-warning
> cc-disable-warning checks if gcc supports a given warning and returns
> diff --git a/scripts/Makefile.compiler b/scripts/Makefile.compiler
> index 86ecd2ac874c..c19c0b544c0f 100644
> --- a/scripts/Makefile.compiler
> +++ b/scripts/Makefile.compiler
> @@ -51,11 +51,6 @@ __cc-option = $(call try-run,\
> cc-option = $(call __cc-option, $(CC),\
> $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS),$(1),$(2))
>
> -# cc-option-yn
> -# Usage: flag := $(call cc-option-yn,-march=winchip-c6)
> -cc-option-yn = $(call try-run,\
> - $(CC) -Werror $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",y,n)
> -
> # cc-disable-warning
> # Usage: cflags-y += $(call cc-disable-warning,unused-but-set-variable)
> cc-disable-warning = $(call try-run,\
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` Nick Desaulniers
@ 2021-08-17 2:31 ` Michael Ellerman
-1 siblings, 0 replies; 36+ messages in thread
From: Michael Ellerman @ 2021-08-17 2:31 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, clang-built-linux, Nick Desaulniers,
Benjamin Herrenschmidt, Paul Mackerras, linuxppc-dev
Nick Desaulniers <ndesaulniers@google.com> writes:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: linuxppc-dev@lists.ozlabs.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/powerpc/Makefile | 12 ++++++------
> arch/powerpc/boot/Makefile | 5 +----
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> index 9aaf1abbc641..85e224536cf7 100644
> --- a/arch/powerpc/Makefile
> +++ b/arch/powerpc/Makefile
> @@ -12,12 +12,12 @@
> # Rewritten by Cort Dougan and Paul Mackerras
> #
>
> -HAS_BIARCH := $(call cc-option-yn, -m32)
> +HAS_BIARCH := $(call cc-option,-m32)
>
> # Set default 32 bits cross compilers for vdso and boot wrapper
> CROSS32_COMPILE ?=
>
> -ifeq ($(HAS_BIARCH),y)
> +ifeq ($(HAS_BIARCH),-m32)
I don't love that we have to repeat "-m32" in each check.
I'm pretty sure you can use ifdef here, because HAS_BIARCH is a simple
variable (assigned with ":=").
ie, this can be:
ifdef HAS_BIARCH
And that avoids having to spell out "-m32" everywhere.
cheers
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
@ 2021-08-17 2:31 ` Michael Ellerman
0 siblings, 0 replies; 36+ messages in thread
From: Michael Ellerman @ 2021-08-17 2:31 UTC (permalink / raw)
To: Nick Desaulniers, Masahiro Yamada
Cc: linux-kbuild, Nick Desaulniers, clang-built-linux,
Paul Mackerras, linuxppc-dev
Nick Desaulniers <ndesaulniers@google.com> writes:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: linuxppc-dev@lists.ozlabs.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/powerpc/Makefile | 12 ++++++------
> arch/powerpc/boot/Makefile | 5 +----
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> index 9aaf1abbc641..85e224536cf7 100644
> --- a/arch/powerpc/Makefile
> +++ b/arch/powerpc/Makefile
> @@ -12,12 +12,12 @@
> # Rewritten by Cort Dougan and Paul Mackerras
> #
>
> -HAS_BIARCH := $(call cc-option-yn, -m32)
> +HAS_BIARCH := $(call cc-option,-m32)
>
> # Set default 32 bits cross compilers for vdso and boot wrapper
> CROSS32_COMPILE ?=
>
> -ifeq ($(HAS_BIARCH),y)
> +ifeq ($(HAS_BIARCH),-m32)
I don't love that we have to repeat "-m32" in each check.
I'm pretty sure you can use ifdef here, because HAS_BIARCH is a simple
variable (assigned with ":=").
ie, this can be:
ifdef HAS_BIARCH
And that avoids having to spell out "-m32" everywhere.
cheers
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
2021-08-17 2:05 ` Nathan Chancellor
@ 2021-08-17 18:07 ` Nick Desaulniers
-1 siblings, 0 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 18:07 UTC (permalink / raw)
To: Nathan Chancellor
Cc: Masahiro Yamada, linux-kbuild, clang-built-linux, Vineet Gupta,
linux-snps-arc
On Mon, Aug 16, 2021 at 7:05 PM Nathan Chancellor <nathan@kernel.org> wrote:
>
> On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> > cc-option-yn can be replaced with cc-option. ie.
> > Checking for support:
> > ifeq ($(call cc-option-yn,$(FLAG)),y)
> > becomes:
> > ifneq ($(call cc-option,$(FLAG)),)
> >
> > Checking for lack of support:
> > ifeq ($(call cc-option-yn,$(FLAG)),n)
> > becomes:
> > ifeq ($(call cc-option,$(FLAG)),)
> >
> > This allows us to pursue removing cc-option-yn.
> >
> > Cc: Vineet Gupta <vgupta@kernel.org>
> > Cc: linux-snps-arc@lists.infradead.org
> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > ---
> > arch/arc/Makefile | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> > index c0d87ac2e221..8782a03f24a8 100644
> > --- a/arch/arc/Makefile
> > +++ b/arch/arc/Makefile
> > @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> > cflags-y += $(tune-mcpu-def-y)
> > else
> > tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> > -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> > -ifeq ($(tune-mcpu-ok),y)
> > +ifneq ($(call cc-option,$(tune-mcpu)),)
> > cflags-y += $(tune-mcpu)
>
> Any reason not to just turn this into
>
> cflags-y += $(call cc-option,$(tune-mcpu))
>
> ?
Yes, you'll need to pull up the source; the diff doesn't provide
enough context. tune-mcpu is used in the body of the else branch
hinted at by the diff. PTAL
>
> If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
>
> > else
> > # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
> >
--
Thanks,
~Nick Desaulniers
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
@ 2021-08-17 18:07 ` Nick Desaulniers
0 siblings, 0 replies; 36+ messages in thread
From: Nick Desaulniers @ 2021-08-17 18:07 UTC (permalink / raw)
To: Nathan Chancellor
Cc: Masahiro Yamada, linux-kbuild, clang-built-linux, Vineet Gupta,
linux-snps-arc
On Mon, Aug 16, 2021 at 7:05 PM Nathan Chancellor <nathan@kernel.org> wrote:
>
> On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> > cc-option-yn can be replaced with cc-option. ie.
> > Checking for support:
> > ifeq ($(call cc-option-yn,$(FLAG)),y)
> > becomes:
> > ifneq ($(call cc-option,$(FLAG)),)
> >
> > Checking for lack of support:
> > ifeq ($(call cc-option-yn,$(FLAG)),n)
> > becomes:
> > ifeq ($(call cc-option,$(FLAG)),)
> >
> > This allows us to pursue removing cc-option-yn.
> >
> > Cc: Vineet Gupta <vgupta@kernel.org>
> > Cc: linux-snps-arc@lists.infradead.org
> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > ---
> > arch/arc/Makefile | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> > index c0d87ac2e221..8782a03f24a8 100644
> > --- a/arch/arc/Makefile
> > +++ b/arch/arc/Makefile
> > @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> > cflags-y += $(tune-mcpu-def-y)
> > else
> > tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> > -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> > -ifeq ($(tune-mcpu-ok),y)
> > +ifneq ($(call cc-option,$(tune-mcpu)),)
> > cflags-y += $(tune-mcpu)
>
> Any reason not to just turn this into
>
> cflags-y += $(call cc-option,$(tune-mcpu))
>
> ?
Yes, you'll need to pull up the source; the diff doesn't provide
enough context. tune-mcpu is used in the body of the else branch
hinted at by the diff. PTAL
>
> If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
>
> > else
> > # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
> >
--
Thanks,
~Nick Desaulniers
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
2021-08-17 18:07 ` Nick Desaulniers
@ 2021-08-18 1:40 ` Nathan Chancellor
-1 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-18 1:40 UTC (permalink / raw)
To: Nick Desaulniers
Cc: Masahiro Yamada, linux-kbuild, clang-built-linux, Vineet Gupta,
linux-snps-arc
On 8/17/2021 11:07 AM, 'Nick Desaulniers' via Clang Built Linux wrote:
> On Mon, Aug 16, 2021 at 7:05 PM Nathan Chancellor <nathan@kernel.org> wrote:
>>
>> On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
>>> cc-option-yn can be replaced with cc-option. ie.
>>> Checking for support:
>>> ifeq ($(call cc-option-yn,$(FLAG)),y)
>>> becomes:
>>> ifneq ($(call cc-option,$(FLAG)),)
>>>
>>> Checking for lack of support:
>>> ifeq ($(call cc-option-yn,$(FLAG)),n)
>>> becomes:
>>> ifeq ($(call cc-option,$(FLAG)),)
>>>
>>> This allows us to pursue removing cc-option-yn.
>>>
>>> Cc: Vineet Gupta <vgupta@kernel.org>
>>> Cc: linux-snps-arc@lists.infradead.org
>>> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
>>> ---
>>> arch/arc/Makefile | 3 +--
>>> 1 file changed, 1 insertion(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
>>> index c0d87ac2e221..8782a03f24a8 100644
>>> --- a/arch/arc/Makefile
>>> +++ b/arch/arc/Makefile
>>> @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
>>> cflags-y += $(tune-mcpu-def-y)
>>> else
>>> tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
>>> -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
>>> -ifeq ($(tune-mcpu-ok),y)
>>> +ifneq ($(call cc-option,$(tune-mcpu)),)
>>> cflags-y += $(tune-mcpu)
>>
>> Any reason not to just turn this into
>>
>> cflags-y += $(call cc-option,$(tune-mcpu))
>>
>> ?
>
> Yes, you'll need to pull up the source; the diff doesn't provide
> enough context. tune-mcpu is used in the body of the else branch
> hinted at by the diff. PTAL
Ah, fair enough. The warning is a little unconventional but oh well :)
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
>>
>> If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
>>
>>> else
>>> # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
>>>
>
>
>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
@ 2021-08-18 1:40 ` Nathan Chancellor
0 siblings, 0 replies; 36+ messages in thread
From: Nathan Chancellor @ 2021-08-18 1:40 UTC (permalink / raw)
To: Nick Desaulniers
Cc: Masahiro Yamada, linux-kbuild, clang-built-linux, Vineet Gupta,
linux-snps-arc
On 8/17/2021 11:07 AM, 'Nick Desaulniers' via Clang Built Linux wrote:
> On Mon, Aug 16, 2021 at 7:05 PM Nathan Chancellor <nathan@kernel.org> wrote:
>>
>> On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
>>> cc-option-yn can be replaced with cc-option. ie.
>>> Checking for support:
>>> ifeq ($(call cc-option-yn,$(FLAG)),y)
>>> becomes:
>>> ifneq ($(call cc-option,$(FLAG)),)
>>>
>>> Checking for lack of support:
>>> ifeq ($(call cc-option-yn,$(FLAG)),n)
>>> becomes:
>>> ifeq ($(call cc-option,$(FLAG)),)
>>>
>>> This allows us to pursue removing cc-option-yn.
>>>
>>> Cc: Vineet Gupta <vgupta@kernel.org>
>>> Cc: linux-snps-arc@lists.infradead.org
>>> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
>>> ---
>>> arch/arc/Makefile | 3 +--
>>> 1 file changed, 1 insertion(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
>>> index c0d87ac2e221..8782a03f24a8 100644
>>> --- a/arch/arc/Makefile
>>> +++ b/arch/arc/Makefile
>>> @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
>>> cflags-y += $(tune-mcpu-def-y)
>>> else
>>> tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
>>> -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
>>> -ifeq ($(tune-mcpu-ok),y)
>>> +ifneq ($(call cc-option,$(tune-mcpu)),)
>>> cflags-y += $(tune-mcpu)
>>
>> Any reason not to just turn this into
>>
>> cflags-y += $(call cc-option,$(tune-mcpu))
>>
>> ?
>
> Yes, you'll need to pull up the source; the diff doesn't provide
> enough context. tune-mcpu is used in the body of the else branch
> hinted at by the diff. PTAL
Ah, fair enough. The warning is a little unconventional but oh well :)
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
>>
>> If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
>>
>>> else
>>> # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
>>>
>
>
>
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 5/7] x86: remove cc-option-yn test for -mtune=
2021-08-17 0:21 ` [PATCH 5/7] x86: remove cc-option-yn test for -mtune= Nick Desaulniers
2021-08-17 2:08 ` Nathan Chancellor
@ 2021-08-19 19:54 ` Masahiro Yamada
2021-08-19 22:19 ` Miguel Ojeda
2 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-19 19:54 UTC (permalink / raw)
To: Nick Desaulniers
Cc: Linux Kbuild mailing list, clang-built-linux, Thomas Gleixner,
Ingo Molnar, Borislav Petkov, H . Peter Anvin, X86 ML
On Tue, Aug 17, 2021 at 9:21 AM Nick Desaulniers
<ndesaulniers@google.com> wrote:
>
> As noted in the comment, -mtune= has been supported since GCC 3.4. The
> minimum required version of GCC to build the kernel (as specified in
> Documentation/process/changes.rst) is GCC 4.9.
>
> tune is not immediately expanded. Instead it defines a macro that will
> test via cc-option later values for -mtune=. But we can skip the test
> whether to use -mtune= vs. -mcpu=.
>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: H. Peter Anvin <hpa@zytor.com>
> Cc: x86@kernel.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/x86/Makefile_32.cpu | 6 ------
> 1 file changed, 6 deletions(-)
>
> diff --git a/arch/x86/Makefile_32.cpu b/arch/x86/Makefile_32.cpu
> index cd3056759880..e7355f8b51c2 100644
> --- a/arch/x86/Makefile_32.cpu
> +++ b/arch/x86/Makefile_32.cpu
> @@ -2,13 +2,7 @@
> # CPU tuning section - shared with UML.
> # Must change only cflags-y (or [yn]), not CFLAGS! That makes a difference for UML.
>
> -#-mtune exists since gcc 3.4
> -HAS_MTUNE := $(call cc-option-yn, -mtune=i386)
> -ifeq ($(HAS_MTUNE),y)
> tune = $(call cc-option,-mtune=$(1),$(2))
> -else
> -tune = $(call cc-option,-mcpu=$(1),$(2))
> -endif
>
> cflags-$(CONFIG_M486SX) += -march=i486
> cflags-$(CONFIG_M486) += -march=i486
> --
> 2.33.0.rc1.237.g0d66db33f3-goog
>
LGTM.
Perhaps, a follow-up patch can remove the tune macro too,
replacing $(call tune,pentium2) with $(call cc-option,-mtune=pentium2)
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
2021-08-17 2:31 ` Michael Ellerman
@ 2021-08-19 20:04 ` Masahiro Yamada
-1 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-19 20:04 UTC (permalink / raw)
To: Michael Ellerman
Cc: Nick Desaulniers, Linux Kbuild mailing list, clang-built-linux,
Benjamin Herrenschmidt, Paul Mackerras, linuxppc-dev
On Tue, Aug 17, 2021 at 11:31 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
>
> Nick Desaulniers <ndesaulniers@google.com> writes:
> > cc-option-yn can be replaced with cc-option. ie.
> > Checking for support:
> > ifeq ($(call cc-option-yn,$(FLAG)),y)
> > becomes:
> > ifneq ($(call cc-option,$(FLAG)),)
> >
> > Checking for lack of support:
> > ifeq ($(call cc-option-yn,$(FLAG)),n)
> > becomes:
> > ifeq ($(call cc-option,$(FLAG)),)
> >
> > This allows us to pursue removing cc-option-yn.
> >
> > Cc: Michael Ellerman <mpe@ellerman.id.au>
> > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> > Cc: Paul Mackerras <paulus@samba.org>
> > Cc: linuxppc-dev@lists.ozlabs.org
> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > ---
> > arch/powerpc/Makefile | 12 ++++++------
> > arch/powerpc/boot/Makefile | 5 +----
> > 2 files changed, 7 insertions(+), 10 deletions(-)
> >
> > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> > index 9aaf1abbc641..85e224536cf7 100644
> > --- a/arch/powerpc/Makefile
> > +++ b/arch/powerpc/Makefile
> > @@ -12,12 +12,12 @@
> > # Rewritten by Cort Dougan and Paul Mackerras
> > #
> >
> > -HAS_BIARCH := $(call cc-option-yn, -m32)
> > +HAS_BIARCH := $(call cc-option,-m32)
> >
> > # Set default 32 bits cross compilers for vdso and boot wrapper
> > CROSS32_COMPILE ?=
> >
> > -ifeq ($(HAS_BIARCH),y)
> > +ifeq ($(HAS_BIARCH),-m32)
>
> I don't love that we have to repeat "-m32" in each check.
>
> I'm pretty sure you can use ifdef here, because HAS_BIARCH is a simple
> variable (assigned with ":=").
>
> ie, this can be:
>
> ifdef HAS_BIARCH
>
>
> And that avoids having to spell out "-m32" everywhere.
>
> cheers
Yes.
Comments from Nathan and Michael
both sound good.
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 3/7] powerpc: replace cc-option-yn uses with cc-option
@ 2021-08-19 20:04 ` Masahiro Yamada
0 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-19 20:04 UTC (permalink / raw)
To: Michael Ellerman
Cc: Linux Kbuild mailing list, Nick Desaulniers, clang-built-linux,
Paul Mackerras, linuxppc-dev
On Tue, Aug 17, 2021 at 11:31 AM Michael Ellerman <mpe@ellerman.id.au> wrote:
>
> Nick Desaulniers <ndesaulniers@google.com> writes:
> > cc-option-yn can be replaced with cc-option. ie.
> > Checking for support:
> > ifeq ($(call cc-option-yn,$(FLAG)),y)
> > becomes:
> > ifneq ($(call cc-option,$(FLAG)),)
> >
> > Checking for lack of support:
> > ifeq ($(call cc-option-yn,$(FLAG)),n)
> > becomes:
> > ifeq ($(call cc-option,$(FLAG)),)
> >
> > This allows us to pursue removing cc-option-yn.
> >
> > Cc: Michael Ellerman <mpe@ellerman.id.au>
> > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> > Cc: Paul Mackerras <paulus@samba.org>
> > Cc: linuxppc-dev@lists.ozlabs.org
> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > ---
> > arch/powerpc/Makefile | 12 ++++++------
> > arch/powerpc/boot/Makefile | 5 +----
> > 2 files changed, 7 insertions(+), 10 deletions(-)
> >
> > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> > index 9aaf1abbc641..85e224536cf7 100644
> > --- a/arch/powerpc/Makefile
> > +++ b/arch/powerpc/Makefile
> > @@ -12,12 +12,12 @@
> > # Rewritten by Cort Dougan and Paul Mackerras
> > #
> >
> > -HAS_BIARCH := $(call cc-option-yn, -m32)
> > +HAS_BIARCH := $(call cc-option,-m32)
> >
> > # Set default 32 bits cross compilers for vdso and boot wrapper
> > CROSS32_COMPILE ?=
> >
> > -ifeq ($(HAS_BIARCH),y)
> > +ifeq ($(HAS_BIARCH),-m32)
>
> I don't love that we have to repeat "-m32" in each check.
>
> I'm pretty sure you can use ifdef here, because HAS_BIARCH is a simple
> variable (assigned with ":=").
>
> ie, this can be:
>
> ifdef HAS_BIARCH
>
>
> And that avoids having to spell out "-m32" everywhere.
>
> cheers
Yes.
Comments from Nathan and Michael
both sound good.
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 5/7] x86: remove cc-option-yn test for -mtune=
2021-08-17 0:21 ` [PATCH 5/7] x86: remove cc-option-yn test for -mtune= Nick Desaulniers
2021-08-17 2:08 ` Nathan Chancellor
2021-08-19 19:54 ` Masahiro Yamada
@ 2021-08-19 22:19 ` Miguel Ojeda
2021-08-25 4:39 ` Masahiro Yamada
2 siblings, 1 reply; 36+ messages in thread
From: Miguel Ojeda @ 2021-08-19 22:19 UTC (permalink / raw)
To: Nick Desaulniers
Cc: Masahiro Yamada, Linux Kbuild mailing list, clang-built-linux,
Thomas Gleixner, Ingo Molnar, Borislav Petkov, H . Peter Anvin,
maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)
On Tue, Aug 17, 2021 at 2:21 AM 'Nick Desaulniers' via Clang Built
Linux <clang-built-linux@googlegroups.com> wrote:
>
> As noted in the comment, -mtune= has been supported since GCC 3.4. The
> minimum required version of GCC to build the kernel (as specified in
> Documentation/process/changes.rst) is GCC 4.9.
Yes, please!
Reviewed-by: Miguel Ojeda <ojeda@kernel.org>
Cheers,
Miguel
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 2/7] s390: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` [PATCH 2/7] s390: " Nick Desaulniers
2021-08-17 2:03 ` Nathan Chancellor
@ 2021-08-23 17:43 ` Heiko Carstens
2021-08-25 4:37 ` Masahiro Yamada
1 sibling, 1 reply; 36+ messages in thread
From: Heiko Carstens @ 2021-08-23 17:43 UTC (permalink / raw)
To: Nick Desaulniers
Cc: Masahiro Yamada, linux-kbuild, clang-built-linux, Vasily Gorbik,
Christian Borntraeger, linux-s390
On Mon, Aug 16, 2021 at 05:21:04PM -0700, Nick Desaulniers wrote:
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Cc: Heiko Carstens <hca@linux.ibm.com>
> Cc: Vasily Gorbik <gor@linux.ibm.com>
> Cc: Christian Borntraeger <borntraeger@de.ibm.com>
> Cc: linux-s390@vger.kernel.org
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> arch/s390/Makefile | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
Acked-by: Heiko Carstens <hca@linux.ibm.com>
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 2/7] s390: replace cc-option-yn uses with cc-option
2021-08-23 17:43 ` Heiko Carstens
@ 2021-08-25 4:37 ` Masahiro Yamada
0 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-25 4:37 UTC (permalink / raw)
To: Heiko Carstens
Cc: Nick Desaulniers, Linux Kbuild mailing list, clang-built-linux,
Vasily Gorbik, Christian Borntraeger, linux-s390
On Tue, Aug 24, 2021 at 2:43 AM Heiko Carstens <hca@linux.ibm.com> wrote:
>
> On Mon, Aug 16, 2021 at 05:21:04PM -0700, Nick Desaulniers wrote:
> > cc-option-yn can be replaced with cc-option. ie.
> > Checking for support:
> > ifeq ($(call cc-option-yn,$(FLAG)),y)
> > becomes:
> > ifneq ($(call cc-option,$(FLAG)),)
> >
> > Checking for lack of support:
> > ifeq ($(call cc-option-yn,$(FLAG)),n)
> > becomes:
> > ifeq ($(call cc-option,$(FLAG)),)
> >
> > This allows us to pursue removing cc-option-yn.
> >
> > Cc: Heiko Carstens <hca@linux.ibm.com>
> > Cc: Vasily Gorbik <gor@linux.ibm.com>
> > Cc: Christian Borntraeger <borntraeger@de.ibm.com>
> > Cc: linux-s390@vger.kernel.org
> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > ---
> > arch/s390/Makefile | 14 +++++++-------
> > 1 file changed, 7 insertions(+), 7 deletions(-)
>
> Acked-by: Heiko Carstens <hca@linux.ibm.com>
Applied to linux-kbuild.
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
2021-08-18 1:40 ` Nathan Chancellor
@ 2021-08-25 4:38 ` Masahiro Yamada
-1 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-25 4:38 UTC (permalink / raw)
To: Nathan Chancellor
Cc: Nick Desaulniers, Linux Kbuild mailing list, clang-built-linux,
Vineet Gupta, arcml
On Wed, Aug 18, 2021 at 10:40 AM Nathan Chancellor <nathan@kernel.org> wrote:
>
>
>
> On 8/17/2021 11:07 AM, 'Nick Desaulniers' via Clang Built Linux wrote:
> > On Mon, Aug 16, 2021 at 7:05 PM Nathan Chancellor <nathan@kernel.org> wrote:
> >>
> >> On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> >>> cc-option-yn can be replaced with cc-option. ie.
> >>> Checking for support:
> >>> ifeq ($(call cc-option-yn,$(FLAG)),y)
> >>> becomes:
> >>> ifneq ($(call cc-option,$(FLAG)),)
> >>>
> >>> Checking for lack of support:
> >>> ifeq ($(call cc-option-yn,$(FLAG)),n)
> >>> becomes:
> >>> ifeq ($(call cc-option,$(FLAG)),)
> >>>
> >>> This allows us to pursue removing cc-option-yn.
> >>>
> >>> Cc: Vineet Gupta <vgupta@kernel.org>
> >>> Cc: linux-snps-arc@lists.infradead.org
> >>> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> >>> ---
> >>> arch/arc/Makefile | 3 +--
> >>> 1 file changed, 1 insertion(+), 2 deletions(-)
> >>>
> >>> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> >>> index c0d87ac2e221..8782a03f24a8 100644
> >>> --- a/arch/arc/Makefile
> >>> +++ b/arch/arc/Makefile
> >>> @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> >>> cflags-y += $(tune-mcpu-def-y)
> >>> else
> >>> tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> >>> -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> >>> -ifeq ($(tune-mcpu-ok),y)
> >>> +ifneq ($(call cc-option,$(tune-mcpu)),)
> >>> cflags-y += $(tune-mcpu)
> >>
> >> Any reason not to just turn this into
> >>
> >> cflags-y += $(call cc-option,$(tune-mcpu))
> >>
> >> ?
> >
> > Yes, you'll need to pull up the source; the diff doesn't provide
> > enough context. tune-mcpu is used in the body of the else branch
> > hinted at by the diff. PTAL
>
> Ah, fair enough. The warning is a little unconventional but oh well :)
>
> Reviewed-by: Nathan Chancellor <nathan@kernel.org>
>
> >>
> >> If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
> >>
> >>> else
> >>> # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
> >>>
> >
> >
> >
Applied to linux-kbuild.
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 4/7] arc: replace cc-option-yn uses with cc-option
@ 2021-08-25 4:38 ` Masahiro Yamada
0 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-25 4:38 UTC (permalink / raw)
To: Nathan Chancellor
Cc: Nick Desaulniers, Linux Kbuild mailing list, clang-built-linux,
Vineet Gupta, arcml
On Wed, Aug 18, 2021 at 10:40 AM Nathan Chancellor <nathan@kernel.org> wrote:
>
>
>
> On 8/17/2021 11:07 AM, 'Nick Desaulniers' via Clang Built Linux wrote:
> > On Mon, Aug 16, 2021 at 7:05 PM Nathan Chancellor <nathan@kernel.org> wrote:
> >>
> >> On 8/16/2021 5:21 PM, 'Nick Desaulniers' via Clang Built Linux wrote:
> >>> cc-option-yn can be replaced with cc-option. ie.
> >>> Checking for support:
> >>> ifeq ($(call cc-option-yn,$(FLAG)),y)
> >>> becomes:
> >>> ifneq ($(call cc-option,$(FLAG)),)
> >>>
> >>> Checking for lack of support:
> >>> ifeq ($(call cc-option-yn,$(FLAG)),n)
> >>> becomes:
> >>> ifeq ($(call cc-option,$(FLAG)),)
> >>>
> >>> This allows us to pursue removing cc-option-yn.
> >>>
> >>> Cc: Vineet Gupta <vgupta@kernel.org>
> >>> Cc: linux-snps-arc@lists.infradead.org
> >>> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> >>> ---
> >>> arch/arc/Makefile | 3 +--
> >>> 1 file changed, 1 insertion(+), 2 deletions(-)
> >>>
> >>> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> >>> index c0d87ac2e221..8782a03f24a8 100644
> >>> --- a/arch/arc/Makefile
> >>> +++ b/arch/arc/Makefile
> >>> @@ -18,8 +18,7 @@ ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> >>> cflags-y += $(tune-mcpu-def-y)
> >>> else
> >>> tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> >>> -tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> >>> -ifeq ($(tune-mcpu-ok),y)
> >>> +ifneq ($(call cc-option,$(tune-mcpu)),)
> >>> cflags-y += $(tune-mcpu)
> >>
> >> Any reason not to just turn this into
> >>
> >> cflags-y += $(call cc-option,$(tune-mcpu))
> >>
> >> ?
> >
> > Yes, you'll need to pull up the source; the diff doesn't provide
> > enough context. tune-mcpu is used in the body of the else branch
> > hinted at by the diff. PTAL
>
> Ah, fair enough. The warning is a little unconventional but oh well :)
>
> Reviewed-by: Nathan Chancellor <nathan@kernel.org>
>
> >>
> >> If $(tune-mcpu) is empty or invalid, nothing will be added to cflags-y.
> >>
> >>> else
> >>> # The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
> >>>
> >
> >
> >
Applied to linux-kbuild.
--
Best Regards
Masahiro Yamada
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 5/7] x86: remove cc-option-yn test for -mtune=
2021-08-19 22:19 ` Miguel Ojeda
@ 2021-08-25 4:39 ` Masahiro Yamada
0 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-25 4:39 UTC (permalink / raw)
To: Miguel Ojeda
Cc: Nick Desaulniers, Linux Kbuild mailing list, clang-built-linux,
Thomas Gleixner, Ingo Molnar, Borislav Petkov, H . Peter Anvin,
maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)
On Fri, Aug 20, 2021 at 7:20 AM Miguel Ojeda
<miguel.ojeda.sandonis@gmail.com> wrote:
>
> On Tue, Aug 17, 2021 at 2:21 AM 'Nick Desaulniers' via Clang Built
> Linux <clang-built-linux@googlegroups.com> wrote:
> >
> > As noted in the comment, -mtune= has been supported since GCC 3.4. The
> > minimum required version of GCC to build the kernel (as specified in
> > Documentation/process/changes.rst) is GCC 4.9.
>
> Yes, please!
>
> Reviewed-by: Miguel Ojeda <ojeda@kernel.org>
>
> Cheers,
> Miguel
Applied to linux-kbuild.
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option
2021-08-17 0:21 ` [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option Nick Desaulniers
2021-08-17 2:09 ` Nathan Chancellor
@ 2021-08-25 4:43 ` Masahiro Yamada
2021-08-25 4:49 ` Masahiro Yamada
1 sibling, 1 reply; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-25 4:43 UTC (permalink / raw)
To: Nick Desaulniers; +Cc: Linux Kbuild mailing list, clang-built-linux
On Tue, Aug 17, 2021 at 9:21 AM 'Nick Desaulniers' via Clang Built
Linux <clang-built-linux@googlegroups.com> wrote:
>
> cc-option-yn can be replaced with cc-option. ie.
> Checking for support:
> ifeq ($(call cc-option-yn,$(FLAG)),y)
> becomes:
> ifneq ($(call cc-option,$(FLAG)),)
>
> Checking for lack of support:
> ifeq ($(call cc-option-yn,$(FLAG)),n)
> becomes:
> ifeq ($(call cc-option,$(FLAG)),)
>
> This allows us to pursue removing cc-option-yn.
>
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/Makefile b/Makefile
> index 72f9e2b0202c..f76be5f62d79 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -967,7 +967,7 @@ ifdef CONFIG_FUNCTION_TRACER
> ifdef CONFIG_FTRACE_MCOUNT_USE_CC
> CC_FLAGS_FTRACE += -mrecord-mcount
> ifdef CONFIG_HAVE_NOP_MCOUNT
> - ifeq ($(call cc-option-yn, -mnop-mcount),y)
> + ifneq ($(call cc-option, -mnop-mcount),)
> CC_FLAGS_FTRACE += -mnop-mcount
> CC_FLAGS_USING += -DCC_USING_NOP_MCOUNT
> endif
> --
> 2.33.0.rc1.237.g0d66db33f3-goog
>
> --
> You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20210817002109.2736222-7-ndesaulniers%40google.com.
I am fine with this change, but
is there any reason why you did not touch the following hunk?
ifdef CONFIG_HAVE_FENTRY
# s390-linux-gnu-gcc did not support -mfentry until gcc-9.
ifeq ($(call cc-option-yn, -mfentry),y)
CC_FLAGS_FTRACE += -mfentry
CC_FLAGS_USING += -DCC_USING_FENTRY
endif
endif
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
* Re: [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option
2021-08-25 4:43 ` Masahiro Yamada
@ 2021-08-25 4:49 ` Masahiro Yamada
0 siblings, 0 replies; 36+ messages in thread
From: Masahiro Yamada @ 2021-08-25 4:49 UTC (permalink / raw)
To: Nick Desaulniers; +Cc: Linux Kbuild mailing list, clang-built-linux
On Wed, Aug 25, 2021 at 1:43 PM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> On Tue, Aug 17, 2021 at 9:21 AM 'Nick Desaulniers' via Clang Built
> Linux <clang-built-linux@googlegroups.com> wrote:
> >
> > cc-option-yn can be replaced with cc-option. ie.
> > Checking for support:
> > ifeq ($(call cc-option-yn,$(FLAG)),y)
> > becomes:
> > ifneq ($(call cc-option,$(FLAG)),)
> >
> > Checking for lack of support:
> > ifeq ($(call cc-option-yn,$(FLAG)),n)
> > becomes:
> > ifeq ($(call cc-option,$(FLAG)),)
> >
> > This allows us to pursue removing cc-option-yn.
> >
> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > ---
> > Makefile | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/Makefile b/Makefile
> > index 72f9e2b0202c..f76be5f62d79 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -967,7 +967,7 @@ ifdef CONFIG_FUNCTION_TRACER
> > ifdef CONFIG_FTRACE_MCOUNT_USE_CC
> > CC_FLAGS_FTRACE += -mrecord-mcount
> > ifdef CONFIG_HAVE_NOP_MCOUNT
> > - ifeq ($(call cc-option-yn, -mnop-mcount),y)
> > + ifneq ($(call cc-option, -mnop-mcount),)
> > CC_FLAGS_FTRACE += -mnop-mcount
> > CC_FLAGS_USING += -DCC_USING_NOP_MCOUNT
> > endif
> > --
> > 2.33.0.rc1.237.g0d66db33f3-goog
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@googlegroups.com.
> > To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20210817002109.2736222-7-ndesaulniers%40google.com.
>
>
>
> I am fine with this change, but
> is there any reason why you did not touch the following hunk?
>
>
>
> ifdef CONFIG_HAVE_FENTRY
> # s390-linux-gnu-gcc did not support -mfentry until gcc-9.
> ifeq ($(call cc-option-yn, -mfentry),y)
> CC_FLAGS_FTRACE += -mfentry
> CC_FLAGS_USING += -DCC_USING_FENTRY
> endif
> endif
>
Ah, I just recalled that this hunk was restored
after a build error was reported:
https://lore.kernel.org/lkml/CAKwvOdkckey1=VUHApTcJYufyhdRJ=jb4qYs52f59g6ha7qphw@mail.gmail.com/
So, please send v2, changing -mfentry part in the same way.
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 36+ messages in thread
end of thread, other threads:[~2021-08-25 4:50 UTC | newest]
Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-17 0:21 [PATCH 0/7] kbuild: remove cc-option-yn Nick Desaulniers
2021-08-17 0:21 ` [PATCH 1/7] MIPS: replace cc-option-yn uses with cc-option Nick Desaulniers
2021-08-17 1:59 ` Nathan Chancellor
2021-08-17 0:21 ` [PATCH 2/7] s390: " Nick Desaulniers
2021-08-17 2:03 ` Nathan Chancellor
2021-08-23 17:43 ` Heiko Carstens
2021-08-25 4:37 ` Masahiro Yamada
2021-08-17 0:21 ` [PATCH 3/7] powerpc: " Nick Desaulniers
2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 1:41 ` Nathan Chancellor
2021-08-17 1:41 ` Nathan Chancellor
2021-08-17 2:31 ` Michael Ellerman
2021-08-17 2:31 ` Michael Ellerman
2021-08-19 20:04 ` Masahiro Yamada
2021-08-19 20:04 ` Masahiro Yamada
2021-08-17 0:21 ` [PATCH 4/7] arc: " Nick Desaulniers
2021-08-17 0:21 ` Nick Desaulniers
2021-08-17 2:05 ` Nathan Chancellor
2021-08-17 2:05 ` Nathan Chancellor
2021-08-17 18:07 ` Nick Desaulniers
2021-08-17 18:07 ` Nick Desaulniers
2021-08-18 1:40 ` Nathan Chancellor
2021-08-18 1:40 ` Nathan Chancellor
2021-08-25 4:38 ` Masahiro Yamada
2021-08-25 4:38 ` Masahiro Yamada
2021-08-17 0:21 ` [PATCH 5/7] x86: remove cc-option-yn test for -mtune= Nick Desaulniers
2021-08-17 2:08 ` Nathan Chancellor
2021-08-19 19:54 ` Masahiro Yamada
2021-08-19 22:19 ` Miguel Ojeda
2021-08-25 4:39 ` Masahiro Yamada
2021-08-17 0:21 ` [PATCH 6/7] Makefile: replace cc-option-yn uses with cc-option Nick Desaulniers
2021-08-17 2:09 ` Nathan Chancellor
2021-08-25 4:43 ` Masahiro Yamada
2021-08-25 4:49 ` Masahiro Yamada
2021-08-17 0:21 ` [PATCH 7/7] kbuild: remove cc-option-yn, update Docs Nick Desaulniers
2021-08-17 2:10 ` Nathan Chancellor
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.