9 CFLAGS+=${PICFLAG} -fvisibility=hidden -DVISIBILITY_HIDDEN
11 .if ${MACHINE_CPUARCH} == "amd64"
14 CRTARCH=${MACHINE_CPUARCH}
17 CRTSRC=${.CURDIR}/../../contrib/compiler-rt/lib
19 .PATH: ${CRTSRC}/${CRTARCH} ${CRTSRC}
49 enable_execute_stack \
123 # Avoid using SSE2 instructions on i386, if unsupported.
124 .if ${MACHINE_CPUARCH} == "i386" && empty(MACHINE_CPU:Msse2)
140 # These are already shipped by libc.a on arm and mips
141 .if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
162 # FreeBSD-specific atomic intrinsics.
163 .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "mips"
164 SRCF+= __sync_fetch_and_add_4 \
165 __sync_fetch_and_and_4 \
166 __sync_fetch_and_or_4 \
167 __sync_fetch_and_sub_4 \
168 __sync_fetch_and_xor_4 \
169 __sync_lock_test_and_set_4 \
170 __sync_val_compare_and_swap_4
172 .if ${MACHINE_ARCH:Mmips64*} != ""
173 SRCF+= __sync_fetch_and_add_8 \
174 __sync_fetch_and_and_8 \
175 __sync_fetch_and_or_8 \
176 __sync_fetch_and_sub_8 \
177 __sync_fetch_and_xor_8 \
178 __sync_lock_test_and_set_8 \
179 __sync_val_compare_and_swap_8
183 . if ${MACHINE_CPUARCH} != "arm" && exists(${CRTSRC}/${CRTARCH}/${file}.S)
190 .if ${MACHINE_CPUARCH} != "mips"
191 . if ${MK_INSTALLLIB} != "no"
192 SYMLINKS+=libcompiler_rt.a ${LIBDIR}/libgcc.a
194 . if ${MK_PROFILE} != "no"
195 SYMLINKS+=libcompiler_rt_p.a ${LIBDIR}/libgcc_p.a
199 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
200 ${MACHINE_CPUARCH} == "powerpc"
201 AFLAGS+=--noexecstack
202 ACFLAGS+=-Wa,--noexecstack
206 .include <bsd.lib.mk>