Skip to content

contrib: x264: Fix building for windows on arm after recent refactorings

Martin Storsjö requested to merge mstorsjo/vlc:x264-as into master

The recent refactorings of the contribs broke the build of x264 for windows on arm.

The following commits require changes to this file:

commit cfeea778135bf125ad2720a97199b7f1233b07af
Date:   Thu Sep 15 10:28:30 2022 +0200

    contrib: put variables after the configure call

    It should make no different where the variables are. They should be before the
    target name if there is one.

For regular autoconf scripts, it's possible to pass environment variables as arguments to the configure script, however not all scripts named "configure" are autoconf and support this. In particular, x264 and ffmpeg's configure scripts don't support this feature. Therefore, setting $(X264_AS) as argument doesn't have any effect, and just makes configure print a warning about an unrecognized option like this:

    Unknown option AS=./tools/gas-preprocessor.pl -arch arm -as-type clang -force-thumb -- armv7-w64-mingw32-gcc -mimplicit-it=always, ignored
commit 697a2fcda3321c44f0ef2898b513851ba699ade7
Date:   Mon Sep 19 09:05:27 2022 +0200

    contrib: build autotools/make targets in a build directory

Since this change, when we set AS=./tools/gas-preprocessor.pl, we now must set AS=../tools/gas-preprocessor.pl instead, to account for the different build directory.

commit d4c40209e85d51e1681a9aa8b7d38d0eb4caf39a
Date:   Thu Sep 15 09:58:03 2022 +0200

    contrib: factorize configure/make calls

Since this change, $(MAKECONFIGURE) expands to a series of "cd $</_build && ../configure ..", so just setting AS="..." before that doesn't work, as the AS variable only would get set for the cd command. Instead change X264_AS to expand to "export AS=...;" so that the variable has effect on all commands in the same subshell.

Merge request reports