summaryrefslogtreecommitdiff
path: root/external/gpl3/gcc/lib/libgcc/Makefile.wrapper
blob: 05bb17f51818bd503fa857f482044f355f94a089 (plain)
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
56
57
58
59
60
61
62
# $NetBSD: Makefile.wrapper,v 1.1 2011/06/21 06:02:25 mrg Exp $

#
# libgcc function wrapper
#

.if !empty(SRCS:M*.*)
${SRCS}: ${.CURDIR}/Makefile
	${_MKTARGET_CREATE}
	{	for i in ${_CPPFLAGS.${.TARGET}:C|-D||}; do \
			printf "#define "; echo $$i | sed -e 's,=, ,g'; \
		done; \
		printf '#include <tmplsrc_${SRCS.${.TARGET}:C|/|_|g}>\n'; \
	} >${.TARGET}

DPSRCS+=	${SRCS}
CLEANFILES+=	${SRCS}
.else
.undef LIB
.endif

#
# libgcc functions that are built in a single file
#

.if !empty(TMPLSRCS:M*)
${TMPLSRCS:C|^|tmplsrc_|}: ${.CURDIR}/Makefile
	${_MKTARGET_CREATE}
	printf '#include <${.TARGET:C|^tmplsrc_||}>\n' >${.TARGET}

${SRCS}:	${TMPLSRCS:C|^|tmplsrc_|}
DPSRCS+=	${TMPLSRCS:C|^|tmplsrc_|}
CLEANFILES+=	${TMPLSRCS:C|^|tmplsrc_|}
.endif

#
# soft float functions
#

.if !empty(TMPLFPSRCS:M*)
${TMPLFPSRCS:C|^|tmplsrc_|}: ${.CURDIR}/Makefile
	${_MKTARGET_CREATE}
	printf '#include "${GCCARCHLIBGCC}/${.TARGET:C|^tmplsrc_||}"\n' >${.TARGET}

${SRCS}:	${TMPLFPSRCS:C|^|tmplsrc_|}
DPSRCS+=	${TMPLFPSRCS:C|^|tmplsrc_|}
CLEANFILES+=	${TMPLFPSRCS:C|^|tmplsrc_|}
.endif

#
# functions written in an asm file
#

.if !empty(TMPLASMSRCS:M*.*)
${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}: ${.CURDIR}/Makefile
	${_MKTARGET_CREATE}
	printf '#include <${G_LIB1ASMSRC}>\n' >${.TARGET}

${SRCS}:	${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}
DPSRCS+=	${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}
CLEANFILES+=	${TMPLASMSRCS:C|^|tmplsrc_|:C|/|_|g}
.endif