1.include "../Makefile.inc" 2.PATH: ${GCCDIR}/libgcc 3 4LIB= gcov 5WARNS?=1 6 7CFLAGS+= -I. 8CFLAGS+= -I${GCCDIR}/libgcc 9CFLAGS+= -I${.OBJDIR}/../csu 10CFLAGS+= -fbuilding-libgcc 11CFLAGS+= -fno-stack-protector 12CFLAGS+= -DIN_LIBGCC2 -DHAVE_CC_TLS -DIN_GCC 13 14# used by shared libs 15INSTALL_PIC_ARCHIVE= yes 16 17# taken from build/x86_64-portbld-dragonfly4.1/libgcc/Makefile 18LIBGCOV_MERGE = _gcov_merge_add _gcov_merge_single _gcov_merge_delta \ 19 _gcov_merge_ior _gcov_merge_time_profile _gcov_merge_icall_topn 20LIBGCOV_PROFILER = _gcov_interval_profiler _gcov_pow2_profiler \ 21 _gcov_one_value_profiler _gcov_indirect_call_profiler \ 22 _gcov_average_profiler _gcov_ior_profiler \ 23 _gcov_indirect_call_profiler_v2 _gcov_time_profiler \ 24 _gcov_indirect_call_topn_profiler 25LIBGCOV_INTERFACE = _gcov_dump _gcov_flush _gcov_fork \ 26 _gcov_execl _gcov_execlp \ 27 _gcov_execle _gcov_execv _gcov_execvp _gcov_execve _gcov_reset 28LIBGCOV_DRIVER = _gcov 29 30LIBGCOV= ${LIBGCOV_MERGE} ${LIBGCOV_PROFILER} ${LIBGCOV_INTERFACE} \ 31 ${LIBGCOV_DRIVER} 32 33OBJS= ${LIBGCOV:S/$/.o/} 34 35gthr-default.h: gthr-posix.h 36 cp ${.ALLSRC} ${.TARGET} 37 38${LIBGCOV_MERGE:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-merge.c 39 ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 40 -o ${.TARGET} 41 42${LIBGCOV_PROFILER:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-profiler.c 43 ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 44 -o ${.TARGET} 45 46${LIBGCOV_INTERFACE:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h 47 ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC:M*.c} \ 48 -o ${.TARGET} 49 50${LIBGCOV_DRIVER:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-driver.c 51 ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 52 -o ${.TARGET} 53 54# profile versions follow 55 56${LIBGCOV_MERGE:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-merge.c 57 ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 58 -c ${.ALLSRC} -o ${.TARGET} 59 60${LIBGCOV_PROFILER:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-profiler.c 61 ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 62 -c ${.ALLSRC} -o ${.TARGET} 63 64${LIBGCOV_INTERFACE:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h 65 ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 66 -c ${.ALLSRC:M*.c} -o ${.TARGET} 67 68${LIBGCOV_DRIVER:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-driver.c 69 ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \ 70 -c ${.ALLSRC} -o ${.TARGET} 71 72# pic versions follow 73 74${LIBGCOV_MERGE:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-merge.c 75 ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 76 -o ${.TARGET} 77 78${LIBGCOV_PROFILER:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-profiler.c 79 ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 80 -o ${.TARGET} 81 82${LIBGCOV_INTERFACE:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h 83 ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC:M*.c} \ 84 -o ${.TARGET} 85 86${LIBGCOV_DRIVER:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-driver.c 87 ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \ 88 -o ${.TARGET} 89 90auto-target.h: ${.CURDIR}/../libgcc/auto-target.h 91 cp ${.ALLSRC} ${.TARGET} 92 93CLEANFILES+= auto-target.h gthr-default.h 94 95beforedepend: auto-target.h 96 97.include <bsd.lib.mk> 98