167811Sobrien# $FreeBSD$ 267811Sobrien 3188895Sru.include <bsd.own.mk> 4188895SruMK_SSP= no 5188895Sru 696340SobrienGCCDIR= ${.CURDIR}/../../../contrib/gcc 7169718SkanGCCLIB= ${.CURDIR}/../../../contrib/gcclibs 896340SobrienCCDIR= ${.CURDIR}/../../usr.bin/cc 996340Sobrien.include "${CCDIR}/Makefile.tgt" 1096340Sobrien 1196796Speter.PATH: ${GCCDIR}/config/${GCC_CPU} ${GCCDIR} 1296796Speter 13169718SkanSRCS= crtstuff.c tconfig.h tm.h options.h 14169718SkanOBJS= crtbegin.o crtend.o crtbeginT.o 15235566SmarcelSOBJS= crtbeginS.o crtendS.o 16115663SobrienCSTD?= gnu89 17169718SkanCFLAGS+= -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3 18260096SdimCFLAGS.gcc+= -finhibit-size-directive -fno-toplevel-reorder 19259851SdimCFLAGS+= -fno-inline-functions -fno-exceptions \ 20259851Sdim -fno-zero-initialized-in-bss -fno-asynchronous-unwind-tables \ 21259851Sdim -fno-omit-frame-pointer 22169718SkanCFLAGS+= -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. \ 2396340Sobrien -I${CCDIR}/cc_tools 2496796SpeterCRTS_CFLAGS= -DCRTSTUFFS_O -DSHARED ${PICFLAG} 25126688SruMKDEP= -DCRT_BEGIN 2667811Sobrien 27245539Sandrew.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" 28245539SandrewCFLAGS+= -DTARGET_ARM_EABI 29245539Sandrew.endif 30245539Sandrew 31211725Simp.if ${MACHINE_CPUARCH} == "ia64" 3296796SpeterBEGINSRC= crtbegin.asm 3396796SpeterENDSRC= crtend.asm 3496796SpeterCFLAGS+= -x assembler-with-cpp # Ugly hack 35183440SmarcelCFLAGS+= -include osreldate.h 3696796Speter.undef SRCS # hack for 'make depend' 3796796Speter.endif 38211725Simp.if ${MACHINE_CPUARCH} == "powerpc" 3996778SobrienTGTOBJS= crtsavres.o 4096778SobrienSRCS+= crtsavres.asm 4196778Sobrien.endif 42211725Simp.if ${MACHINE_CPUARCH} == "sparc64" 4396340SobrienTGTOBJS= crtfastmath.o 4496340SobrienSRCS+= crtfastmath.c 4596340Sobrien.endif 46172609SruBEGINSRC?= crtstuff.c 47172609SruENDSRC?= crtstuff.c 4867811Sobrien 4996340Sobrienall: ${OBJS} ${SOBJS} ${TGTOBJS} 50135029Sru${OBJS} ${SOBJS}: ${SRCS:M*.h} 5196340Sobrien 5296530SruCLEANFILES= ${OBJS} ${SOBJS} ${TGTOBJS} 5396530Sru 5496796Spetercrtbegin.o: ${BEGINSRC} 5567811Sobrien ${CC} ${CFLAGS} -g0 -DCRT_BEGIN \ 5697314Sobrien -c -o ${.TARGET} ${.ALLSRC:N*.h} 5767811Sobrien 58169718SkancrtbeginT.o: ${BEGINSRC} 59169718Skan ${CC} ${CFLAGS} -g0 -DCRT_BEGIN -DCRTSTUFFT_O \ 60169718Skan -c -o ${.TARGET} ${.ALLSRC:N*.h} 61169718Skan 62235566SmarcelcrtbeginS.o: ${BEGINSRC} 6367811Sobrien ${CC} ${CFLAGS} -g0 -DCRT_BEGIN ${CRTS_CFLAGS} \ 6497314Sobrien -c -o ${.TARGET} ${.ALLSRC:N*.h} 6567811Sobrien 6696796Spetercrtend.o: ${ENDSRC} 6767811Sobrien ${CC} ${CFLAGS} -g0 -DCRT_END \ 6897314Sobrien -c -o ${.TARGET} ${.ALLSRC:N*.h} 6967811Sobrien 70235566SmarcelcrtendS.o: ${ENDSRC} 7167811Sobrien ${CC} ${CFLAGS} -g0 -DCRT_END ${CRTS_CFLAGS} \ 7297314Sobrien -c -o ${.TARGET} ${.ALLSRC:N*.h} 7367811Sobrien 74169718SkanCLEANFILES+= tm.h tconfig.h options.h optionlist cs-tconfig.h cs-tm.h 75169718Skantm.h tconfig.h options.h: ${CCDIR}/cc_tools/Makefile 7696340Sobrien ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET} 7767811Sobrien 7867811Sobrienrealinstall: 7996340Sobrien.for file in ${OBJS} ${SOBJS} ${TGTOBJS} 80100872Sru ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ 81235566Smarcel ${file} ${DESTDIR}${LIBDIR}/${file} 8267811Sobrien.endfor 8367811Sobrien 8467811Sobrien.include <bsd.lib.mk> 85