|
@@ -903,14 +903,24 @@ prepare: prepare0
|
|
|
|
|
|
export CPPFLAGS_vmlinux.lds += -P -C -U$(ARCH)
|
|
|
|
|
|
-# FIXME: The asm symlink changes when $(ARCH) changes. That's
|
|
|
-# hard to detect, but I suppose "make mrproper" is a good idea
|
|
|
-# before switching between archs anyway.
|
|
|
-
|
|
|
-include/asm:
|
|
|
- @echo ' SYMLINK $@ -> include/asm-$(SRCARCH)'
|
|
|
- $(Q)if [ ! -d include ]; then mkdir -p include; fi;
|
|
|
- @ln -fsn asm-$(SRCARCH) $@
|
|
|
+# The asm symlink changes when $(ARCH) changes.
|
|
|
+# Detect this and ask user to run make mrproper
|
|
|
+
|
|
|
+include/asm: FORCE
|
|
|
+ $(Q)set -e; asmlink=`readlink include/asm | cut -d '-' -f 2`; \
|
|
|
+ if [ -L include/asm ]; then \
|
|
|
+ if [ "$$asmlink" != "$(SRCARCH)" ]; then \
|
|
|
+ echo "ERROR: the symlink $@ points to asm-$$asmlink but asm-$(SRCARCH) was expected"; \
|
|
|
+ echo " set ARCH or save .config and run 'make mrproper' to fix it"; \
|
|
|
+ exit 1; \
|
|
|
+ fi; \
|
|
|
+ else \
|
|
|
+ echo ' SYMLINK $@ -> include/asm-$(SRCARCH)'; \
|
|
|
+ if [ ! -d include ]; then \
|
|
|
+ mkdir -p include; \
|
|
|
+ fi; \
|
|
|
+ ln -fsn asm-$(SRCARCH) $@; \
|
|
|
+ fi
|
|
|
|
|
|
# Generate some files
|
|
|
# ---------------------------------------------------------------------------
|