xref: /freebsd/lib/libgcc_s/Makefile (revision 1fa29c42bb742a5f31926b7a4eb61b6164734d00)
149c5eacbSEd Maste# $FreeBSD$
249c5eacbSEd Maste
30eaded92SGlen BarberPACKAGE=	clibs
449c5eacbSEd MasteSHLIB_NAME=	libgcc_s.so.1
56430a5fdSEd MasteSHLIBDIR?=	/lib
649c5eacbSEd Maste
7c8b5e3deSConrad Meyer.include <bsd.opts.mk>
8c8b5e3deSConrad Meyer
92ed1e385SEd MasteMK_SSP=		no
1049c5eacbSEd MasteWARNS?=	2
1149c5eacbSEd Maste
1249c5eacbSEd MasteLDFLAGS+=	-nodefaultlibs
132f21ec01SEd MasteLIBADD+=	c
14c8b5e3deSConrad Meyer
15c8b5e3deSConrad Meyer.if ${MK_SYMVER} == "yes"
16c8b5e3deSConrad MeyerVERSION_DEF=	${.CURDIR}/Versions.def
17c8b5e3deSConrad MeyerSYMBOL_MAPS=	${.CURDIR}/Symbol.map
18c8b5e3deSConrad Meyer# Export ARM AEABI unwind routines needed by libc and libthr.
19c8b5e3deSConrad Meyer.if exists(${.CURDIR}/${MACHINE_CPUARCH}/Symbol.map)
20c8b5e3deSConrad MeyerSYMBOL_MAPS+=	${.CURDIR}/${MACHINE_CPUARCH}/Symbol.map
21*1fa29c42SMichal Meloun.else
22*1fa29c42SMichal MelounSYMBOL_MAPS+=	${.CURDIR}/SymbolDefault.map
23c8b5e3deSConrad Meyer.endif
24c8b5e3deSConrad Meyer.endif
2549c5eacbSEd Maste
2649c5eacbSEd Maste.include "../libcompiler_rt/Makefile.inc"
2749c5eacbSEd Maste.include "../libgcc_eh/Makefile.inc"
2849c5eacbSEd Maste
29b0a39ef0SEnji Cooper# gcc has incompatible internal declarations for __divtc3 and __multc3, but has
30b0a39ef0SEnji Cooper# no option to silence its warning, so make warnings non-fatal.
31b0a39ef0SEnji CooperNO_WERROR.gcc=
32b0a39ef0SEnji Cooper
33bff20752SEd MasteLIBCSRCDIR=	${SRCTOP}/lib/libc
34bff20752SEd MasteLIBMSRCDIR=	${SRCTOP}/lib/msun/src
35bff20752SEd MasteCFLAGS+=	-I${LIBCSRCDIR}/include -I${LIBCSRCDIR}/${MACHINE_CPUARCH}
36bff20752SEd MasteCFLAGS+=	-I${LIBMSRCDIR}
37bff20752SEd Maste.PATH:		${LIBMSRCDIR}
38bff20752SEd MasteSRCS+=		s_fabs.c
39bff20752SEd MasteSRCS+=		s_fabsf.c
40bff20752SEd MasteSRCS+=		s_fabsl.c
41bff20752SEd MasteSRCS+=		s_fmax.c
42bff20752SEd MasteSRCS+=		s_fmaxf.c
43bff20752SEd MasteSRCS+=		s_logb.c
44bff20752SEd MasteSRCS+=		s_logbf.c
45bff20752SEd MasteSRCS+=		s_scalbn.c
46bff20752SEd MasteSRCS+=		s_scalbnf.c
472c4bb7e3SJohn Baldwin
482c4bb7e3SJohn Baldwin# Don't include long double routines on architectures where long double
492c4bb7e3SJohn Baldwin# is the same size as double.
509de4d0b1SGlen Barber.if ${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "arm" && \
512c4bb7e3SJohn Baldwin    ${MACHINE_CPUARCH} != "powerpc"
522c4bb7e3SJohn BaldwinSRCS+=		s_fmaxl.c
532c4bb7e3SJohn BaldwinSRCS+=		s_logbl.c
54bff20752SEd MasteSRCS+=		s_scalbnl.c
552c4bb7e3SJohn Baldwin.endif
56bff20752SEd Maste
5749c5eacbSEd Maste.include <bsd.lib.mk>
58