PR #22678 opened by Ramiro Polla (ramiro)
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22678
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22678.patch

This serves two purposes:
- there is a test to check that the file is always up-to-date
- it can easily be regenerated using fate's own infrastructure



>From 0ff3b16715e6cddbc5d138ebcb2e090450ab3058 Mon Sep 17 00:00:00 2001
From: Ramiro Polla <[email protected]>
Date: Wed, 1 Apr 2026 12:32:46 +0200
Subject: [PATCH 1/2] swscale/aarch64: convert generation of ops_entries.c to a
 fate test

This serves two purposes:
- there is a test to check that the file is always up-to-date
- it can easily be regenerated using fate's own infrastructure
---
 libswscale/Makefile                | 6 ------
 libswscale/aarch64/ops_asmgen.c    | 2 +-
 libswscale/aarch64/ops_entries.c   | 2 +-
 libswscale/tests/sws_ops_aarch64.c | 2 +-
 tests/fate/libswscale.mak          | 5 +++++
 5 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/libswscale/Makefile b/libswscale/Makefile
index fa9231aff1..db24a4dee7 100644
--- a/libswscale/Makefile
+++ b/libswscale/Makefile
@@ -51,9 +51,3 @@ TESTPROGS = colorspace                                        
          \
             swscale                                                     \
             sws_ops                                                     \
             sws_ops_aarch64                                             \
