7 .include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt"
9 GCCDIR= ${.CURDIR}/../../../contrib/gcc
10 GCCLIB= ${.CURDIR}/../../../contrib/gcclibs
11 .PATH: ${GCCDIR}/config/${GCC_CPU} ${GCCDIR}
15 CFLAGS+= -DIN_GCC -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
16 CFLAGS+= -D_PTHREADS -DGTHREAD_USE_WEAK
17 CFLAGS+= -I${.CURDIR}/../../usr.bin/cc/cc_tools \
18 -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I.
20 .if ${TARGET_CPUARCH} == "arm"
21 CFLAGS+= -DTARGET_ARM_EABI
25 # Library members defined in libgcov.c.
26 # Defined in libgcov.c, included only in gcov library
27 SYMS = _gcov _gcov_merge_add _gcov_merge_single _gcov_merge_delta \
28 _gcov_fork _gcov_execl _gcov_execlp _gcov_execle \
29 _gcov_execv _gcov_execvp _gcov_execve \
30 _gcov_interval_profiler _gcov_pow2_profiler _gcov_one_value_profiler
33 OBJS_T= ${SYMS:S/$/.o/}
34 OBJS_P= ${SYMS:S/$/.po/}
35 OBJS_S= ${SYMS:S/$/.So/}
37 #-----------------------------------------------------------------------
39 # Helpful shortcuts for compiler invocations.
41 CC_T = ${CC} -c ${CFLAGS} -fPIC
42 CC_P = ${CC} -c ${CFLAGS} -p -fPIC
43 CC_S = ${CC} -c ${CFLAGS} ${PICFLAG} -DSHARED
45 COMMONHDRS= tm.h tconfig.h gcov-iov.h options.h
46 CLEANFILES+= ${COMMONHDRS} cs-tm.h cs-tconfig.h options.h optionlist
48 ${COMMONHDRS}: ${.CURDIR}/../../usr.bin/cc/cc_tools/Makefile .PHONY
49 (cd ${.CURDIR}; ${MAKE} -f ${.ALLSRC} MFILE=${.ALLSRC} GCCDIR=${GCCDIR} ${.TARGET})
51 ${OBJS} beforedepend: ${COMMONHDRS}
54 ${CC_T} -DL${.PREFIX} -o ${.TARGET} ${.ALLSRC:M*.c}
58 ${CC_S} -DL${.PREFIX} -o ${.TARGET} ${.ALLSRC:M*.c}
61 .if ${MK_PROFILE} != "no"
63 ${CC_P} -DL${.PREFIX} -o ${.TARGET} ${.ALLSRC:M*.c}