mirror of
https://github.com/partic2/libffi
synced 2026-11-09 17:47:19 +00:00
Use the proper C++ compiler to run C++ tests
Running the C compiler with -shared-libgcc -lstdc++ does not work on non-GCC compilers.
This commit is contained in:
+2
-2
@@ -1,4 +1,4 @@
|
||||
language: c
|
||||
language: cpp
|
||||
compiler:
|
||||
- gcc
|
||||
- clang
|
||||
@@ -12,7 +12,7 @@ matrix:
|
||||
|
||||
before_script:
|
||||
- sudo apt-get install dejagnu texinfo
|
||||
- if [ "$HOST" = i386-pc-linux-gnu ] ; then sudo apt-get install gcc-multilib g++-multilib && CC="$CC -m32" ; fi
|
||||
- if [ "$HOST" = i386-pc-linux-gnu ] ; then sudo apt-get install gcc-multilib g++-multilib && CC="$CC -m32" && CXX="$CXX -m32" ; fi
|
||||
|
||||
script:
|
||||
- ./autogen.sh
|
||||
|
||||
@@ -29,6 +29,7 @@ m4_rename([_AC_ARG_VAR_PRECIOUS],[real_PRECIOUS])
|
||||
m4_define([_AC_ARG_VAR_PRECIOUS],[])
|
||||
save_CFLAGS=$CFLAGS
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
CFLAGS=$save_CFLAGS
|
||||
m4_undefine([_AC_ARG_VAR_PRECIOUS])
|
||||
m4_rename_force([real_PRECIOUS],[_AC_ARG_VAR_PRECIOUS])
|
||||
@@ -57,6 +58,7 @@ fi
|
||||
|
||||
cat > local.exp <<EOF
|
||||
set CC_FOR_TARGET "$CC"
|
||||
set CXX_FOR_TARGET "$CXX"
|
||||
EOF
|
||||
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
@@ -222,6 +222,10 @@ proc libffi_target_compile { source dest type options } {
|
||||
lappend options "libs= -lpthread"
|
||||
}
|
||||
|
||||
if { [string match "*.cc" $source] } {
|
||||
lappend options "c++"
|
||||
}
|
||||
|
||||
verbose "options: $options"
|
||||
return [target_compile $source $dest $type $options]
|
||||
}
|
||||
|
||||
@@ -19,10 +19,7 @@ libffi-init
|
||||
|
||||
global srcdir subdir
|
||||
|
||||
run-many-tests [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] ""
|
||||
if { [string match $using_gcc "yes"] } {
|
||||
run-many-tests [lsort [glob -nocomplain $srcdir/$subdir/*.cc]] "-shared-libgcc -lstdc++"
|
||||
}
|
||||
run-many-tests [lsort [glob -nocomplain -- $srcdir/$subdir/*.{c,cc}]] ""
|
||||
|
||||
dg-finish
|
||||
|
||||
|
||||
Reference in New Issue
Block a user