tests: Allow objcopy --help to fail, because it fails on FreeBSD

This is a partial revert of b248f3481ced. Eventually, this commit can be
dropped once `objcopy --help` doesn’t exit with a non-zero status on
FreeBSD.

See: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2360#note_1318608

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
This commit is contained in:
Philip Withnall 2021-11-24 12:01:39 +00:00
parent f496d28093
commit dc243a5113

View File

@ -683,7 +683,14 @@ if not meson.is_cross_build() or meson.has_exe_wrapper()
objcopy_supports_add_symbol = false objcopy_supports_add_symbol = false
objcopy = find_program('objcopy', required : false) objcopy = find_program('objcopy', required : false)
if objcopy.found() if objcopy.found()
objcopy_supports_add_symbol = run_command(objcopy, '--help', check: true).stdout().contains('--add-symbol') # FIXME: This should be `check: true` because we never really expect
# `objcopy --help` to fail, given that `objcopy` exists. However, it does
# fail on FreeBSD because ELF Tool Chain has
# [a bug](https://sourceforge.net/p/elftoolchain/code/3950/).
# This can be changed back to `check: true` once our CI uses a FreeBSD
# version which includes the fix.
# See https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2360#note_1318608
objcopy_supports_add_symbol = run_command(objcopy, '--help', check: false).stdout().contains('--add-symbol')
endif endif
ld = find_program('ld', required : false) ld = find_program('ld', required : false)