Commit 9fd11e51 authored by Alexander Bilyak's avatar Alexander Bilyak Committed by Michael Niedermayer

configure: fix clang-cl detection

When using clang-cl it expects parameters passed in MSVC-style, so appropriate toolchain should be selected.
As soon as both clang and clang-cl report themselfs as "clang" with -v option the only chance to detect
clang-cl is passing -? option to both which is valid for clang-cl.exe and not for clang.exe.
Reviewed-by: 's avatarDale Curtis <dalecurtis@chromium.org>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 3e003a98
......@@ -4339,7 +4339,7 @@ probe_cc(){
_depflags='-MMD'
_cflags_speed='-O3'
_cflags_size='-Os'
elif $_cc -v 2>&1 | grep -q clang; then
elif $_cc -v 2>&1 | grep -q clang && ! $_cc -? > /dev/null 2>&1; then
_type=clang
_ident=$($_cc --version 2>/dev/null | head -n1)
_depflags='-MMD -MF $(@:.o=.d) -MT $@'
......@@ -4410,7 +4410,7 @@ probe_cc(){
_flags_filter=msvc_flags
_ld_lib='lib%.a'
_ld_path='-libpath:'
elif $_cc -nologo- 2>&1 | grep -q Microsoft; then
elif $_cc -nologo- 2>&1 | grep -q Microsoft || $_cc -v 2>&1 | grep -q clang && $_cc -? > /dev/null 2>&1; then
_type=msvc
_ident=$($_cc 2>&1 | head -n1 | tr -d '\r')
_DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment