On 1/26/2022 7:44 PM, Lynne wrote:
This broke builds with --disable-mmx, which also disabled assembly
entirely, but ARCH_X86 was still true, so the init file tried to find
assembly that didn't exist.
Instead of checking for architecture, check if x86 assembly is enabled.

Patch attached.


From 97e91aea87876a542a0f075e7093708f38f38a8c Mon Sep 17 00:00:00 2001
From: Lynne <d...@lynne.ee>
Date: Wed, 26 Jan 2022 23:40:35 +0100
Subject: [PATCH] x86/tx_float: do not build tx_float_init.c if x86 assembly is
 disabled

This broke builds with --disable-mmx, which also disabled assembly
entirely, but ARCH_X86 was still true, so the init file tried to find
assembly that didn't exist.
Instead of checking for architecture, check if x86 assembly is enabled.
---
 libavutil/tx.c         | 2 +-
 libavutil/x86/Makefile | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavutil/tx.c b/libavutil/tx.c
index cac7815231..5c1ac20c92 100644
--- a/libavutil/tx.c
+++ b/libavutil/tx.c
@@ -439,7 +439,7 @@ av_cold int ff_tx_init_subtx(AVTXContext *s, enum AVTXType 
type,
         ff_tx_codelet_list_double_c,
         ff_tx_codelet_list_int32_c,
         ff_tx_null_list,
-#if ARCH_X86
+#if HAVE_X86ASM
         ff_tx_codelet_list_float_x86,
 #endif
     };
diff --git a/libavutil/x86/Makefile b/libavutil/x86/Makefile
index d747c37049..d66839e35d 100644
--- a/libavutil/x86/Makefile
+++ b/libavutil/x86/Makefile
@@ -3,7 +3,8 @@ OBJS += x86/cpu.o                                               
        \
         x86/float_dsp_init.o                                            \
         x86/imgutils_init.o                                             \
         x86/lls_init.o                                                  \
-        x86/tx_float_init.o                                             \
+
+OBJS-$(HAVE_X86ASM) += x86/tx_float_init.o                              \

This is not how we normally handle things. Init files for a given target arch should compile regardless of what is enabled at configure time. DCE with all the EXTERNAL_ checks should take care of not referencing symbols that nasm will not assemble.

OBJS-$(CONFIG_PIXELUTILS) += x86/pixelutils_init.o \ --
2.34.1

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to