Skip to content

Commit

Permalink
testsuite: Detect clang
Browse files Browse the repository at this point in the history
Clang doesn't like the -Wno-psabi argument that we want to pass to GCC.
Since clang is detected as GCC via __GNUC__, use ax_cv_c_compiler_vendor.
  • Loading branch information
rth7680 committed Nov 14, 2014
1 parent 5d69d57 commit b5ade2f
Showing 1 changed file with 38 additions and 38 deletions.
76 changes: 38 additions & 38 deletions testsuite/lib/libffi.exp
Expand Up @@ -100,46 +100,39 @@ proc libffi-init { args } {
global libffi_link_flags
global tool_root_dir
global ld_library_path

global using_gcc
global compiler_vendor

set blddirffi [pwd]/..
verbose "libffi $blddirffi"

# Are we building with GCC?
set tmp [grep ../config.status "GCC='yes'"]
if { [string match $tmp "GCC='yes'"] } {

set using_gcc "yes"
# Which compiler are we building with?
set tmp [grep ../config.log "^ax_cv_c_compiler_vendor.*$"]
regexp -- {^[^=]*=(.*)$} $tmp nil compiler_vendor

set gccdir [lookfor_file $tool_root_dir gcc/libgcc.a]
if {$gccdir != ""} {
set gccdir [file dirname $gccdir]
}
verbose "gccdir $gccdir"

set ld_library_path "."
append ld_library_path ":${gccdir}"

set compiler "${gccdir}/xgcc"
if { [is_remote host] == 0 && [which $compiler] != 0 } {
foreach i "[exec $compiler --print-multi-lib]" {
set mldir ""
regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
set mldir [string trimright $mldir "\;@"]
if { "$mldir" == "." } {
continue
}
if { [llength [glob -nocomplain ${gccdir}/${mldir}/libgcc_s*.so.*]] >= 1 } {
append ld_library_path ":${gccdir}/${mldir}"
if { [string match $compiler_vendor "gnu"] } {
set gccdir [lookfor_file $tool_root_dir gcc/libgcc.a]
if {$gccdir != ""} {
set gccdir [file dirname $gccdir]
}
verbose "gccdir $gccdir"

set ld_library_path "."
append ld_library_path ":${gccdir}"

set compiler "${gccdir}/xgcc"
if { [is_remote host] == 0 && [which $compiler] != 0 } {
foreach i "[exec $compiler --print-multi-lib]" {
set mldir ""
regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir
set mldir [string trimright $mldir "\;@"]
if { "$mldir" == "." } {
continue
}
if { [llength [glob -nocomplain ${gccdir}/${mldir}/libgcc_s*.so.*]] >= 1 } {
append ld_library_path ":${gccdir}/${mldir}"
}
}
}
}

} else {

set using_gcc "no"

}
}

# add the library path for libffi.
Expand Down Expand Up @@ -278,18 +271,25 @@ proc libffi-dg-runtest { testcases default-extra-flags } {
}

proc run-many-tests { testcases extra_flags } {
global using_gcc
if { [string match $using_gcc "yes"] } {
global compiler_vendor
switch $compiler_vendor {
"clang" {
set common "-W -Wall"
set optimizations { "-O0" "-O1" "-O2" "-O3" "-Os" }
}
"gnu" {
set common "-W -Wall -Wno-psabi"
set optimizations { "-O0" "-O2" "-O3" "-Os" "-O2 -fomit-frame-pointer" }
} else {
}
default {
# Assume we are using the vendor compiler.
set common ""
set optimizations { "" }
}
}

set targetabis { "" }
if [string match $using_gcc "yes"] {
if [string match $compiler_vendor "gnu"] {
if [istarget "i?86-*-*"] {
set targetabis {
""
Expand Down

0 comments on commit b5ade2f

Please sign in to comment.