Libffi testsuite uses relative directories for include paths.  For
multilibbed targets we run the tests from the the main target build
directory, so using relative paths leads to the wrong fiules being
included by the tests.  Fix by using variables that point into the
build dir for the current multilib variant being tested.

Forwarded upstream: https://github.com/libffi/libffi/pull/965

libffi/ChangeLog:
        PR libffi/125417
        * testsuite/lib/libffi.exp (libffi_target_compile): Use
        ${libffi_include} and ${blddirffi} instead of "../include" and
        ".." for include paths.

Signed-off-by: Pietro Monteiro <[email protected]>
---
 libffi/testsuite/lib/libffi.exp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libffi/testsuite/lib/libffi.exp b/libffi/testsuite/lib/libffi.exp
index 577c4d28183..01cc12fa3b4 100644
--- a/libffi/testsuite/lib/libffi.exp
+++ b/libffi/testsuite/lib/libffi.exp
@@ -398,9 +398,9 @@ proc libffi_target_compile { source dest type options } {
         lappend  options "additional_flags=$TOOL_OPTIONS"
     }
 
-    # search for ffi_mips.h in srcdir, too
-    # lappend options "additional_flags=-I${libffi_include} 
-I${srcdir}/../include  -I${libffi_include}/.."
-    lappend options "additional_flags=-I ../include -I ${srcdir}/../include  
-I .."
+    # Search for include files in build_dir/include, build_dir and 
source_dir/include.
+    # The .. in the last path is necessary because srcdir points to libffi 
source/testsuite.
+    lappend options "additional_flags=-I${libffi_include} -I${blddirffi} 
-I${srcdir}/../include"
     if { [string match $type "executable"] } {
 
         lappend options "additional_flags=${libffi_link_flags}"

base-commit: 29e4b7f1100ad3dd611da6fc3314a41978c5fc25
-- 
2.43.0

Reply via email to