12233c95bSzrj.include "../Makefile.inc" 22233c95bSzrj.PATH: ${GCCDIR}/libgcc 32233c95bSzrj 42233c95bSzrjLIB= gcov 52233c95bSzrjWARNS?=1 62233c95bSzrj 72233c95bSzrjCFLAGS+= -I. 82233c95bSzrjCFLAGS+= -I${GCCDIR}/libgcc 92233c95bSzrjCFLAGS+= -I${.OBJDIR}/../csu 102233c95bSzrjCFLAGS+= -fbuilding-libgcc 112233c95bSzrjCFLAGS+= -fno-stack-protector 122233c95bSzrjCFLAGS+= -DIN_LIBGCC2 -DHAVE_CC_TLS -DIN_GCC 132233c95bSzrj 142233c95bSzrj# used by shared libs 152233c95bSzrjINSTALL_PIC_ARCHIVE= yes 162233c95bSzrj 17*2bdc905fSzrj# taken from build/x86_64-portbld-dragonfly5.3/libgcc/Makefile 18*2bdc905fSzrjLIBGCOV_MERGE = _gcov_merge_add _gcov_merge_single \ 192233c95bSzrj _gcov_merge_ior _gcov_merge_time_profile _gcov_merge_icall_topn 20*2bdc905fSzrjLIBGCOV_PROFILER = _gcov_interval_profiler \ 21*2bdc905fSzrj _gcov_interval_profiler_atomic \ 22*2bdc905fSzrj _gcov_pow2_profiler \ 23*2bdc905fSzrj _gcov_pow2_profiler_atomic \ 24*2bdc905fSzrj _gcov_one_value_profiler \ 25*2bdc905fSzrj _gcov_one_value_profiler_atomic \ 26*2bdc905fSzrj _gcov_average_profiler \ 27*2bdc905fSzrj _gcov_average_profiler_atomic \ 28*2bdc905fSzrj _gcov_ior_profiler \ 29*2bdc905fSzrj _gcov_ior_profiler_atomic \ 30*2bdc905fSzrj _gcov_indirect_call_profiler_v2 \ 31*2bdc905fSzrj _gcov_time_profiler \ 322233c95bSzrj _gcov_indirect_call_topn_profiler 332233c95bSzrjLIBGCOV_INTERFACE = _gcov_dump _gcov_flush _gcov_fork \ 342233c95bSzrj _gcov_execl _gcov_execlp \ 352233c95bSzrj _gcov_execle _gcov_execv _gcov_execvp _gcov_execve _gcov_reset 362233c95bSzrjLIBGCOV_DRIVER = _gcov 372233c95bSzrj 382233c95bSzrjLIBGCOV= ${LIBGCOV_MERGE} ${LIBGCOV_PROFILER} ${LIBGCOV_INTERFACE} \ 392233c95bSzrj ${LIBGCOV_DRIVER} 402233c95bSzrj 412233c95bSzrjOBJS= ${LIBGCOV:S/$/.o/} 422233c95bSzrj 432233c95bSzrjgthr-default.h: gthr-posix.h 442233c95bSzrj cp ${.ALLSRC} ${.TARGET} 452233c95bSzrj 462233c95bSzrj${LIBGCOV_MERGE:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-merge.c 472233c95bSzrj ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 482233c95bSzrj -o ${.TARGET} 492233c95bSzrj 502233c95bSzrj${LIBGCOV_PROFILER:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-profiler.c 512233c95bSzrj ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 522233c95bSzrj -o ${.TARGET} 532233c95bSzrj 542233c95bSzrj${LIBGCOV_INTERFACE:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h 552233c95bSzrj ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC:M*.c} \ 562233c95bSzrj -o ${.TARGET} 572233c95bSzrj 582233c95bSzrj${LIBGCOV_DRIVER:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-driver.c 592233c95bSzrj ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 602233c95bSzrj -o ${.TARGET} 612233c95bSzrj 622233c95bSzrj# profile versions follow 632233c95bSzrj 642233c95bSzrj${LIBGCOV_MERGE:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-merge.c 652233c95bSzrj ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 662233c95bSzrj -c ${.ALLSRC} -o ${.TARGET} 672233c95bSzrj 682233c95bSzrj${LIBGCOV_PROFILER:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-profiler.c 692233c95bSzrj ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 702233c95bSzrj -c ${.ALLSRC} -o ${.TARGET} 712233c95bSzrj 722233c95bSzrj${LIBGCOV_INTERFACE:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h 732233c95bSzrj ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 742233c95bSzrj -c ${.ALLSRC:M*.c} -o ${.TARGET} 752233c95bSzrj 762233c95bSzrj${LIBGCOV_DRIVER:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-driver.c 772233c95bSzrj ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 782233c95bSzrj -c ${.ALLSRC} -o ${.TARGET} 792233c95bSzrj 802233c95bSzrj# pic versions follow 812233c95bSzrj 822233c95bSzrj${LIBGCOV_MERGE:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-merge.c 832233c95bSzrj ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 842233c95bSzrj -o ${.TARGET} 852233c95bSzrj 862233c95bSzrj${LIBGCOV_PROFILER:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-profiler.c 872233c95bSzrj ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 882233c95bSzrj -o ${.TARGET} 892233c95bSzrj 902233c95bSzrj${LIBGCOV_INTERFACE:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h 912233c95bSzrj ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC:M*.c} \ 922233c95bSzrj -o ${.TARGET} 932233c95bSzrj 942233c95bSzrj${LIBGCOV_DRIVER:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-driver.c 952233c95bSzrj ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 962233c95bSzrj -o ${.TARGET} 972233c95bSzrj 982233c95bSzrjauto-target.h: ${.CURDIR}/../libgcc/auto-target.h 992233c95bSzrj cp ${.ALLSRC} ${.TARGET} 1002233c95bSzrj 1012233c95bSzrjCLEANFILES+= auto-target.h gthr-default.h 1022233c95bSzrj 1032233c95bSzrjbeforedepend: auto-target.h 1042233c95bSzrj 1052233c95bSzrj.include <bsd.lib.mk> 106