New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #35949 (closed defect: fixed)

Opened 20 months ago

Last modified 12 months ago

povray @3.6.1_7 Build failure with libpng 1.5

Reported by: murrayeisenberg@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: haspatch Cc: ryandesign@…, dersh@…, egall@…
Port: povray

Description (last modified by ryandesign@…) (diff)

OS X 10.8.1, Xcode 4.4.1 with corresponding command-line tools.

After doing 'port selfupdate' I ran 'port upgrade outdated'. The latter aborted after:

--->  Attempting to fetch povray-3.6.1_7.darwin_12.x86_64.tbz2 from http://lil.fr.packages.macports.org/povray
--->  Fetching distfiles for povray
--->  Verifying checksum(s) for povray
--->  Extracting povray
--->  Applying patches to povray
--->  Configuring povray
--->  Building povray
Error: org.macports.build for port povray returned: command execution failed
Please see the log file for port povray for details:
   /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_povray/povray/main.log
Error: Unable to upgrade port: 1

In the log, aside from many "deprecated" warnings, the first error listed is:

:info:build png_pov.cpp:170:19: error: member access into incomplete type 'png_struct' (aka 'png_struct_def')
:info:build           longjmp(png_ptr->jmpbuf,1);
:info:build                          ^

There were numerous other errors of the same kind.

In response to a message I posted to macports-users@…, Jeremy Lavergne replied, "That's due to the libpng API change recently; we'll need to update all the packages affected."

Attachments

povray build failure.txt (92.8 KB) - added by murrayeisenberg@… 20 months ago.
povray build log
povray-3.7.0.RC6.diff (2.9 KB) - added by ryandesign@… 20 months ago.
patch-boost-1.50.diff (4.2 KB) - added by ryandesign@… 20 months ago.
patch-configure-stat.diff (271 bytes) - added by ryandesign@… 20 months ago.
patch-lseek64.diff (1.6 KB) - added by ryandesign@… 20 months ago.
patch-vfe-uint.diff (563 bytes) - added by ryandesign@… 20 months ago.

Change History

Changed 20 months ago by murrayeisenberg@…

povray build log

comment:1 Changed 20 months ago by bcbarnes@…

the port "grace" is also affected by this libpng change.

comment:2 Changed 20 months ago by ryandesign@…

  • Cc ryandesign@… added
  • Keywords haspatch added; libpng removed
  • Description modified (diff)
  • Summary changed from povray @3.6.1_7 Build failure to povray @3.6.1_7 Build failure with libpng 1.5

povray 3.6.1 was released in 2004; it's not surprising it's not compatible with libpng 1.5.

For other software affected by this incompatibility I've been able to find patches in other distributions to fix it. But for povray what I found is that they instead updated to a release candidate of 3.7.0, and I'm inclined to agree that's a better choice, since 3.6.1 is so old. I'm attaching a patch that updates the port to 3.7.0.RC6, and a few extra patches needed to make this compile. It builds for me on Mountain Lion, but I am not familiar with povray and don't know how to test whether it functions correctly. If there are no objections, I'll commit it, but I would prefer to first have confirmation that it works (from someone familiar with povray).

Changed 20 months ago by ryandesign@…

Changed 20 months ago by ryandesign@…

Changed 20 months ago by ryandesign@…

Changed 20 months ago by ryandesign@…

Changed 20 months ago by ryandesign@…

comment:3 Changed 20 months ago by dersh@…

  • Cc dersh@… added

Cc Me!

comment:4 follow-up: ↓ 5 Changed 19 months ago by bcbarnes@…

Maybe this should just be committed without feedback since something that builds is better than something that doesn't? I appreciate the work on the patchset, Ryan.

For what it's worth, the solution by homebrew devs was to apply this (macports) patch to force use of internal libpng: browser:trunk/dports/graphics/povray/files/patch-configure?rev=92166

discussion here: https://github.com/mxcl/homebrew/issues/14895

Last edited 19 months ago by ryandesign@… (previous) (diff)

comment:5 in reply to: ↑ 4 Changed 19 months ago by ryandesign@…

Replying to bcbarnes@…:

Maybe this should just be committed without feedback since something that builds is better than something that doesn't?

Yes, I think I'll probably do that. I'd rather move forward to the current presumably-soon-to-be-released version than continue to languish with an 8-year-old one.

comment:6 Changed 19 months ago by ryandesign@…

  • Status changed from new to closed
  • Resolution set to fixed

comment:7 Changed 12 months ago by egall@…

  • Cc egall@… added

Cc Me!

Note: See TracTickets for help on using tickets.