Merge from vendor branch BIND:
[dragonfly.git] / gnu / lib / csu / Makefile.csu
1 # $FreeBSD: src/gnu/lib/csu/Makefile,v 1.24 2004/09/10 06:48:04 ru Exp $
2 # $DragonFly: src/gnu/lib/csu/Makefile.csu,v 1.1 2007/01/15 18:01:44 corecode Exp $
3
4 .include "${CSUDIR}/Makefile.csu"
5
6 SRCS+=          crtstuff.c
7 HDRS+=          tm.h
8
9 NOBJS=          crtbegin.o crtend.o
10 SOBJS=          crtbeginS.o crtendS.o
11
12 OBJS+=          ${NOBJS} ${SOBJS}
13 INSTALLOBJS+=   ${NOBJS} ${SOBJS}
14
15 OBJS+=  ${SRCS:N*.h:R:S/$/.o/g}
16
17 CFLAGS+=        -finhibit-size-directive -fno-inline-functions \
18                 -fno-exceptions -fno-zero-initialized-in-bss \
19                 -fno-omit-frame-pointer -fno-unit-at-a-time
20 CFLAGS+=        -I.
21 CFLAGS+=        -DUSED_FOR_TARGET
22
23 CRTS_CFLAGS=    -DCRTSTUFFS_O -DSHARED ${PICFLAG}
24 MKDEP=          -DCRT_BEGIN
25
26 BEGINSRC?=      crtstuff.c
27 ENDSRC?=        crtstuff.c
28
29 ${NOBJS} ${SOBJS}: ${HDRS}
30
31 crtbegin.o:     ${BEGINSRC}
32         ${CC} ${CFLAGS} -g0 -DCRT_BEGIN \
33                 -c -o ${.TARGET} ${.ALLSRC:N*.h}
34
35 crtbeginS.o:    ${BEGINSRC}
36         ${CC} ${CFLAGS} -g0 -DCRT_BEGIN ${CRTS_CFLAGS} \
37                 -c -o ${.TARGET} ${.ALLSRC:N*.h}
38
39 crtend.o:       ${ENDSRC}
40         ${CC} ${CFLAGS} -g0 -DCRT_END \
41                 -c -o ${.TARGET} ${.ALLSRC:N*.h}
42
43 crtendS.o:      ${ENDSRC}
44         ${CC} ${CFLAGS} -g0 -DCRT_END ${CRTS_CFLAGS} \
45                 -c -o ${.TARGET} ${.ALLSRC:N*.h}
46
47 CLEANFILES+=    tm.h options.h auto-host.h
48 beforedepend: tm.h options.h auto-host.h
49 tm.h: ${CCDIR}/cc_prep/Makefile
50         ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET}
51
52 options.h:
53         touch ${.TARGET}
54
55 auto-host.h:
56         echo '#include "dragonfly-native.h"' > ${.TARGET}
57
58 all: ${INSTALLOBJS}
59
60 realinstall:
61         ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
62             ${INSTALLOBJS} ${DESTDIR}${TARGET_LIBDIR}
63
64 clean:
65         rm -f ${CLEANFILES} ${OBJS} ${OBJS:S/$/.tmp/}
66
67 .include <bsd.lib.mk>