1# $FreeBSD: releng/10.2/lib/libc/arm/aeabi/Makefile.inc 273471 2014-10-22 13:50:38Z andrew $
2
3.PATH: ${.CURDIR}/arm/aeabi
4
5SRCS+=	aeabi_asm_double.S	\
6	aeabi_asm_float.S	\
7	aeabi_atexit.c		\
8	aeabi_double.c		\
9	aeabi_float.c		\
10	aeabi_unwind_cpp.c	\
11	aeabi_unwind_exidx.c
12.if ${MACHINE_ARCH:Marmv6*}
13SRCS+=	aeabi_vfp_double.S	\
14	aeabi_vfp_float.S
15.endif
16
17# Add the aeabi_mem* functions. While they live in compiler-rt they call into
18# libc. This causes issues when other parts of libc call these functions.
19# We work around this by including these functions in libc but mark them as
20# hidden so users of libc will not pick up these versions.
21.PATH: ${.CURDIR}/../../contrib/compiler-rt/lib/arm
22
23SRCS+=	aeabi_memcmp.S		\
24	aeabi_memcpy.S		\
25	aeabi_memmove.S		\
26	aeabi_memset.S
27
28# Mark the functions as hidden so they are not available outside of libc.
29CFLAGS.aeabi_memcmp.S=	-DVISIBILITY_HIDDEN
30CFLAGS.aeabi_memcpy.S=	-DVISIBILITY_HIDDEN
31CFLAGS.aeabi_memmove.S=	-DVISIBILITY_HIDDEN
32CFLAGS.aeabi_memset.S=	-DVISIBILITY_HIDDEN
33CFLAGS+=		${CFLAGS.${.IMPSRC:T}}
34
35
36SYM_MAPS+=${.CURDIR}/arm/aeabi/Symbol.map
37
38