define cmd-link ${Q1s}${PRNTLOG} "${CXX}" "$@" ${Q1e} ${Q2s}${PRNTFMT} "${CXX}" "$@" ${Q2e} ${Q3s}${CXX} $^ -o $@ ${CXXFLAGS} ${LNKFLAGS} ${LIBS} ${Q3e} ${Q4s}${CXX} $^ -o $@ ${CXXFLAGS} ${LNKFLAGS} ${LIBS} ${Q4e} endef define cmd-cp ${Q1s}${PRNTLOG} "cp" "$@" ${Q1e} ${Q2s}${PRNTFMT} "cp" "$@" ${Q2e} ${Q3s}cp $< $@ ${Q3e} ${Q4s}cp $< $@ ${Q4e} endef define cmd-rm ${Q1s}${PRNTLOG} "rm" "${CLEANTARGET}" ${Q1e} ${Q2s}${PRNTFMT} "rm" "${CLEANTARGET}" ${Q2e} ${Q3s}rm -f ${CLEANTARGET} ${Q3e} ${Q4s}rm -f ${CLEANTARGET} ${Q4e} endef define cmd-rmrec ${Q1s}${PRNTLOG} "rm" "${CLEANTARGET}" ${Q1e} ${Q2s}${PRNTFMT} "rm" "${CLEANTARGET}" ${Q2e} ${Q3s}rm -rf ${CLEANTARGET} ${Q3e} ${Q4s}rm -rf ${CLEANTARGET} ${Q4e} endef define cmd-cpptoobj ${Q1s}${PRNTLOG} "${CXX}" "$@" ${Q1e} ${Q2s}${PRNTFMT} "${CXX}" "$@" ${Q2e} ${Q3s}${CXX} -c $< -o $@ -MF ${@:${OBJSDIR}%.o=${DEPSDIR}%.d} ${CXXFLAGS} ${INCFLAGS} -MMD -MQ $@ ${Q3e} ${Q4s}${CXX} -c $< -o $@ -MF ${@:${OBJSDIR}%.o=${DEPSDIR}%.d} ${CXXFLAGS} ${INCFLAGS} -MMD -MQ $@ ${Q4e} endef # Do nothing. This is now done in parallel with cpptoobj. However, you still # need to write rules using this to cause dependency directories to be created define cmd-cpptodep endef ${L_BLDDIRS}: ${Q1s}${PRNTLOG} "mkdir" "$@" ${Q1e} ${Q2s}${PRNTFMT} "mkdir" "$@" ${Q2e} ${Q3s}mkdir $@ ${Q3e} ${Q4s}mkdir $@ ${Q4e}