diff mbox

kbuild: Fix GNU make v3.80 compatibility

Message ID 612917f85f003cc05dbd3420ec718bc4@localhost (mailing list archive)
State New, archived
Headers show

Commit Message

Kevin Cernekee May 10, 2011, 10:47 p.m. UTC
According to Documentation/Changes, the kernel should be buildable with
GNU make 3.80+.  Commit 88d7be031f9f975bb3f50a0b5ef3796a671e7edf (kbuild:
Use a single clean rule for kernel and external modules) introduced the
"$(or" construct, which requires make 3.81.  This causes "make clean" to
malfunction when it is used with external modules.

Replace "$(or" with an equivalent "$(if" expression, to restore backward
compatibility.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Cc: stable@kernel.org
---
 Makefile |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Comments

Michal Marek May 11, 2011, 11:41 a.m. UTC | #1
On Tue, May 10, 2011 at 03:47:16PM -0700, Kevin Cernekee wrote:
> According to Documentation/Changes, the kernel should be buildable with
> GNU make 3.80+.  Commit 88d7be031f9f975bb3f50a0b5ef3796a671e7edf (kbuild:
> Use a single clean rule for kernel and external modules) introduced the
> "$(or" construct, which requires make 3.81.  This causes "make clean" to
> malfunction when it is used with external modules.
> 
> Replace "$(or" with an equivalent "$(if" expression, to restore backward
> compatibility.
> 
> Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
> Cc: stable@kernel.org

Pushed to kbuild-2.6.git#kbuild, thanks.

Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/Makefile b/Makefile
index 41ea6fb..d593b12 100644
--- a/Makefile
+++ b/Makefile
@@ -1374,7 +1374,7 @@  endif # KBUILD_EXTMOD
 clean: $(clean-dirs)
 	$(call cmd,rmdirs)
 	$(call cmd,rmfiles)
-	@find $(or $(KBUILD_EXTMOD), .) $(RCS_FIND_IGNORE) \
+	@find $(if $(KBUILD_EXTMOD), $(KBUILD_EXTMOD), .) $(RCS_FIND_IGNORE) \
 		\( -name '*.[oas]' -o -name '*.ko' -o -name '.*.cmd' \
 		-o -name '.*.d' -o -name '.*.tmp' -o -name '*.mod.c' \
 		-o -name '*.symtypes' -o -name 'modules.order' \