On Wed, Feb 16, 2022 at 05:38:04AM +0100, Andreas Rheinhardt wrote: > Michael Niedermayer: > > This is more consistent with similar usage > > > > Signed-off-by: Michael Niedermayer > > --- > > .../{blend_modes.c => blend_modes_template.c} | 0 > > libavfilter/vf_blend.c | 14 +++++++------- > > 2 files changed, 7 insertions(+), 7 deletions(-) > > rename libavfilter/{blend_modes.c => blend_modes_template.c} (100%) > > > > diff --git a/libavfilter/blend_modes.c b/libavfilter/blend_modes_template.c > > similarity index 100% > > rename from libavfilter/blend_modes.c > > rename to libavfilter/blend_modes_template.c > > diff --git a/libavfilter/vf_blend.c b/libavfilter/vf_blend.c > > index 2d433e439f..e912ba4cb8 100644 > > --- a/libavfilter/vf_blend.c > > +++ b/libavfilter/vf_blend.c > > @@ -34,31 +34,31 @@ > > #define BOTTOM 1 > > > > #define DEPTH 8 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > #undef DEPTH > > #define DEPTH 9 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > #undef DEPTH > > #define DEPTH 10 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > #undef DEPTH > > #define DEPTH 12 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > #undef DEPTH > > #define DEPTH 14 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > #undef DEPTH > > #define DEPTH 16 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > #undef DEPTH > > #define DEPTH 32 > > -#include "blend_modes.c" > > +#include "blend_modes_template.c" > > > > typedef struct BlendContext { > > const AVClass *class; > > Right now make's vf_blend.d contains an entry > src/libavfilter/blend_modes.c; if one applies this patch, said file does > no longer exist and make errors out with "No rule to make target > 'src/libavfilter/blend_modes.c', needed by 'libavfilter/vf_blend.o'.", > because the blend_modes.c prerequisite can't be made. In > 3044d0efee9136c19dfdcf6dcdf957e910a73fd5 I made the build process treat > templates just like headers so that they can be deleted without this > error. Would there be any negative side-effects of doing the same for > all files? > (Btw: The AC-3 decoder also uses a misnamed template; I didn't fix it > because of the aforementioned issue.) Iam no makefile guru but if you give a rule to fake-make any .c file then .o files build from .asm could pick the .c route i dont know when that happens but it does happen sometimes: Considering target file 'libavcodec/x86/fpel.o'. Looking for an implicit rule for 'libavcodec/x86/fpel.o'. Trying pattern rule with stem 'fpel'. Trying implicit prerequisite 'libavcodec/x86/fpel.c'. Found prerequisite 'libavcodec/x86/fpel.c' as VPATH 'src/libavcodec/x86/fpel.c' Found an implicit rule for 'libavcodec/x86/fpel.o'. Considering target file 'src/libavcodec/x86/fpel.c'. File 'src/libavcodec/x86/fpel.c' does not exist. Looking for an implicit rule for 'src/libavcodec/x86/fpel.c'. Trying pattern rule with stem 'fpel'. Found an implicit rule for 'src/libavcodec/x86/fpel.c'. Finished prerequisites of target file 'src/libavcodec/x86/fpel.c'. Must remake target 'src/libavcodec/x86/fpel.c'. Successfully remade target file 'src/libavcodec/x86/fpel.c'. Pruning file 'libavcodec/'. Pruning file 'libavcodec/x86/'. Considering target file 'src/libavcodec/x86/fpel.asm'. Looking for an implicit rule for 'src/libavcodec/x86/fpel.asm'. Trying pattern rule with stem 'fpel.asm'. Trying implicit prerequisite 'src/libavcodec/x86/fpel.asm,v'. Trying pattern rule with stem 'fpel.asm'. Trying implicit prerequisite 'src/libavcodec/x86/RCS/fpel.asm,v'. Trying pattern rule with stem 'fpel.asm'. Trying implicit prerequisite 'src/libavcodec/x86/RCS/fpel.asm'. Trying pattern rule with stem 'fpel.asm'. Trying implicit prerequisite 'src/libavcodec/x86/s.fpel.asm'. Trying pattern rule with stem 'fpel.asm'. Trying implicit prerequisite 'src/libavcodec/x86/SCCS/s.fpel.asm'. No implicit rule found for 'src/libavcodec/x86/fpel.asm'. Finished prerequisites of target file 'src/libavcodec/x86/fpel.asm'. No need to remake target 'src/libavcodec/x86/fpel.asm'. Pruning file 'config.asm'. Pruning file 'src//libavutil/x86/x86util.asm'. Pruning file 'src//libavutil/x86/x86inc.asm'. Finished prerequisites of target file 'libavcodec/x86/fpel.o'. Prerequisite 'src/libavcodec/x86/fpel.c' of target 'libavcodec/x86/fpel.o' does not exist. Prerequisite 'libavcodec/' is order-only for target 'libavcodec/x86/fpel.o'. Prerequisite 'libavcodec/x86/' is order-only for target 'libavcodec/x86/fpel.o'. Prerequisite 'src/libavcodec/x86/fpel.asm' is older than target 'libavcodec/x86/fpel.o'. Prerequisite 'config.asm' is newer than target 'libavcodec/x86/fpel.o'. Prerequisite 'src//libavutil/x86/x86util.asm' is older than target 'libavcodec/x86/fpel.o'. Prerequisite 'src//libavutil/x86/x86inc.asm' is older than target 'libavcodec/x86/fpel.o'. Must remake target 'libavcodec/x86/fpel.o'. Putting child 0x55fbfa094840 (libavcodec/x86/fpel.o) PID 29151 on the chain. Live child 0x55fbfa094840 (libavcodec/x86/fpel.o) PID 29151 CC libavcodec/x86/fpel.o x86_64-w64-mingw32-gcc: error: src/libavcodec/x86/fpel.c: No such file or directory x86_64-w64-mingw32-gcc: fatal error: no input files compilation terminated. Reaping losing child 0x55fbfa094840 PID 29151 make: *** [libavcodec/x86/fpel.o] Error 1 src/ffbuild/common.mak:78: recipe for target 'libavcodec/x86/fpel.o' failed Removing child 0x55fbfa094840 PID 29151 from chain. [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB The bravest are surely those who have the clearest vision of what is before them, glory and danger alike, and yet notwithstanding go out to meet it. -- Thucydides