xref: /dflybsd-src/gnu/lib/gcc80/libgcov/Makefile (revision 2bdc905f2b4fb73edca62ce444e950c5f28ea0bb)
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