13a7789cfSDavid E. O'Brien# $FreeBSD$ 23a7789cfSDavid E. O'Brien 3c6063d0dSWarner Losh.include <src.opts.mk> 4d9ca85fcSRuslan ErmilovMK_SSP= no 5d9ca85fcSRuslan Ermilov 6*ffec3151SWarner LoshGCCDIR= ${SRCTOP}/contrib/gcc 7*ffec3151SWarner LoshGCCLIB= ${SRCTOP}/contrib/gcclibs 8*ffec3151SWarner LoshCCDIR= ${SRCTOP}/gnu/usr.bin/cc 95d8d0d50SDavid E. O'Brien.include "${CCDIR}/Makefile.tgt" 1009fb6bffSBryan Drewery.include "${CCDIR}/cc_tools/Makefile.hdrs" 113a7789cfSDavid E. O'Brien 128c258dc6SPeter Wemm.PATH: ${GCCDIR}/config/${GCC_CPU} ${GCCDIR} 138c258dc6SPeter Wemm 1409fb6bffSBryan DrewerySRCS= crtstuff.c ${COMMONHDRS} 15afb57df6SAlexander KabaevOBJS= crtbegin.o crtend.o crtbeginT.o 16c7a6b091SMarcel MoolenaarSOBJS= crtbeginS.o crtendS.o 173dca32d8SDavid E. O'BrienCSTD?= gnu89 18afb57df6SAlexander KabaevCFLAGS+= -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3 19b294993dSDimitry AndricCFLAGS.gcc+= -finhibit-size-directive -fno-toplevel-reorder 206b1fe0f9SDimitry AndricCFLAGS+= -fno-inline-functions -fno-exceptions \ 216b1fe0f9SDimitry Andric -fno-zero-initialized-in-bss -fno-asynchronous-unwind-tables \ 226b1fe0f9SDimitry Andric -fno-omit-frame-pointer 23afb57df6SAlexander KabaevCFLAGS+= -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. \ 245d8d0d50SDavid E. O'Brien -I${CCDIR}/cc_tools 258c258dc6SPeter WemmCRTS_CFLAGS= -DCRTSTUFFS_O -DSHARED ${PICFLAG} 263a7789cfSDavid E. O'Brien 276d4766c1SAndrew Turner.if ${TARGET_CPUARCH} == "arm" 281992e9a1SAndrew TurnerCFLAGS+= -DTARGET_ARM_EABI 291992e9a1SAndrew Turner.endif 301992e9a1SAndrew Turner 3125faff34SWarner Losh.if ${MACHINE_CPUARCH} == "sparc64" 325d8d0d50SDavid E. O'BrienTGTOBJS= crtfastmath.o 33df411a30SDavid E. O'BrienSRCS+= crtfastmath.c 345d8d0d50SDavid E. O'Brien.endif 35281fc7f2SRuslan ErmilovBEGINSRC?= crtstuff.c 36281fc7f2SRuslan ErmilovENDSRC?= crtstuff.c 375d8d0d50SDavid E. O'Brien 385ca34122SBryan DreweryFILES= ${OBJS} ${SOBJS} ${TGTOBJS} 395ca34122SBryan DreweryFILESMODE= ${LIBMODE} 405ca34122SBryan DreweryFILESOWN= ${LIBOWN} 415ca34122SBryan DreweryFILESGRP= ${LIBGRP} 425ca34122SBryan DreweryFILESDIR= ${LIBDIR} 437c6cc9deSBryan Drewery# These FILES qualify as libraries for the purpose of LIBRARIES_ONLY. 447c6cc9deSBryan Drewery.undef LIBRARIES_ONLY 455ca34122SBryan Drewery 461754e424SRuslan Ermilov${OBJS} ${SOBJS}: ${SRCS:M*.h} 473a7789cfSDavid E. O'Brien 4820200638SRuslan ErmilovCLEANFILES= ${OBJS} ${SOBJS} ${TGTOBJS} 4920200638SRuslan Ermilov 508c258dc6SPeter Wemmcrtbegin.o: ${BEGINSRC} 513a7789cfSDavid E. O'Brien ${CC} ${CFLAGS} -g0 -DCRT_BEGIN \ 524d4be121SDavid E. O'Brien -c -o ${.TARGET} ${.ALLSRC:N*.h} 533a7789cfSDavid E. O'Brien 54afb57df6SAlexander KabaevcrtbeginT.o: ${BEGINSRC} 55afb57df6SAlexander Kabaev ${CC} ${CFLAGS} -g0 -DCRT_BEGIN -DCRTSTUFFT_O \ 56afb57df6SAlexander Kabaev -c -o ${.TARGET} ${.ALLSRC:N*.h} 57afb57df6SAlexander Kabaev 58c7a6b091SMarcel MoolenaarcrtbeginS.o: ${BEGINSRC} 593a7789cfSDavid E. O'Brien ${CC} ${CFLAGS} -g0 -DCRT_BEGIN ${CRTS_CFLAGS} \ 604d4be121SDavid E. O'Brien -c -o ${.TARGET} ${.ALLSRC:N*.h} 613a7789cfSDavid E. O'Brien 628c258dc6SPeter Wemmcrtend.o: ${ENDSRC} 633a7789cfSDavid E. O'Brien ${CC} ${CFLAGS} -g0 -DCRT_END \ 644d4be121SDavid E. O'Brien -c -o ${.TARGET} ${.ALLSRC:N*.h} 653a7789cfSDavid E. O'Brien 66c7a6b091SMarcel MoolenaarcrtendS.o: ${ENDSRC} 673a7789cfSDavid E. O'Brien ${CC} ${CFLAGS} -g0 -DCRT_END ${CRTS_CFLAGS} \ 684d4be121SDavid E. O'Brien -c -o ${.TARGET} ${.ALLSRC:N*.h} 693a7789cfSDavid E. O'Brien 7009fb6bffSBryan DreweryCOMMONHDRS+= tm.h tconfig.h options.h 7109fb6bffSBryan DreweryCLEANFILES+= ${COMMONHDRS} optionlist cs-tconfig.h cs-tm.h 723a7789cfSDavid E. O'Brien 733a7789cfSDavid E. O'Brien.include <bsd.lib.mk> 74