[FFmpeg-devel] [PATCH] configure: fix Microsoft tools detection
Martin Storsjö
martin at martin.st
Mon Jun 16 10:40:44 EEST 2025
On Sat, 14 Jun 2025, Kacper Michajlow wrote:
> On Sat, 14 Jun 2025 at 03:03, Kacper Michajłow <kasper93 at gmail.com> wrote:
>>
>> LLVM tools print installation path upon execution. If one uses LLVM
>> tools bundled with Microsoft Visual Studio installation, they would be
>> incorrectly detected as Microsoft's ones.
>>
>> Microsoft tools can have localized names, so a more specific string
>> check is not feasible, but luckily we can test if "Microsoft" is at the
>> beginning of the line, as it is always the case.
>>
>> Signed-off-by: Kacper Michajłow <kasper93 at gmail.com>
>> ---
>> configure | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/configure b/configure
>> index 534b443f7d..5b2a04ae6a 100755
>> --- a/configure
>> +++ b/configure
>> @@ -5124,9 +5124,9 @@ probe_cc(){
>> _flags_filter=msvc_flags
>> _ld_lib='lib%.a'
>> _ld_path='-libpath:'
>> - elif $_cc -nologo- 2>&1 | grep -q Microsoft || { $_cc -v 2>&1 | grep -q clang && $_cc -? > /dev/null 2>&1; }; then
>> + elif $_cc -nologo- 2>&1 | grep -q ^Microsoft || { $_cc -v 2>&1 | grep -q clang && $_cc -? > /dev/null 2>&1; }; then
>> _type=msvc
>> - if $_cc -nologo- 2>&1 | grep -q Microsoft; then
>> + if $_cc -nologo- 2>&1 | grep -q ^Microsoft; then
>> _ident=$($_cc 2>&1 | head -n1 | tr -d '\r')
>> else
>> _ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r')
>> @@ -5236,7 +5236,7 @@ if [ -z "$CC_DEPFLAGS" ] && [ "$dep_cc" != "$cc" ]; then
>> DEPCCFLAGS=$_flags
>> fi
>>
>> -if $ar 2>&1 | grep -q Microsoft; then
>> +if $ar 2>&1 | grep -q ^Microsoft; then
>> arflags="-nologo"
>> ar_o='-out:$@'
>> elif $ar 2>&1 | grep -q "\[D\] "; then
>> --
>> 2.45.1
>>
>
> Should be v2 to the previous patch, but forgot to tag it as such.
Hmm, not sure where that previous patch was - I don't see it recently at
least.
Anyway, this patch looks ok to me, thanks!
// Martin
More information about the ffmpeg-devel
mailing list