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