1# $FreeBSD$ 2 3.include <src.opts.mk> 4MK_SSP= no 5 6GCCDIR= ${SRCTOP}/contrib/gcc 7GCCLIB= ${SRCTOP}/contrib/gcclibs 8CCDIR= ${SRCTOP}/gnu/usr.bin/cc 9.include "${CCDIR}/Makefile.tgt" 10.include "${CCDIR}/cc_tools/Makefile.hdrs" 11 12.PATH: ${GCCDIR}/config/${GCC_CPU} ${GCCDIR} 13 14SRCS= crtstuff.c ${COMMONHDRS} 15OBJS= crtbegin.o crtend.o crtbeginT.o 16SOBJS= crtbeginS.o crtendS.o 17CSTD?= gnu89 18CFLAGS+= -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3 19CFLAGS.gcc+= -finhibit-size-directive -fno-toplevel-reorder 20CFLAGS+= -fno-inline-functions -fno-exceptions \ 21 -fno-zero-initialized-in-bss -fno-asynchronous-unwind-tables \ 22 -fno-omit-frame-pointer 23CFLAGS+= -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. \ 24 -I${CCDIR}/cc_tools 25CRTS_CFLAGS= -DCRTSTUFFS_O -DSHARED ${PICFLAG} 26 27.if ${TARGET_CPUARCH} == "arm" 28CFLAGS+= -DTARGET_ARM_EABI 29.endif 30 31.if ${MACHINE_CPUARCH} == "sparc64" 32TGTOBJS= crtfastmath.o 33SRCS+= crtfastmath.c 34.endif 35BEGINSRC?= crtstuff.c 36ENDSRC?= crtstuff.c 37 38FILES= ${OBJS} ${SOBJS} ${TGTOBJS} 39FILESMODE= ${LIBMODE} 40FILESOWN= ${LIBOWN} 41FILESGRP= ${LIBGRP} 42FILESDIR= ${LIBDIR} 43# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. 44.undef LIBRARIES_ONLY 45 46${OBJS} ${SOBJS}: ${SRCS:M*.h} 47 48CLEANFILES= ${OBJS} ${SOBJS} ${TGTOBJS} 49 50crtbegin.o: ${BEGINSRC} 51 ${CC} ${CFLAGS} -g0 -DCRT_BEGIN \ 52 -c -o ${.TARGET} ${.ALLSRC:N*.h} 53 54crtbeginT.o: ${BEGINSRC} 55 ${CC} ${CFLAGS} -g0 -DCRT_BEGIN -DCRTSTUFFT_O \ 56 -c -o ${.TARGET} ${.ALLSRC:N*.h} 57 58crtbeginS.o: ${BEGINSRC} 59 ${CC} ${CFLAGS} -g0 -DCRT_BEGIN ${CRTS_CFLAGS} \ 60 -c -o ${.TARGET} ${.ALLSRC:N*.h} 61 62crtend.o: ${ENDSRC} 63 ${CC} ${CFLAGS} -g0 -DCRT_END \ 64 -c -o ${.TARGET} ${.ALLSRC:N*.h} 65 66crtendS.o: ${ENDSRC} 67 ${CC} ${CFLAGS} -g0 -DCRT_END ${CRTS_CFLAGS} \ 68 -c -o ${.TARGET} ${.ALLSRC:N*.h} 69 70COMMONHDRS+= tm.h tconfig.h options.h 71CLEANFILES+= ${COMMONHDRS} optionlist cs-tconfig.h cs-tm.h 72 73.include <bsd.lib.mk> 74