Bug 102676

Summary: testsuite fails on i686
Product: colord Reporter: freedesktop
Component: clientAssignee: Richard Hughes <richard>
Status: NEW --- QA Contact:
Severity: normal    
Priority: medium CC: dave
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: full log of test suite
Failure log for Arch Linux x86_64

Description freedesktop 2017-09-12 13:44:13 UTC
Created attachment 134177 [details]
full log of test suite

The testsuite of colord 1.4.1 (current version in archlinux) fails if compiled and run on i686 due to imprecise float comparisons:

**
libcolord:ERROR:../colord/lib/colord/cd-test-private.c:1497:colord_icc_func: assertion failed (cd_icc_get_version (icc) == 3.4): (3.4 == 3.4)
-------

To clear the issue, I replaced 'g_assert_cmpfloat(a,==,b)' with 'g_assert_cmpfloat(fabs(a-b),<=,1e-15)' in lib/colord/cd-test-private.c

However, this looks like a hack to me - I'm open for better suggestions :-)

Cheers,
deep42thought
Comment 1 user 2017-09-12 14:23:50 UTC
Additional info:

When compiling on i686 (Arch Linux) there is this error/warning:

/usr/lib/gcc/i686-pc-linux-gnu/7.2.0/include/stddef.h:435: syntax error, unexpected identifier in '  __float128 __max_align_f128 __attribute__((__aligned__(__alignof(__float128))));' at '__float128'

Maybe related to the failing test?
Comment 2 David McInnis 2017-12-18 13:14:41 UTC
Created attachment 136247 [details]
Failure log for Arch Linux x86_64

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.