[FFmpeg-devel] [PATCH] configure: Fix Microsoft tools detection
Martin Storsjö
martin at martin.st
Thu Feb 3 14:47:50 EET 2022
On Thu, 3 Feb 2022, Marvin Scholz wrote:
> On 3 Feb 2022, at 13:33, Martin Storsjö wrote:
>
>> On Thu, 3 Feb 2022, Marvin Scholz wrote:
>>
>>>
>>>
>>> On 3 Feb 2022, at 12:55, Hendrik Leppkes wrote:
>>>
>>>> On Thu, Feb 3, 2022 at 12:34 PM Martin Storsjö <martin at martin.st>
>>>> wrote:
>>>>>
>>>>> I remember that there has been some variance throughout the
>>>>> versions for
>>>>> exactly what MSVC prints as the identification thoughout the
>>>>> versions, but
>>>>> I think 'Microsoft.*Optimizing.*Compiler' should be safe.
>>>>>
>>>>
>>>> I was wondering if non-english locale would translate that string,
>>>> but
>>>> I can't easily test that, I don't think.
>>>>
>>>
>>> Sorry, need to correct myself. It is indeed localized I was just
>>> lacking
>>> the language pack…
>>>
>>> For example in german it is:
>>>
>>> Microsoft (R) C/C++-Optimierungscompiler Version 19.30.30709 für x64
>>> Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
>>
>> Oh, thanks for that!
>>
>> I presume that this also could break the other existing check for
>> armasm too? If you run e.g. "vsdevcmd -host_arch=x64 -arch=arm64" and
>> then "armasm64", what does that print?
>>
>
> Interestingly that one does not seem localized:
>
> C:\Program Files\Microsoft Visual Studio\2022\Community>armasm64
> Microsoft (R) ARM Macro Assembler Version 14.30.30709.0 for 64 bits
> Copyright (C) Microsoft Corporation. All rights reserved.
That's interesting!
I tried to have a look at what e.g. meson does for detection. It doesn't
look that much at the output, but first detects clang-cl specifically,
then plain clang, then moves on to MSVC itself (matching only
'Microsoft'). Meson does, however, check a longer regex for identifying
and disambiguating the 'rc' tool from windres. Is 'rc' localized?
// Martin
More information about the ffmpeg-devel
mailing list