bsd.eabi.mk revision 1.3 1 # $NetBSD: bsd.eabi.mk,v 1.3 2014/08/10 23:26:25 matt Exp $
2
3 .if !defined(MLIBDIR)
4
5 MLIBDIR= eabi
6
7 EARM_COMPAT_FLAGS= -mfloat-abi=soft
8 EARM_COMPAT_FLAGS+= -mabi=aapcs-linux
9 MKSOFTFLOAT=yes
10
11 .if ${MACHINE_ARCH} == "aarch64eb"
12 EARM_COMPAT_FLAGS+= -target armeb--netbsdelf-gnueabi
13 EARM_COMPAT_FLAGS+= -mcpu=cortex-a53
14 ARM_MACHINE_ARCH= earmv7eb
15 LDFLAGS+= -Wl,--be8
16 ARM_LD= -m armelfb_nbsd_eabi --be8
17 .elif ${MACHINE_ARCH} == "aarch64"
18 EARM_COMPAT_FLAGS+= -target arm--netbsdelf-gnueabi
19 EARM_COMPAT_FLAGS+= -mcpu=cortex-a53
20 ARM_MACHINE_ARCH= earmv7
21 ARM_LD= -m armelf_nbsd_eabi
22 .elif !empty(MACHINE_ARCH:M*eb)
23 EARM_COMPAT_FLAGS+= -target armeb--netbsdelf-gnueabi
24 ARM_MACHINE_ARCH= earmeb
25 ARM_LD= -m armelfb_nbsd_eabi
26 .else
27 EARM_COMPAT_FLAGS+= -target arm--netbsdelf-gnueabi
28 ARM_MACHINE_ARCH= earm
29 ARM_LD= -m armelf_nbsd_eabi
30 .endif
31
32 EARM_COMPAT_FLAGS+= -B ${TOOLDIR}/aarch64--netbsd/bin
33
34 LIBC_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
35 LIBGCC_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
36 LIBEXECINFO_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
37 LIBM_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
38 COMMON_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
39 KVM_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
40 PTHREAD_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
41 BFD_MACHINE_ARCH= earm
42 CSU_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
43 GOMP_MACHINE_ARCH= ${ARM_MACHINE_ARCH}
44
45 COMMON_MACHINE_CPU= arm
46 COMPAT_MACHINE_CPU= arm
47 CRYPTO_MACHINE_CPU= arm
48 CSU_MACHINE_CPU= arm
49 KVM_MACHINE_CPU= arm
50 LDELFSO_MACHINE_CPU= arm
51 LIBC_MACHINE_CPU= arm
52 PTHREAD_MACHINE_CPU= arm
53
54 .if defined(ACTIVE_CC)
55 EARM_COMPAT_FLAGS+= ${${ACTIVE_CC} == "gcc":?-Wa,-meabi=5:}
56 .endif
57
58 COPTS+= ${EARM_COMPAT_FLAGS}
59 CPUFLAGS+= ${EARM_COMPAT_FLAGS}
60 LDADD+= ${EARM_COMPAT_FLAGS}
61 LDFLAGS+= ${EARM_COMPAT_FLAGS}
62 MKDEPFLAGS+= ${EARM_COMPAT_FLAGS}
63
64 .include "${.PARSEDIR}/../../Makefile.compat"
65
66 .endif
67
68 .if empty(LD:M-m)
69 LD+= ${ARM_LD}
70 .endif
71