[PATCH] kernel: use KCFLAGS for passing EXTRA_OPTIMIZATION flags
Rafał Miłecki
zajec5 at gmail.com
Wed Jun 15 01:41:37 PDT 2022
From: Rafał Miłecki <rafal at milecki.pl>
This uses kernel's generic variable and doesn't require patching it with
a custom Makefile change.
Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
---
include/kernel.mk | 2 +-
.../pending-5.10/201-extra_optimization.patch | 12 +++---------
.../pending-5.15/201-extra_optimization.patch | 12 +++---------
3 files changed, 7 insertions(+), 19 deletions(-)
diff --git a/include/kernel.mk b/include/kernel.mk
index 01b737f132..0eb5155bbf 100644
--- a/include/kernel.mk
+++ b/include/kernel.mk
@@ -101,7 +101,7 @@ endif
KERNEL_MAKE = $(MAKE) $(KERNEL_MAKEOPTS)
KERNEL_MAKE_FLAGS = \
- KCFLAGS="$(call iremap,$(BUILD_DIR),$(notdir $(BUILD_DIR)))" \
+ KCFLAGS="$(call iremap,$(BUILD_DIR),$(notdir $(BUILD_DIR))) $(call qstrip,$(CONFIG_EXTRA_OPTIMIZATION)) " \
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
CROSS_COMPILE="$(KERNEL_CROSS)" \
ARCH="$(LINUX_KARCH)" \
diff --git a/target/linux/generic/pending-5.10/201-extra_optimization.patch b/target/linux/generic/pending-5.10/201-extra_optimization.patch
index cb1de80764..dcf39c574f 100644
--- a/target/linux/generic/pending-5.10/201-extra_optimization.patch
+++ b/target/linux/generic/pending-5.10/201-extra_optimization.patch
@@ -14,18 +14,12 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
--- a/Makefile
+++ b/Makefile
-@@ -735,11 +735,11 @@ KBUILD_CFLAGS += $(call cc-disable-warni
- KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
-
- ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
--KBUILD_CFLAGS += -O2
-+KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION)
+@@ -739,7 +739,7 @@ KBUILD_CFLAGS += -O2
else ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
--KBUILD_CFLAGS += -O3
-+KBUILD_CFLAGS += -O3 $(EXTRA_OPTIMIZATION)
+ KBUILD_CFLAGS += -O3
else ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
-KBUILD_CFLAGS += -Os
-+KBUILD_CFLAGS += -Os -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION)
++KBUILD_CFLAGS += -Os -fno-reorder-blocks -fno-tree-ch
endif
# Tell gcc to never replace conditional load with a non-conditional one
diff --git a/target/linux/generic/pending-5.15/201-extra_optimization.patch b/target/linux/generic/pending-5.15/201-extra_optimization.patch
index 5300a5c4ab..96e93dde9b 100644
--- a/target/linux/generic/pending-5.15/201-extra_optimization.patch
+++ b/target/linux/generic/pending-5.15/201-extra_optimization.patch
@@ -14,18 +14,12 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
--- a/Makefile
+++ b/Makefile
-@@ -752,11 +752,11 @@ KBUILD_CFLAGS += $(call cc-disable-warni
- KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
-
- ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
--KBUILD_CFLAGS += -O2
-+KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION)
+@@ -756,7 +756,7 @@ KBUILD_CFLAGS += -O2
else ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
--KBUILD_CFLAGS += -O3
-+KBUILD_CFLAGS += -O3 $(EXTRA_OPTIMIZATION)
+ KBUILD_CFLAGS += -O3
else ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
-KBUILD_CFLAGS += -Os
-+KBUILD_CFLAGS += -Os -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION)
++KBUILD_CFLAGS += -Os -fno-reorder-blocks -fno-tree-ch
endif
# Tell gcc to never replace conditional load with a non-conditional one
--
2.34.1
More information about the openwrt-devel
mailing list