mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-10-31 16:54:21 +00:00 
			
		
		
		
	fixdep: do not parse *.rlib, *.rmeta, *.so
fixdep is designed only for parsing text files. read_file() appends
a terminating null byte ('\0') and parse_config_file() calls strstr()
to search for CONFIG options.
rustc outputs *.rlib, *.rmeta, *.so to dep-info. fixdep needs them in
the dependency, but there is no point in parsing such binary files.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Miguel Ojeda <ojeda@kernel.org>
Tested-by: Miguel Ojeda <ojeda@kernel.org>
			
			
This commit is contained in:
		
							parent
							
								
									faa91c472b
								
							
						
					
					
						commit
						93c656de8d
					
				
					 1 changed files with 10 additions and 1 deletions
				
			
		|  | @ -250,6 +250,15 @@ static int is_ignored_file(const char *s, int len) | ||||||
| 	       str_ends_with(s, len, "include/generated/autoksyms.h"); | 	       str_ends_with(s, len, "include/generated/autoksyms.h"); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | /* Do not parse these files */ | ||||||
|  | static int is_no_parse_file(const char *s, int len) | ||||||
|  | { | ||||||
|  | 	/* rustc may list binary files in dep-info */ | ||||||
|  | 	return str_ends_with(s, len, ".rlib") || | ||||||
|  | 	       str_ends_with(s, len, ".rmeta") || | ||||||
|  | 	       str_ends_with(s, len, ".so"); | ||||||
|  | } | ||||||
|  | 
 | ||||||
| /*
 | /*
 | ||||||
|  * Important: The below generated source_foo.o and deps_foo.o variable |  * Important: The below generated source_foo.o and deps_foo.o variable | ||||||
|  * assignments are parsed not only by make, but also by the rather simple |  * assignments are parsed not only by make, but also by the rather simple | ||||||
|  | @ -382,7 +391,7 @@ static void parse_dep_file(char *p, const char *target) | ||||||
| 			need_parse = true; | 			need_parse = true; | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if (need_parse) { | 		if (need_parse && !is_no_parse_file(p, q - p)) { | ||||||
| 			void *buf; | 			void *buf; | ||||||
| 
 | 
 | ||||||
| 			buf = read_file(p); | 			buf = read_file(p); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Masahiro Yamada
						Masahiro Yamada