summaryrefslogtreecommitdiff
path: root/lib/libgcc_s/Makefile
blob: f245069aee4017563a88cd5e2f935b96dd93ed81 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# $FreeBSD$

PACKAGE=	clibs
SHLIB_NAME=	libgcc_s.so.1
SHLIBDIR?=	/lib

.include <bsd.opts.mk>

MK_SSP=		no
WARNS?=	2

LDFLAGS+=	-nodefaultlibs
LIBADD+=	c

VERSION_DEF=	${.CURDIR}/Versions.def
SYMBOL_MAPS=	${.CURDIR}/Symbol.map
# Export ARM AEABI unwind routines needed by libc and libthr.
.if exists(${.CURDIR}/${MACHINE_CPUARCH}/Symbol.map)
SYMBOL_MAPS+=	${.CURDIR}/${MACHINE_CPUARCH}/Symbol.map
.else
SYMBOL_MAPS+=	${.CURDIR}/SymbolDefault.map
.endif

.include "../libcompiler_rt/Makefile.inc"
.include "../libgcc_eh/Makefile.inc"

# gcc has incompatible internal declarations for __divtc3 and __multc3, but has
# no option to silence its warning, so make warnings non-fatal.
NO_WERROR.gcc=

LIBCSRCDIR=	${SRCTOP}/lib/libc
LIBMSRCDIR=	${SRCTOP}/lib/msun/src
CFLAGS+=	-I${LIBCSRCDIR}/include -I${LIBCSRCDIR}/${MACHINE_CPUARCH}
CFLAGS+=	-I${LIBMSRCDIR}
.PATH:		${LIBMSRCDIR}
SRCS+=		s_fabs.c
SRCS+=		s_fabsf.c
SRCS+=		s_fabsl.c
SRCS+=		s_fmax.c
SRCS+=		s_fmaxf.c
SRCS+=		s_logb.c
SRCS+=		s_logbf.c
SRCS+=		s_scalbn.c
SRCS+=		s_scalbnf.c

# Don't include long double routines on architectures where long double
# is the same size as double.
.if ${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "arm" && \
    ${MACHINE_CPUARCH} != "powerpc"
SRCS+=		s_fmaxl.c
SRCS+=		s_logbl.c
SRCS+=		s_scalbnl.c
.endif

.include <bsd.lib.mk>