From: SZEDER Gábor Date: Mon, 23 Jul 2018 13:50:59 +0000 (+0200) Subject: coccinelle: put sane filenames into output patches X-Git-Tag: v2.19.0-rc0~72^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f57d11728d1;p=thirdparty%2Fgit.git coccinelle: put sane filenames into output patches Coccinelle outputs its suggested transformations as patches, whose header looks something like this: --- commit.c +++ /tmp/cocci-output-19250-7ae78a-commit.c Note the lack of 'diff --opts ' line, the differing number of path components on the --- and +++ lines, and the nonsensical filename on the +++ line. 'patch -p0' can still apply these patches, as it takes the filename to be modified from the --- line. Alas, 'git apply' can't, because it takes the filename from the +++ line, and then complains about the nonexisting file. Pass the '--patch .' options to Coccinelle via the SPATCH_FLAGS 'make' variable, as it seems to make it generate proper context diff patches, with the header starting with a 'diff ...' line and containing sane filenames. The resulting 'contrib/coccinelle/*.cocci.patch' files then can be applied both with 'git apply' and 'patch' (even without '-p0'). Signed-off-by: SZEDER Gábor Signed-off-by: Junio C Hamano --- diff --git a/Makefile b/Makefile index df3682f28a..9ac540df55 100644 --- a/Makefile +++ b/Makefile @@ -564,7 +564,7 @@ SPATCH = spatch export TCL_PATH TCLTK_PATH SPARSE_FLAGS = -SPATCH_FLAGS = --all-includes +SPATCH_FLAGS = --all-includes --patch .