forked from mirrors/linux
		
	 1d351f1894
			
		
	
	
		1d351f1894
		
	
	
	
	
		
			
			It causes build failures with unusual CC/HOSTCC combinations. Quoting https://lkml.kernel.org/r/A222B1E6-69B8-4085-AD1B-27BDB72CA971@goldelico.com: HOSTCC scripts/mod/modpost.o - due to target missing In file included from include/linux/string.h:5, from scripts/mod/../../include/linux/license.h:5, from scripts/mod/modpost.c:24: include/linux/compiler.h:246:10: fatal error: asm/rwonce.h: No such file or directory 246 | #include <asm/rwonce.h> | ^~~~~~~~~~~~~~ compilation terminated. ... The problem is that HOSTCC is not necessarily the same compiler or even architecture as CC and pulling in <linux/compiler.h> or <asm/rwonce.h> files indirectly isn't a good idea then. My toolchain is providing HOSTCC = gcc (MacPorts) and CC = arm-linux-gnueabihf (built from gcc source) and all running on Darwin. If I change the include to <string.h> I can then "HOSTCC scripts/mod/modpost.c" but then it fails for "CC kernel/module/main.c" not finding <string.h>: CC kernel/module/main.o - due to target missing In file included from kernel/module/main.c:43:0: ./include/linux/license.h:5:20: fatal error: string.h: No such file or directory #include <string.h> ^ compilation terminated. Reported-by: "H. Nikolaus Schaller" <hns@goldelico.com> Cc: Sam James <sam@gentoo.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
		
			
				
	
	
		
			15 lines
		
	
	
	
		
			418 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
	
		
			418 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0-only */
 | |
| #ifndef __LICENSE_H
 | |
| #define __LICENSE_H
 | |
| 
 | |
| static inline int license_is_gpl_compatible(const char *license)
 | |
| {
 | |
| 	return (strcmp(license, "GPL") == 0
 | |
| 		|| strcmp(license, "GPL v2") == 0
 | |
| 		|| strcmp(license, "GPL and additional rights") == 0
 | |
| 		|| strcmp(license, "Dual BSD/GPL") == 0
 | |
| 		|| strcmp(license, "Dual MIT/GPL") == 0
 | |
| 		|| strcmp(license, "Dual MPL/GPL") == 0);
 | |
| }
 | |
| 
 | |
| #endif
 |