-
-sws_ops_entries_aarch64: TAG = GEN
-sws_ops_entries_aarch64: $(SUBDIR)tests/sws_ops_aarch64$(EXESUF)
-       $(M)$< > $(SRC_PATH)/libswscale/aarch64/ops_entries.c.tmp
-       $(CP) $(SRC_PATH)/libswscale/aarch64/ops_entries.c.tmp 
$(SRC_PATH)/libswscale/aarch64/ops_entries.c
-       $(RM) $(SRC_PATH)/libswscale/aarch64/ops_entries.c.tmp
diff --git a/libswscale/aarch64/ops_asmgen.c b/libswscale/aarch64/ops_asmgen.c
index 626ce00e5e..283cf72719 100644
--- a/libswscale/aarch64/ops_asmgen.c
+++ b/libswscale/aarch64/ops_asmgen.c
@@ -88,7 +88,7 @@ static void *av_dynarray2_add(void **tab_ptr, int *nb_ptr, 
size_t elem_size,
  * compiled by performing a dummy run of all conversions in sws_ops and
  * collecting all functions that need to be generated. This is achieved
  * by running:
- *   make sws_ops_entries_aarch64
+ *   make fate-sws-ops-entries-aarch64 GEN=1
  */
 static const SwsAArch64OpImplParams impl_params[] = {
 #include "ops_entries.c"
diff --git a/libswscale/aarch64/ops_entries.c b/libswscale/aarch64/ops_entries.c
index 61ff8bf760..16e1a717f3 100644
--- a/libswscale/aarch64/ops_entries.c
+++ b/libswscale/aarch64/ops_entries.c
@@ -1,6 +1,6 @@
 /*
  * This file is automatically generated. Do not edit manually.
- * To regenerate, run: make sws_ops_entries_aarch64
+ * To regenerate, run: make fate-sws-ops-entries-aarch64 GEN=1
  */
 
 { .op = AARCH64_SWS_OP_PROCESS, .mask = 0x0001 },
diff --git a/libswscale/tests/sws_ops_aarch64.c 
b/libswscale/tests/sws_ops_aarch64.c
index 21948ca71b..2d7faa0765 100644
--- a/libswscale/tests/sws_ops_aarch64.c
+++ b/libswscale/tests/sws_ops_aarch64.c
@@ -196,7 +196,7 @@ int main(int argc, char *argv[])
      */
     printf("/*\n");
     printf(" * This file is automatically generated. Do not edit manually.\n");
-    printf(" * To regenerate, run: make sws_ops_entries_aarch64\n");
+    printf(" * To regenerate, run: make fate-sws-ops-entries-aarch64 GEN=1\n");
     printf(" */\n");
     printf("\n");
     av_tree_enumerate(root, stdout, NULL, print_op);
diff --git a/tests/fate/libswscale.mak b/tests/fate/libswscale.mak
index bd037a83dd..9c017ad3cc 100644
--- a/tests/fate/libswscale.mak
+++ b/tests/fate/libswscale.mak
@@ -44,6 +44,11 @@ fate-sws-ops-list: libswscale/tests/sws_ops$(EXESUF)
 fate-sws-ops-list: CMD = run libswscale/tests/sws_ops$(EXESUF) | do_md5sum | 
cut -d" " -f1
 endif
 
+FATE_LIBSWSCALE-$(CONFIG_UNSTABLE) += fate-sws-ops-entries-aarch64
+fate-sws-ops-entries-aarch64: libswscale/tests/sws_ops_aarch64$(EXESUF)
+fate-sws-ops-entries-aarch64: REF = 
$(SRC_PATH)/libswscale/aarch64/ops_entries.c
+fate-sws-ops-entries-aarch64: CMD = run 
libswscale/tests/sws_ops_aarch64$(EXESUF)
+
 FATE_LIBSWSCALE += $(FATE_LIBSWSCALE-yes)
 FATE_LIBSWSCALE_SAMPLES += $(FATE_LIBSWSCALE_SAMPLES-yes)
 FATE-$(CONFIG_SWSCALE) += $(FATE_LIBSWSCALE)
-- 
2.52.0


>From 05feaee7215bf48ffd745ea1d5a37599a6bc481c Mon Sep 17 00:00:00 2001
From: Ramiro Polla <[email protected]>
Date: Wed, 1 Apr 2026 12:41:14 +0200
Subject: [PATCH 2/2] ffbuild: introduce and use MV variable to move files

Instead of CP + RM.
---
 configure                   | 1 +
 ffbuild/common.mak          | 2 +-
 libswscale/aarch64/Makefile | 6 ++----
 3 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/configure b/configure
index fb1baf2eac..a5a1289f44 100755
--- a/configure
+++ b/configure
@@ -8575,6 +8575,7 @@ STRIP=$strip
 STRIPTYPE=$striptype
 NVCC=$nvcc
 CP=cp -p
+MV=mv
 LN_S=$ln_s
 CPPFLAGS=$CPPFLAGS
 CFLAGS=$CFLAGS
diff --git a/ffbuild/common.mak b/ffbuild/common.mak
index 7648e3241e..135930321d 100644
--- a/ffbuild/common.mak
+++ b/ffbuild/common.mak
@@ -28,7 +28,7 @@ ifndef V
 Q      = @
 ECHO   = printf "$(1)\t%s\n" $(2)
 BRIEF  = CC CXX OBJCC HOSTCC HOSTLD AS X86ASM AR LD LDXX STRIP CP WINDRES 
GLSLC NVCC BIN2C METALCC METALLIB
-SILENT = DEPCC DEPCXX DEPHOSTCC DEPAS DEPX86ASM RANLIB RM
+SILENT = DEPCC DEPCXX DEPHOSTCC DEPAS DEPX86ASM RANLIB RM MV
 
 MSG    = $@
 M      = @$(call ECHO,$(TAG),$@);
diff --git a/libswscale/aarch64/Makefile b/libswscale/aarch64/Makefile
index 0cbdb1b76e..eacbae8311 100644
--- a/libswscale/aarch64/Makefile
+++ b/libswscale/aarch64/Makefile
@@ -17,13 +17,11 @@ NEON-OBJS-$(CONFIG_UNSTABLE) += aarch64/ops_lookup.gen.o
 
 $(SUBDIR)aarch64/ops_neon.gen.S: $(SUBDIR)aarch64/ops_asmgen$(HOSTEXESUF)
        $(M)$< -ops > [email protected]
-       $(CP) [email protected] $@
-       $(RM) [email protected]
+       $(MV) [email protected] $@
 
 $(SUBDIR)aarch64/ops_lookup.gen.c: $(SUBDIR)aarch64/ops_asmgen$(HOSTEXESUF)
        $(M)$< -lookup > [email protected]
-       $(CP) [email protected] $@
-       $(RM) [email protected]
+       $(MV) [email protected] $@
 
 clean::
        $(RM) $(CLEANSUFFIXES:%=libswscale/aarch64/%)
-- 
2.52.0

_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to