mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
![Masahiro Yamada](/assets/img/avatar_default.png)
We maintain .gitignore and Makefiles so build artifacts are properly
ignored by Git, and cleaned up by 'make clean'. However, the code is
always changing; generated files are often moved to another directory,
or removed when they become unnecessary. Such garbage files tend to be
left over in the source tree because people usually git-pull without
cleaning the tree.
This is not only the noise for 'git status', but also a build issue
in some cases.
One solution is to remove a stale file like commit 223c24a7db
("kbuild:
Automatically remove stale <linux/version.h> file") did. Such workaround
should be removed after a while, but we forget about that if we scatter
the workaround code in random places.
So, this commit adds a new script to collect cleanings of stale files.
As a start point, move the code in arch/arm/boot/compressed/Makefile
into this script.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
31 lines
1.3 KiB
Bash
Executable file
31 lines
1.3 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
# When you move, remove or rename generated files, you probably also update
|
|
# .gitignore and cleaning rules in the Makefile. This is the right thing
|
|
# to do. However, people usually do 'git pull', 'git bisect', etc. without
|
|
# running 'make clean'. Then, the stale generated files are left over, often
|
|
# causing build issues.
|
|
#
|
|
# Also, 'git status' shows such stale build artifacts as untracked files.
|
|
# What is worse, some people send a wrong patch to get them back to .gitignore
|
|
# without checking the commit history.
|
|
#
|
|
# So, when you (re)move generated files, please move the cleaning rules from
|
|
# the Makefile to this script. This is run before Kbuild starts building
|
|
# anything, so people will not be annoyed by such garbage files.
|
|
#
|
|
# This script is not intended to grow endlessly. Rather, it is a temporary scrap
|
|
# yard. Stale files stay in this file for a while (for some release cycles?),
|
|
# then will be really dead and removed from the code base entirely.
|
|
|
|
# These were previously generated source files. When you are building the kernel
|
|
# with O=, make sure to remove the stale files in the output tree. Otherwise,
|
|
# the build system wrongly compiles the stale ones.
|
|
if [ -n "${building_out_of_srctree}" ]; then
|
|
for f in fdt_rw.c fdt_ro.c fdt_wip.c fdt.c
|
|
do
|
|
rm -f arch/arm/boot/compressed/${f}
|
|
done
|
|
fi
|