Bug 89652

Summary: make check fails for cairo 1.14.2 on Raspberry Pi 2
Product: cairo Reporter: stuarthirons20
Component: generalAssignee: Chris Wilson <chris>
Status: RESOLVED INVALID QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: ARM   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Exclude _bss

Description stuarthirons20 2015-03-18 10:21:18 UTC
Building cairo on a Raspberry Pi 2 (ARM Cortex-A7 MPCore processor) with the following sequence:

git clone git://git.cairographics.org/git/cairo
git verify-tag 1.14.2
git checkout -b build 1.14.2
./autogen.sh
make
make check

latter stage fails due to :
...
make[4]: Leaving directory '/home/pi/work/cairo/cairo/src'
make  check-TESTS
make[4]: Entering directory '/home/pi/work/cairo/cairo/src'
Checking that .libs/libcairo.so has the same symbol list as cairo.def
1a2,3
> __end__
> _bss_end__
FAIL: check-def.sh
Checking documentation for incorrect syntax
PASS: check-doc-syntax.sh
Checking public headers for missing cairo_public decorators
PASS: check-headers.sh
Checking .libs/libcairo.so for local PLT entries
PASS: check-plt.sh
Checking that public header files #include "cairo.h" first (or none)
Checking that private header files #include "some cairo header" first (or none)
Checking that source files #include "cairoint.h" first (or none)
Checking that there is no #include <cairo.*.h>
Checking that feature conditionals are used with #if only (not #ifdef)
PASS: check-preprocessor-syntax.sh
Check linking to the just built cairo library
PASS: check-link
========================================================================
1 of 6 tests failed
Please report to http://bugs.freedesktop.org/enter_bug.cgi?product=cairo
========================================================================
Makefile:2453: recipe for target 'check-TESTS' failed
Comment 1 Bryce Harrington 2015-06-27 07:54:04 UTC
Hmm, I'm not reproducing this bug on PC:

$ ./check-def.sh 
Checking that .libs/libcairo.so has the same symbol list as cairo.def
$ echo $?

But I'm not sure what __end__ and _bss_end__ signify.

It looks like the check-def.sh script essentially is running nm on .libs/libcairo.sh and comparing the (filtered) output with what's in cairo.def.  Perhaps you could do this manually to figure out what's going on?

I notice that the script excludes various things such as lines starting with __bss or _end, so perhaps it ought to also be excluding _bss?
Comment 2 Bryce Harrington 2015-06-27 07:56:03 UTC
Created attachment 116748 [details] [review]
Exclude _bss

Here's a patch you could try out to exclude the _bss* symbol that causes it to fail.  See if this enables the check to pass.
Comment 3 Bryce Harrington 2016-10-10 21:26:21 UTC
Ping?
Comment 4 Bryce Harrington 2018-06-14 00:24:26 UTC
Closing as expired, feel free to reopen if the issue is still relevant for that platform.  Feedback on the proposed patch would be appreciated.

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.