mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	kbuild, LLVMLinux: Add -Werror to cc-option to support clang
Clang will warn about unknown warnings but will not return false
unless -Werror is set. GCC will return false if an unknown
warning is passed.
Adding -Werror make both compiler behave the same.
[arnd: it turns out we need the same patch for testing whether -ffunction-sections
       works right with gcc. I've build tested extensively with this patch
       applied, so let's just merge this one now.]
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Signed-off-by: Behan Webster <behanw@converseincode.com>
Reviewed-by: Jan-Simon Möller <dl9pf@gmx.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
			
			
This commit is contained in:
		
							parent
							
								
									c834f0e8a8
								
							
						
					
					
						commit
						c3f0d0bc5b
					
				
					 1 changed files with 3 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -116,12 +116,12 @@ CC_OPTION_CFLAGS = $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS))
 | 
			
		|||
# Usage: cflags-y += $(call cc-option,-march=winchip-c6,-march=i586)
 | 
			
		||||
 | 
			
		||||
cc-option = $(call try-run,\
 | 
			
		||||
	$(CC) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",$(1),$(2))
 | 
			
		||||
	$(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",$(1),$(2))
 | 
			
		||||
 | 
			
		||||
# cc-option-yn
 | 
			
		||||
# Usage: flag := $(call cc-option-yn,-march=winchip-c6)
 | 
			
		||||
cc-option-yn = $(call try-run,\
 | 
			
		||||
	$(CC) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",y,n)
 | 
			
		||||
	$(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",y,n)
 | 
			
		||||
 | 
			
		||||
# cc-option-align
 | 
			
		||||
# Prefix align with either -falign or -malign
 | 
			
		||||
| 
						 | 
				
			
			@ -131,7 +131,7 @@ cc-option-align = $(subst -functions=0,,\
 | 
			
		|||
# cc-disable-warning
 | 
			
		||||
# Usage: cflags-y += $(call cc-disable-warning,unused-but-set-variable)
 | 
			
		||||
cc-disable-warning = $(call try-run,\
 | 
			
		||||
	$(CC) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -W$(strip $(1)) -c -x c /dev/null -o "$$TMP",-Wno-$(strip $(1)))
 | 
			
		||||
	$(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -W$(strip $(1)) -c -x c /dev/null -o "$$TMP",-Wno-$(strip $(1)))
 | 
			
		||||
 | 
			
		||||
# cc-name
 | 
			
		||||
# Expands to either gcc or clang
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue