kbuild: install all headers when arch is changed
We see some header files that are selected dependent on
the actual architecture so force a reinstallation
of all header files when the arch changes.
This slows down "make headers_check_all" but then
we better reflect reality.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
diff --git a/scripts/Makefile.headersinst b/scripts/Makefile.headersinst
index be2b70c4..612dc13 100644
--- a/scripts/Makefile.headersinst
+++ b/scripts/Makefile.headersinst
@@ -43,9 +43,10 @@
quiet_cmd_install = INSTALL $(printdir) ($(words $(all-files))\
file$(if $(word 2, $(all-files)),s))
- cmd_install = $(PERL) $< $(srctree)/$(obj) $(install) $(header-y); \
- $(PERL) $< $(objtree)/$(obj) $(install) $(objhdr-y); \
- touch $@
+ cmd_install = \
+ $(PERL) $< $(srctree)/$(obj) $(install) $(SRCARCH) $(header-y); \
+ $(PERL) $< $(objtree)/$(obj) $(install) $(SRCARCH) $(objhdr-y); \
+ touch $@
quiet_cmd_remove = REMOVE $(unwanted)
cmd_remove = rm -f $(unwanted-file)
diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl
index f0ff9a3..68591cd 100644
--- a/scripts/headers_install.pl
+++ b/scripts/headers_install.pl
@@ -3,10 +3,13 @@
# headers_install prepare the listed header files for use in
# user space and copy the files to their destination.
#
-# Usage: headers_install.pl odir installdir [files...]
-# odir: dir to open files
-# install: dir to install the files
-# files: list of files to check
+# Usage: headers_install.pl readdir installdir arch [files...]
+# readdir: dir to open files
+# installdir: dir to install the files
+# arch: current architecture
+# arch is used to force a reinstallation when the arch
+# changes because kbuild then detect a command line change.
+# files: list of files to check
#
# Step in preparation for users space:
# 1) Drop all use of compiler.h definitions
@@ -16,7 +19,7 @@
use strict;
use warnings;
-my ($readdir, $installdir, @files) = @ARGV;
+my ($readdir, $installdir, $arch, @files) = @ARGV;
my $unifdef = "scripts/unifdef -U__KERNEL__";