[FFmpeg-cvslog] ffbuild: Avoid using the --preprocessor argument to windres

Martin Storsjö git at videolan.org
Sat Mar 1 12:32:36 EET 2025


ffmpeg | branch: release/3.4 | Martin Storsjö <martin at martin.st> | Sat May 15 00:42:38 2021 +0300| [4767a711c131ee4058000076044bdc42b4c2254d] | committer: Leo Izen

ffbuild: Avoid using the --preprocessor argument to windres

Instead use --preprocessor-arg; in binutils 2.36, the --preprocessor
flag was changed so that it no longer accepts a string containing
multiple arguments, but the whole --preprocessor argument is
treated as the path to the preprocessor executable (where the path
can contain spaces).

It's currently unclear whether this behaviour will stay or if it
is going to be reverted in the future, see discussion at [1]. Just
to be safe, avoid using the --preprocessor argument. Don't redeclare
the full preprocessing command, but just add the $(CC_DEPFLAGS) options.

Based on a patch by Kyle Schwartz.

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=27594

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4767a711c131ee4058000076044bdc42b4c2254d
---

 configure          | 1 -
 ffbuild/common.mak | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/configure b/configure
index 60977cd3f2..1d591ae103 100755
--- a/configure
+++ b/configure
@@ -6917,7 +6917,6 @@ LD_LIB=$LD_LIB
 LD_PATH=$LD_PATH
 DLLTOOL=$dlltool
 WINDRES=$windres
-DEPWINDRES=$dep_cc
 DOXYGEN=$doxygen
 LDFLAGS=$LDFLAGS
 LDEXEFLAGS=$LDEXEFLAGS
diff --git a/ffbuild/common.mak b/ffbuild/common.mak
index e168fb2cfd..468b323715 100644
--- a/ffbuild/common.mak
+++ b/ffbuild/common.mak
@@ -83,7 +83,7 @@ COMPILE_NVCC = $(call COMPILE,NVCC)
 	-$(if $(ASMSTRIPFLAGS), $(STRIP) $(ASMSTRIPFLAGS) $@)
 
 %.o: %.rc
-	$(WINDRES) $(IFLAGS) --preprocessor "$(DEPWINDRES) -E -xc-header -DRC_INVOKED $(CC_DEPFLAGS)" -o $@ $<
+	$(WINDRES) $(IFLAGS) $(foreach ARG,$(CC_DEPFLAGS),--preprocessor-arg "$(ARG)") -o $@ $<
 
 %.i: %.c
 	$(CC) $(CCFLAGS) $(CC_E) $<



More information about the ffmpeg-cvslog mailing list