10 CFLAGS+=${PICFLAG} -fvisibility=hidden -DVISIBILITY_HIDDEN
11 CFLAGS+=-I${.CURDIR}/../../contrib/libcxxrt
13 .if ${MACHINE_CPUARCH} == "amd64"
16 CRTARCH=${MACHINE_CPUARCH}
19 CRTSRC=${.CURDIR}/../../contrib/compiler-rt/lib/builtins
21 .PATH: ${CRTSRC}/${CRTARCH} ${CRTSRC}
51 enable_execute_stack \
139 # 128-bit quad precision long double support, only used on arm64
140 .if ${MACHINE_CPUARCH} == "aarch64"
159 # These are already shipped by libc.a on arm and mips
160 .if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
177 .if ${MACHINE_CPUARCH} != "arm"
182 .if ${MACHINE_CPUARCH} != "mips"
189 # FreeBSD-specific atomic intrinsics.
190 .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "armv6"
191 .PATH: ${.CURDIR}/../../sys/arm/arm
194 CFLAGS+= -DEMIT_SYNC_ATOMICS
195 .elif ${MACHINE_CPUARCH} == "mips"
196 .PATH: ${.CURDIR}/../../sys/mips/mips
202 .if ${MACHINE_ARCH:Marmv6*} && (!defined(CPUTYPE) || ${CPUTYPE:M*soft*} == "") && \
203 exists(${CRTSRC}/${CRTARCH}/${file}vfp.S)
205 . elif exists(${CRTSRC}/${CRTARCH}/${file}.S)
212 .if ${MACHINE_CPUARCH} == "arm"
213 SRCS+= aeabi_div0.c \
231 .if ${MK_INSTALLLIB} != "no"
232 SYMLINKS+=libcompiler_rt.a ${LIBDIR}/libgcc.a
234 .if ${MK_PROFILE} != "no"
235 SYMLINKS+=libcompiler_rt_p.a ${LIBDIR}/libgcc_p.a
238 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
239 ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_ARCH:Marmv6*}
240 AFLAGS+=--noexecstack
241 ACFLAGS+=-Wa,--noexecstack
245 .include <bsd.lib.mk>