Bug 5062

Summary: Cairo should build with default PNG support
Product: cairo Reporter: Luis Menina <liberforce>
Component: generalAssignee: Carl Worth <cworth>
Status: RESOLVED FIXED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: high CC: newren
Version: 1.0.2   
Hardware: x86 (IA32)   
OS: Linux (All)   
URL: http://bugzilla.gnome.org/show_bug.cgi?id=319632
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 7141    

Description Luis Menina 2005-11-16 04:52:02 UTC
Cairo should build without PNG only in the same way that GTK+ does:

 - The user has to explicitly turn it off on the configure line
 - The user gets warned that building without PNG will not give you
   a fully functional cairo library.

It's really silly for apps to have to test for Cairo having PNG support
before using it.

Original bug was reported here: http://bugzilla.gnome.org/show_bug.cgi?id=319632
Comment 1 Björn Lindqvist 2006-01-07 11:24:33 UTC
This happens when you configure cairo without PNG:

configure: WARNING: Could not find libpng in the pkg-config search path
configure: WARNING: *** To run the tests, cairo must be built with png support ***
...
the following features:
  PNG functions: no
...

But when building with jhbuild it is very easy to miss those lines. Took me lots
of time to spot the problem. I suggest that the configure script should fail
unless invoked with --disable-png when it can't find libpng.
Comment 2 Elijah Newren 2006-03-05 11:42:14 UTC
This has bitten *lots* of Gnome testers; I really like Owen's comments on the
matter: http://bugzilla.gnome.org/show_bug.cgi?id=319632#c9.
Comment 3 Behdad Esfahbod 2006-03-05 11:54:22 UTC
This will be fixed pretty soon when my --enable-<backend> patch is integrated. 
But independently, note that Pango HEAD doesn't suffer from this bug anymore (or
at least it's not supposed to.)
Comment 4 Behdad Esfahbod 2006-06-06 16:01:30 UTC
This is fixed in latest snapshots.

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.