From e72efeead133a685e99ec495fb7617df39a7739d Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Fri, 28 Feb 2020 10:22:17 +0100 Subject: [PATCH] Framework: allow diff and mfc targets for subdirs --- Makefile | 36 ------------------------------------ Mk/defaults.mk | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/Makefile b/Makefile index f5b95c2e5..8e31ab3a0 100644 --- a/Makefile +++ b/Makefile @@ -51,42 +51,6 @@ ${TARGET}: . endfor .endfor -ARGS= diff mfc - -# handle argument expansion for required targets -.for TARGET in ${.TARGETS} -_TARGET= ${TARGET:C/\-.*//} -.if ${_TARGET} != ${TARGET} -.for ARGUMENT in ${ARGS} -.if ${_TARGET} == ${ARGUMENT} -${_TARGET}_ARGS+= ${TARGET:C/^[^\-]*(\-|\$)//:S/,/ /g} -${TARGET}: ${_TARGET} -.endif -.endfor -${_TARGET}_ARG= ${${_TARGET}_ARGS:[0]} -.endif -.endfor - -diff: - @git diff --stat -p stable/${PLUGIN_ABI} ${.CURDIR}/${diff_ARGS:[1]} - -mfc: -.for MFC in ${mfc_ARGS} -.if exists(${MFC}) - @git diff --stat -p stable/${PLUGIN_ABI} ${.CURDIR}/${MFC} > /tmp/mfc.diff - @git checkout stable/${PLUGIN_ABI} - @git apply /tmp/mfc.diff - @git add ${.CURDIR} - @if ! git diff --quiet HEAD; then \ - git commit -m "${MFC}: sync with master"; \ - fi -.else - @git checkout stable/${PLUGIN_ABI} - @git cherry-pick -x ${MFC} -.endif - @git checkout master -.endfor - license: @${.CURDIR}/Scripts/license . > ${.CURDIR}/LICENSE diff --git a/Mk/defaults.mk b/Mk/defaults.mk index be747ef1b..1368f70ff 100644 --- a/Mk/defaults.mk +++ b/Mk/defaults.mk @@ -48,3 +48,39 @@ SED_REPLACE= # empty .for REPLACEMENT in ${REPLACEMENTS} SED_REPLACE+= -e "s=%%${REPLACEMENT}%%=${${REPLACEMENT}}=g" .endfor + +ARGS= diff mfc + +# handle argument expansion for required targets +.for TARGET in ${.TARGETS} +_TARGET= ${TARGET:C/\-.*//} +.if ${_TARGET} != ${TARGET} +.for ARGUMENT in ${ARGS} +.if ${_TARGET} == ${ARGUMENT} +${_TARGET}_ARGS+= ${TARGET:C/^[^\-]*(\-|\$)//:S/,/ /g} +${TARGET}: ${_TARGET} +.endif +.endfor +${_TARGET}_ARG= ${${_TARGET}_ARGS:[0]} +.endif +.endfor + +diff: + @git diff --stat -p stable/${PLUGIN_ABI} ${.CURDIR}/${diff_ARGS:[1]} + +mfc: +.for MFC in ${mfc_ARGS} +.if exists(${MFC}) + @git diff --stat -p stable/${PLUGIN_ABI} ${.CURDIR}/${MFC} > /tmp/mfc.diff + @git checkout stable/${PLUGIN_ABI} + @git apply /tmp/mfc.diff + @git add ${.CURDIR} + @if ! git diff --quiet HEAD; then \ + git commit -m "${MFC}: sync with master"; \ + fi +.else + @git checkout stable/${PLUGIN_ABI} + @git cherry-pick -x ${MFC} +.endif + @git checkout master +.endfor