xref: /freebsd/lib/libgcc_s/Makefile (revision e9ac41698b2f322d55ccf9da50a3596edb2c1800)
10eaded92SGlen BarberPACKAGE=	clibs
249c5eacbSEd MasteSHLIB_NAME=	libgcc_s.so.1
36430a5fdSEd MasteSHLIBDIR?=	/lib
449c5eacbSEd Maste
57bc797e3SAlex Richardson# Enabling UBSan triggers "undefined reference to vtable for __cxxabiv1::__function_type_info"
67bc797e3SAlex RichardsonMK_UBSAN:=	no
77bc797e3SAlex Richardson
8c8b5e3deSConrad Meyer.include <bsd.opts.mk>
9c8b5e3deSConrad Meyer
102ed1e385SEd MasteMK_SSP=		no
1149c5eacbSEd MasteWARNS?=	2
1249c5eacbSEd Maste
1349c5eacbSEd MasteLDFLAGS+=	-nodefaultlibs
142f21ec01SEd MasteLIBADD+=	c
15c8b5e3deSConrad Meyer
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
211fa29c42SMichal Meloun.else
221fa29c42SMichal MelounSYMBOL_MAPS+=	${.CURDIR}/SymbolDefault.map
23c8b5e3deSConrad Meyer.endif
2449c5eacbSEd Maste
2549c5eacbSEd Maste.include "../libcompiler_rt/Makefile.inc"
2649c5eacbSEd Maste.include "../libgcc_eh/Makefile.inc"
2749c5eacbSEd Maste
28b0a39ef0SEnji Cooper# gcc has incompatible internal declarations for __divtc3 and __multc3, but has
29b0a39ef0SEnji Cooper# no option to silence its warning, so make warnings non-fatal.
307fa2f2a6SAlex RichardsonMK_WERROR.gcc=	no
31b0a39ef0SEnji Cooper
32bff20752SEd MasteLIBCSRCDIR=	${SRCTOP}/lib/libc
33bff20752SEd MasteLIBMSRCDIR=	${SRCTOP}/lib/msun/src
34bff20752SEd MasteCFLAGS+=	-I${LIBCSRCDIR}/include -I${LIBCSRCDIR}/${MACHINE_CPUARCH}
35bff20752SEd MasteCFLAGS+=	-I${LIBMSRCDIR}
36bff20752SEd Maste.PATH:		${LIBMSRCDIR}
37bff20752SEd MasteSRCS+=		s_fabs.c
38bff20752SEd MasteSRCS+=		s_fabsf.c
39bff20752SEd MasteSRCS+=		s_fabsl.c
40bff20752SEd MasteSRCS+=		s_fmax.c
41bff20752SEd MasteSRCS+=		s_fmaxf.c
42bff20752SEd MasteSRCS+=		s_logb.c
43bff20752SEd MasteSRCS+=		s_logbf.c
44bff20752SEd MasteSRCS+=		s_scalbn.c
45bff20752SEd MasteSRCS+=		s_scalbnf.c
462c4bb7e3SJohn Baldwin
472c4bb7e3SJohn Baldwin# Don't include long double routines on architectures where long double
482c4bb7e3SJohn Baldwin# is the same size as double.
49*1ab9996fSJohn Baldwin.if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "powerpc"
502c4bb7e3SJohn BaldwinSRCS+=		s_fmaxl.c
512c4bb7e3SJohn BaldwinSRCS+=		s_logbl.c
52bff20752SEd MasteSRCS+=		s_scalbnl.c
532c4bb7e3SJohn Baldwin.endif
54bff20752SEd Maste
5549c5eacbSEd Maste.include <bsd.lib.mk>
56