mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	gcov: remove CONFIG_GCOV_FORMAT_AUTODETECT
CONFIG_GCOV_FORMAT_AUTODETECT compiles either gcc_3_4.c or gcc_4_7.c according to your GCC version. We can achieve the equivalent behavior by setting reasonable dependency with the knowledge of the compiler version. If GCC older than 4.7 is used, GCOV_FORMAT_3_4 is the default, but users are still allowed to select GCOV_FORMAT_4_7 in case the newer format is back-ported. On the other hand, If GCC 4.7 or newer is used, there is no reason to use GCOV_FORMAT_3_4, so it should be hidden. If you downgrade the compiler to GCC 4.7 or older, oldconfig/syncconfig will display a prompt for the choice because GCOV_FORMAT_3_4 becomes visible as a new symbol. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com> Reviewed-by: Kees Cook <keescook@chromium.org>
This commit is contained in:
		
							parent
							
								
									f3a53f7b57
								
							
						
					
					
						commit
						6a61b70b43
					
				
					 2 changed files with 5 additions and 14 deletions
				
			
		| 
						 | 
					@ -53,23 +53,16 @@ config GCOV_PROFILE_ALL
 | 
				
			||||||
choice
 | 
					choice
 | 
				
			||||||
	prompt "Specify GCOV format"
 | 
						prompt "Specify GCOV format"
 | 
				
			||||||
	depends on GCOV_KERNEL
 | 
						depends on GCOV_KERNEL
 | 
				
			||||||
	default GCOV_FORMAT_AUTODETECT
 | 
					 | 
				
			||||||
	---help---
 | 
						---help---
 | 
				
			||||||
	The gcov format is usually determined by the GCC version, but there are
 | 
						The gcov format is usually determined by the GCC version, and the
 | 
				
			||||||
 | 
						default is chosen according to your GCC version. However, there are
 | 
				
			||||||
	exceptions where format changes are integrated in lower-version GCCs.
 | 
						exceptions where format changes are integrated in lower-version GCCs.
 | 
				
			||||||
	In such a case use this option to adjust the format used in the kernel
 | 
						In such a case, change this option to adjust the format used in the
 | 
				
			||||||
	accordingly.
 | 
						kernel accordingly.
 | 
				
			||||||
 | 
					 | 
				
			||||||
	If unsure, choose "Autodetect".
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
config GCOV_FORMAT_AUTODETECT
 | 
					 | 
				
			||||||
	bool "Autodetect"
 | 
					 | 
				
			||||||
	---help---
 | 
					 | 
				
			||||||
	Select this option to use the format that corresponds to your GCC
 | 
					 | 
				
			||||||
	version.
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
config GCOV_FORMAT_3_4
 | 
					config GCOV_FORMAT_3_4
 | 
				
			||||||
	bool "GCC 3.4 format"
 | 
						bool "GCC 3.4 format"
 | 
				
			||||||
 | 
						depends on CC_IS_GCC && GCC_VERSION < 40700
 | 
				
			||||||
	---help---
 | 
						---help---
 | 
				
			||||||
	Select this option to use the format defined by GCC 3.4.
 | 
						Select this option to use the format defined by GCC 3.4.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,5 +4,3 @@ ccflags-y := -DSRCTREE='"$(srctree)"' -DOBJTREE='"$(objtree)"'
 | 
				
			||||||
obj-y := base.o fs.o
 | 
					obj-y := base.o fs.o
 | 
				
			||||||
obj-$(CONFIG_GCOV_FORMAT_3_4) += gcc_3_4.o
 | 
					obj-$(CONFIG_GCOV_FORMAT_3_4) += gcc_3_4.o
 | 
				
			||||||
obj-$(CONFIG_GCOV_FORMAT_4_7) += gcc_4_7.o
 | 
					obj-$(CONFIG_GCOV_FORMAT_4_7) += gcc_4_7.o
 | 
				
			||||||
obj-$(CONFIG_GCOV_FORMAT_AUTODETECT) += $(call cc-ifversion, -lt, 0407, \
 | 
					 | 
				
			||||||
							gcc_3_4.o, gcc_4_7.o)
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue