diff options
| author | Sam Ravnborg <sam@ravnborg.org> | 2008-10-25 16:58:23 -0400 |
|---|---|---|
| committer | Sam Ravnborg <sam@ravnborg.org> | 2008-10-29 17:02:07 -0400 |
| commit | dcc2da1a9693807096e9ac5137b499a829c51268 (patch) | |
| tree | 996353cc1fc108d593381cb6c2d1e5afe985ec49 | |
| parent | 46dca86cb93db80992a45e4b55737ff2b2f61cd0 (diff) | |
kbuild: improve check-symlink
o if include/asm point to a nonexisting directory remove the asm symlink
o if include/asm is a directory error out
This fixes a situation where one could be left with a symlink
to asm-x86 but that directory no longer exist and thus the build
would error out.
include/asm may be a directory if the kernel tree has been copied
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
| -rw-r--r-- | Makefile | 5 |
1 files changed, 5 insertions, 0 deletions
| @@ -961,6 +961,7 @@ export CPPFLAGS_vmlinux.lds += -P -C -U$(ARCH) | |||
| 961 | 961 | ||
| 962 | # The asm symlink changes when $(ARCH) changes. | 962 | # The asm symlink changes when $(ARCH) changes. |
| 963 | # Detect this and ask user to run make mrproper | 963 | # Detect this and ask user to run make mrproper |
| 964 | # If asm is a stale symlink (point to dir that does not exist) remove it | ||
| 964 | define check-symlink | 965 | define check-symlink |
| 965 | set -e; \ | 966 | set -e; \ |
| 966 | if [ -L include/asm ]; then \ | 967 | if [ -L include/asm ]; then \ |
| @@ -970,6 +971,10 @@ define check-symlink | |||
| 970 | echo " set ARCH or save .config and run 'make mrproper' to fix it"; \ | 971 | echo " set ARCH or save .config and run 'make mrproper' to fix it"; \ |
| 971 | exit 1; \ | 972 | exit 1; \ |
| 972 | fi; \ | 973 | fi; \ |
| 974 | test -e $$asmlink || rm include/asm; \ | ||
| 975 | elif [ -d include/asm ]; then \ | ||
| 976 | echo "ERROR: $@ is a directory but a symlink was expected";\ | ||
| 977 | exit 1; \ | ||
| 973 | fi | 978 | fi |
| 974 | endef | 979 | endef |
| 975 | 980 | ||
