Build failure with poppler-0.26

Bug #1315142 reported by Matthias Kilian
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Critical
Matthias Kilian

Bug Description

Hi,

after updating poppler on OpenBSD to the latest and greatest stable version (0.26), the build of inkscape (0.48.4) broke, because there were some incompatible API changes in poppler-0.26.

A quick hack suitable for the inkscape package of OpenBSD is attached, but a better fix needs a little bit more love (and #ifdefs).

-- kili

Tags: build
Revision history for this message
Matthias Kilian (kili-p) wrote :
su_v (suv-lp)
tags: added: build
Changed in inkscape:
importance: Undecided → High
Revision history for this message
Alex Valavanis (valavanisalex) wrote :

Thanks for the patch! We will need to add some configuration checking though, I guess, so we can ensure that we're not breaking things on older versions.

This is a perennial issue because we use private (internal) Poppler headers. (see bug #239544)

Revision history for this message
su_v (suv-lp) wrote :

Build failure of lp:inkscape/0.48.x r10025 and lp:inkscape r13331 with poppler 0.26 confirmed on OS X 10.7.5.

Changed in inkscape:
milestone: none → 0.91
status: New → Triaged
tags: added: backport-proposed
Revision history for this message
su_v (suv-lp) wrote :

Build failure log with current trunk (r13331) and poppler 0.26 attached.

Revision history for this message
jazzynico (jazzynico) wrote :

> so we can ensure that we're not breaking things on older versions.

Just tested on Windows XP, Inkscape 0.48.x branch revision 10006, official devlibs (Poppler 0.12). The patch compiles correctly and Inkscape imports basic PDF files with no obvious issue.

Revision history for this message
su_v (suv-lp) wrote :

> so we can ensure that we're not breaking things on older versions.

On OS X 10.7.5, the attached version of the patch (ported to trunk) compiles successfully with
- Inkscape trunk r13333 and poppler 0.26.0
but fails with
- inkscape trunk r13333 and poppler 0.18.4
- inkscape trunk r13333 and poppler 0.22.1
- inkscape trunk r13333 and poppler 0.24.5

AFAICT there are two kind of tests needed:
poppler 0.18.4 already failed with
- GfxColorSpace::parse()
poppler 0.22.1 and 0.24.5 failed with
- GfxPattern *lookupPattern()
- GfxShading *lookupShading()

Changed in inkscape:
importance: High → Critical
tags: added: blocker
Revision history for this message
Matthias Kilian (kili-p) wrote :

The following patch may need some testing, but be warned that it's ugly ;-)

Initially done on 0.48.4 (which is the version in the openbsd ports tree), then applied to the trunk and manually fixed conflicts, but yet *untested*. (because it would be a royal pain to roll back to old poppler versions on my openbsd build machine just for testing).

So, if some brave soul could test this diff, I'd be happy (and if it works, I'd be even more happy).

Revision history for this message
su_v (suv-lp) wrote :

Inkscape 0.48+devel r13402 + inkscape-trunk.diff from comment #7 compiled successfully on OS X 10.7.5 with
- poppler 0.18.4
- poppler 0.22.1
- poppler 0.24.5
- poppler 0.26.0

Revision history for this message
ScislaC (scislac) wrote :

Backported patch for 0.48.x only compile tested against Trusty w/ stock Poppler 0.24.5

Revision history for this message
su_v (suv-lp) wrote :

Inkscape 0.48.x r10032 + poppler26-48x.patch from comment #9 compiled successfully on OS X 10.7.5 with
- poppler 0.18.4
- poppler 0.22.1
- poppler 0.24.5
- poppler 0.26.0

Revision history for this message
ScislaC (scislac) wrote :

Committed to trunk r13405 and backported to 0.48.x r10033

Changed in inkscape:
assignee: nobody → Matthias Kilian (kili-p)
milestone: 0.91 → 0.48.5
status: Triaged → Fix Committed
Revision history for this message
ScislaC (scislac) wrote :

10 years later after getting pulled away... Thank you for the patch Matthias!

su_v (suv-lp)
tags: removed: blocker
tags: removed: backport-proposed
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.