1ifeq ($(subdir),misc) 2sysdep_headers += regdef.h fpregdef.h sys/regdef.h sys/fpregdef.h \ 3 sys/asm.h sgidefs.h 4endif 5 6ifeq ($(subdir),setjmp) 7sysdep_routines += setjmp_aux 8endif 9 10ifeq ($(subdir),rt) 11librt-sysdep_routines += rt-sysdep 12librt-shared-only-routines += rt-sysdep 13endif 14 15ifeq ($(subdir),csu) 16CPPFLAGS-crti.S += $(pic-ccflag) 17CPPFLAGS-crtn.S += $(pic-ccflag) 18endif 19 20ASFLAGS-.os += $(pic-ccflag) 21# libc.a and libc_p.a must be compiled with -fPIE/-fpie for static PIE. 22ASFLAGS-.o += $(pie-default) 23ASFLAGS-.op += $(pie-default) 24 25ifeq ($(subdir),elf) 26ifneq ($(o32-fpabi),) 27tests += tst-abi-interlink 28 29fpabi-modules-names = 30fpabi_list = 31ifneq (,$(filter $(o32-fpabi),32 xx xxo)) 32fpabi-modules-names += tst-abi-fp32mod 33CFLAGS-tst-abi-fp32mod.c += -mfp32 34endif 35ifneq (,$(filter $(o32-fpabi),xx)) 36fpabi-modules-names += tst-abi-fpxxmod 37CFLAGS-tst-abi-fpxxmod.c += -mfpxx -mno-odd-spreg 38endif 39ifneq (,$(filter $(o32-fpabi),xx xxo)) 40ifeq ($(has-modd-spreg),yes) 41fpabi-modules-names += tst-abi-fpxxomod 42CFLAGS-tst-abi-fpxxomod.c += -mfpxx -modd-spreg 43endif 44endif 45ifneq (,$(filter $(o32-fpabi),xx 64a)) 46ifeq ($(has-mpf64),yes) 47fpabi-modules-names += tst-abi-fp64amod 48CFLAGS-tst-abi-fp64amod.c += -mfp64 -mno-odd-spreg 49endif 50endif 51ifneq (,$(filter $(o32-fpabi),xx xxo 64a 64)) 52ifeq ($(has-mpf64)-$(has-modd-spreg),yes-yes) 53fpabi-modules-names += tst-abi-fp64mod 54CFLAGS-tst-abi-fp64mod.c += -mfp64 -modd-spreg 55endif 56endif 57modules-names += $(fpabi-modules-names) 58 59comma:=, 60empty:= 61space:=$(empty) $(empty) 62fpabi_list=$(subst $(space),$(comma),$(patsubst tst-abi-%mod,o_%,\ 63 $(fpabi-modules-names))) 64CPPFLAGS-tst-abi-interlink.c += -DFPABI_LIST=$(fpabi_list) 65CPPFLAGS-tst-abi-interlink.c += -DFPABI_COUNT=$(words $(fpabi-modules-names)) 66CPPFLAGS-tst-abi-interlink.c += -DFPABI_NATIVE=o_fp$(o32-fpabi) 67$(objpfx)tst-abi-interlink.out: $(patsubst %,$(objpfx)%.so,\ 68 $(fpabi-modules-names)) 69endif 70 71ifeq ($(mips-mode-switch),yes) 72ifeq ($(o32-fpabi),xx) 73tests += tst-mode-switch-1 tst-mode-switch-2 tst-mode-switch-3 74endif 75endif 76endif 77 78ifeq ($(subdir),elf) 79tests += tst-undefined-weak 80modules-names += tst-undefined-weak-lib 81 82$(objpfx)tst-undefined-weak: $(objpfx)tst-undefined-weak-lib.so 83endif 84