[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210414192657.17764-1-rdunlap@infradead.org>
Date: Wed, 14 Apr 2021 12:26:57 -0700
From: Randy Dunlap <rdunlap@...radead.org>
To: linux-kernel@...r.kernel.org
Cc: Randy Dunlap <rdunlap@...radead.org>,
Masahiro Yamada <masahiroy@...nel.org>,
Michal Marek <michal.lkml@...kovi.net>,
linux-kbuild@...r.kernel.org, Jeff Dike <jdike@...toit.com>,
Richard Weinberger <richard@....at>,
Anton Ivanov <anton.ivanov@...bridgegreys.com>,
linux-um@...ts.infradead.org
Subject: [PATCH] uml: fix W=1 missing-include-dirs warnings
Currently when using "W=1" with UML builds, there are over 700 warnings
like so:
CC arch/um/drivers/stderr_console.o
cc1: warning: ./arch/um/include/uapi: No such file or directory [-Wmissing-include-dirs]
but arch/um/ does not have include/uapi/ at all, so don't
include arch/um/include/uapi/ in USERINCLUDE for UML.
Signed-off-by: Randy Dunlap <rdunlap@...radead.org>
Cc: Masahiro Yamada <masahiroy@...nel.org>
Cc: Michal Marek <michal.lkml@...kovi.net>
Cc: linux-kbuild@...r.kernel.org
Cc: Jeff Dike <jdike@...toit.com>
Cc: Richard Weinberger <richard@....at>
Cc: Anton Ivanov <anton.ivanov@...bridgegreys.com>
Cc: linux-um@...ts.infradead.org
---
Makefile | 10 ++++++++++
1 file changed, 10 insertions(+)
Option 2: change the setting of USERINCLUDE. This could alter
(a) build times and
(b) which header files get used: if there are multiple
header files named foobar.h in the $(USERINCLUDE)
subdirectories, this Option changes the order in which
they would be found.
- linux-next-20210413.orig/Makefile
+ linux-next-20210413/Makefile
@@ -501,13 +501,16 @@ LDFLAGS_vmlinux =
# Use USERINCLUDE when you must reference the UAPI directories only.
USERINCLUDE := \
- -I$(srctree)/arch/$(SRCARCH)/include/uapi \
-I$(objtree)/arch/$(SRCARCH)/include/generated/uapi \
-I$(srctree)/include/uapi \
-I$(objtree)/include/generated/uapi \
-include $(srctree)/include/linux/compiler-version.h \
-include $(srctree)/include/linux/kconfig.h
+ifneq ($(ARCH),um)
+USERINCLUDE += -I$(srctree)/arch/$(SRCARCH)/include/uapi
+endif
+
# Use LINUXINCLUDE when you must reference the include/ directory.
# Needed to be compatible with the O= option
LINUXINCLUDE := \
Option 3: modify scripts/Makefile.extrawarn not to set
-Wmissing-include-dirs for arch=um. I think that this is not
a good idea: it could cause valid problem reports not to be
reported.
Option 4: simply mkdir arch/um/include/uapi
That's what I did first, just as a test, and it works.
--- linux-next-20210413.orig/Makefile
+++ linux-next-20210413/Makefile
@@ -500,6 +500,15 @@ AFLAGS_KERNEL =
LDFLAGS_vmlinux =
# Use USERINCLUDE when you must reference the UAPI directories only.
+# Note: arch/um/ does not have an include/uapi/ subdir.
+ifeq ($(ARCH),um)
+USERINCLUDE := \
+ -I$(objtree)/arch/$(SRCARCH)/include/generated/uapi \
+ -I$(srctree)/include/uapi \
+ -I$(objtree)/include/generated/uapi \
+ -include $(srctree)/include/linux/compiler-version.h \
+ -include $(srctree)/include/linux/kconfig.h
+else
USERINCLUDE := \
-I$(srctree)/arch/$(SRCARCH)/include/uapi \
-I$(objtree)/arch/$(SRCARCH)/include/generated/uapi \
@@ -507,6 +516,7 @@ USERINCLUDE := \
-I$(objtree)/include/generated/uapi \
-include $(srctree)/include/linux/compiler-version.h \
-include $(srctree)/include/linux/kconfig.h
+endif
# Use LINUXINCLUDE when you must reference the include/ directory.
# Needed to be compatible with the O= option
Powered by blists - more mailing lists