building defaults to off until clang is updated. current clang does not handle -shared, necessary to change the ld invocation to build shared libraries properly. a new clang should be installed and MKPIC defaults to no unless the newer clang is detected. changes: . mainly small imports of a Makefile or two and small fixes (turning things back on that were turned off in Makefiles) . e.g.: dynamic librefuse now depends on dynamic libpuffs, so libpuffs has to be built dynamically too and a make dependency barrier is needed in lib/Makefile . all library objects now have a PIC (for .so) and non-PIC version, so everything is built twice. . generate PIC versions of the compat (un-RENAMEd) jump files, include function type annotation in generated assembly . build progs with -static by default for now . also build ld.elf_so . also import NetBSD ldd
		
			
				
	
	
		
			21 lines
		
	
	
		
			636 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			636 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
${ASM}:
 | 
						|
	${_MKTARGET_CREATE}
 | 
						|
	printf '/* MINIX3 */							\n\
 | 
						|
/* 										\n\
 | 
						|
* Compatibility jump table for renamed symbols. 				\n\
 | 
						|
*										\n\
 | 
						|
* DO NOT EDIT: this file is automatically generated.				\n\
 | 
						|
*/										\n\
 | 
						|
#include <machine/asm.h>							\n\
 | 
						|
.global ${.PREFIX:S/^compat__//:C/([0-9]{2})$//};				\n\
 | 
						|
.global ${.PREFIX:S/^compat//};							\n\
 | 
						|
.type ${.PREFIX:S/^compat__//:C/([0-9]{2})$//},@function			\n\
 | 
						|
${.PREFIX:S/^compat__//:C/([0-9]{2})$//}:					\n\
 | 
						|
#ifdef PIC									\n\
 | 
						|
jmpl *PIC_PLT(${.PREFIX:S/^compat//})						\n\
 | 
						|
#else										\n\
 | 
						|
jmp ${.PREFIX:S/^compat//}							\n\
 | 
						|
#endif										\n\
 | 
						|
\n ' >${.TARGET}
 | 
						|
 |