[FFmpeg-devel] [PATCH 1/2] lavfi/Makefile: Dont compile unused files.

Matt Oliver protogonoi at gmail.com
Sat Feb 11 20:09:44 EET 2023


On Sun, 12 Feb 2023 at 04:00, Nicolas George <george at nsup.org> wrote:

> Hi.
>
> Matt Oliver (12023-01-15):
> >  vf_nlmeans and vf_atadenoisedont contain any code on 32bit x86 so dont
> > build them.
>
> Hi
>
> This sentence seems to be missing a few words.
>
>
Missed a space in there
" vf_nlmeans and vf_atadenoise dont contain any code on 32bit x86 so dont
build them."


>
> >
> > ---
> >  libavfilter/x86/Makefile | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/libavfilter/x86/Makefile b/libavfilter/x86/Makefile
> > index e87481bd7a..9a68b9204b 100644
> > --- a/libavfilter/x86/Makefile
> > +++ b/libavfilter/x86/Makefile
> > @@ -44,7 +44,9 @@ X86ASM-OBJS-$(CONFIG_SCENE_SAD)              +=
> > x86/scene_sad.o
> >
> >  X86ASM-OBJS-$(CONFIG_AFIR_FILTER)            += x86/af_afir.o
> >  X86ASM-OBJS-$(CONFIG_ANLMDN_FILTER)          += x86/af_anlmdn.o
>
> > +ifdef ARCH_X86_64
> >  X86ASM-OBJS-$(CONFIG_ATADENOISE_FILTER)      += x86/vf_atadenoise.o
> > +endif
>
> Do you mean the file is useless yet configure set
> CONFIG_ATADENOISE_FILTER? That looks suspicious.
>

These are the assembly files, so yes the file is completely useless if not
compiling for 64bit x86, but CONFIG_ATADENOISE_FILTER is correctly set as
we still want to pull in the standard c files.
Basically inside these files is a chunk of code inside a ARCH_X86_64 idef
so when compiling for a different arch the files end up containing nothing.

So apart from just saving some compilation effort not compiling files that
dont contain any usable code, this also showed up as an issue under certain
circumstances as nasm in win64 would generate output for essentially empty
files like these that breaks the msvc linker. This patch also fixes that.


>
> The same goes for the other place and the other patch.
>
> >  X86ASM-OBJS-$(CONFIG_BLEND_FILTER)           += x86/vf_blend.o
> >  X86ASM-OBJS-$(CONFIG_BWDIF_FILTER)           += x86/vf_bwdif.o
> >  X86ASM-OBJS-$(CONFIG_COLORSPACE_FILTER)      += x86/colorspacedsp.o
> > @@ -62,7 +64,9 @@ X86ASM-OBJS-$(CONFIG_LIMITER_FILTER)         +=
> > x86/vf_limiter.o
> >  X86ASM-OBJS-$(CONFIG_LUT3D_FILTER)           += x86/vf_lut3d.o
> >  X86ASM-OBJS-$(CONFIG_MASKEDCLAMP_FILTER)     += x86/vf_maskedclamp.o
> >  X86ASM-OBJS-$(CONFIG_MASKEDMERGE_FILTER)     += x86/vf_maskedmerge.o
> > +ifdef ARCH_X86_64
> >  X86ASM-OBJS-$(CONFIG_NLMEANS_FILTER)         += x86/vf_nlmeans.o
> > +endif
> >  X86ASM-OBJS-$(CONFIG_OVERLAY_FILTER)         += x86/vf_overlay.o
> >  X86ASM-OBJS-$(CONFIG_PP7_FILTER)             += x86/vf_pp7.o
> >  X86ASM-OBJS-$(CONFIG_PSNR_FILTER)            += x86/vf_psnr.o
>
> Regards,
>


More information about the ffmpeg-devel mailing list