unittests: Skip prelinking test with gcc 8 or older

This was already skipped when running on the Ubuntu 18.04 version of gcc,
but it also fails with gcc 8.3.0 on Debian 10. Instead of hard-coding
specific versions to look for, do a version comparison.

Signed-off-by: Simon McVittie <smcv@collabora.com>
pull/10358/head
Simon McVittie 3 years ago committed by Eli Schwartz
parent 09a2603285
commit 42327eacbc
  1. 6
      unittests/linuxliketests.py

@ -1726,10 +1726,8 @@ class LinuxlikeTests(BasePlatformTests):
testdir = os.path.join(self.unit_test_dir, '86 prelinking') testdir = os.path.join(self.unit_test_dir, '86 prelinking')
env = get_fake_env(testdir, self.builddir, self.prefix) env = get_fake_env(testdir, self.builddir, self.prefix)
cc = detect_c_compiler(env, MachineChoice.HOST) cc = detect_c_compiler(env, MachineChoice.HOST)
if cc.id == "gcc": if cc.id == "gcc" and not version_compare(cc.version, '>=9'):
gccver = subprocess.check_output(['gcc', '--version']) raise SkipTest('Prelinking not supported with gcc 8 or older.')
if b'7.5.0' in gccver:
raise SkipTest('GCC on Bionic is too old to be supported.')
self.init(testdir) self.init(testdir)
self.build() self.build()
outlib = os.path.join(self.builddir, 'libprelinked.a') outlib = os.path.join(self.builddir, 'libprelinked.a')

Loading…
Cancel
Save