diff options
-rw-r--r-- | meta/classes-global/sanity.bbclass | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/meta/classes-global/sanity.bbclass b/meta/classes-global/sanity.bbclass index 7f83239c6e..d415611e3d 100644 --- a/meta/classes-global/sanity.bbclass +++ b/meta/classes-global/sanity.bbclass | |||
@@ -607,9 +607,9 @@ def drop_v14_cross_builds(d): | |||
607 | bb.utils.remove(stamp + "*") | 607 | bb.utils.remove(stamp + "*") |
608 | bb.utils.remove(workdir, recurse = True) | 608 | bb.utils.remove(workdir, recurse = True) |
609 | 609 | ||
610 | def check_cpp_toolchain(d): | 610 | def check_cpp_toolchain_flag(d, flag, error_message=None): |
611 | """ | 611 | """ |
612 | it checks if the c++ compiling and linking to libstdc++ works properly in the native system | 612 | Checks if the C++ toolchain support the given flag |
613 | """ | 613 | """ |
614 | import shlex | 614 | import shlex |
615 | import subprocess | 615 | import subprocess |
@@ -622,12 +622,12 @@ def check_cpp_toolchain(d): | |||
622 | } | 622 | } |
623 | """ | 623 | """ |
624 | 624 | ||
625 | cmd = shlex.split(d.getVar("BUILD_CXX")) + ["-x", "c++","-", "-o", "/dev/null", "-lstdc++"] | 625 | cmd = shlex.split(d.getVar("BUILD_CXX")) + ["-x", "c++","-", "-o", "/dev/null", flag] |
626 | try: | 626 | try: |
627 | subprocess.run(cmd, input=cpp_code, capture_output=True, text=True, check=True) | 627 | subprocess.run(cmd, input=cpp_code, capture_output=True, text=True, check=True) |
628 | return None | 628 | return None |
629 | except subprocess.CalledProcessError as e: | 629 | except subprocess.CalledProcessError as e: |
630 | return f"An unexpected issue occurred during the C++ toolchain check: {str(e)}" | 630 | return error_message or f"An unexpected issue occurred during the C++ toolchain check: {str(e)}" |
631 | 631 | ||
632 | def sanity_handle_abichanges(status, d): | 632 | def sanity_handle_abichanges(status, d): |
633 | # | 633 | # |
@@ -802,7 +802,7 @@ def check_sanity_version_change(status, d): | |||
802 | status.addresult(check_case_sensitive(tmpdir, "TMPDIR")) | 802 | status.addresult(check_case_sensitive(tmpdir, "TMPDIR")) |
803 | 803 | ||
804 | # Check if linking with lstdc++ is failing | 804 | # Check if linking with lstdc++ is failing |
805 | status.addresult(check_cpp_toolchain(d)) | 805 | status.addresult(check_cpp_toolchain_flag(d, "-lstdc++")) |
806 | 806 | ||
807 | def sanity_check_locale(d): | 807 | def sanity_check_locale(d): |
808 | """ | 808 | """ |