Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#28183 closed defect (fixed)

pngmeta: error: 'png_IDAT' undeclared

Reported by: vinc17@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: png Cc: ryandesign (Ryan Carsten Schmidt)
Port: pngmeta

Description

pngmeta doesn't seem to be compatible with libpng 1.4:

pngmeta.c: In function 'png_skip_till_end':
pngmeta.c:117: warning: 'idat_size' is deprecated (declared at /opt/local/include/png.h:1199)
pngmeta.c:128: warning: 'chunk_name' is deprecated (declared at /opt/local/include/png.h:1205)
pngmeta.c:129: warning: 'chunk_name' is deprecated (declared at /opt/local/include/png.h:1205)
pngmeta.c:129: error: 'png_IDAT' undeclared (first use in this function)
pngmeta.c:129: error: (Each undeclared identifier is reported only once
pngmeta.c:129: error: for each function it appears in.)
[... lots of warnings about deprecated identifiers ...]

Please revert to libpng 1.2 or add a new libpng12 port. Alternatively remove pngmeta (it seems that exiftool can be used instead).

Change History (5)

comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Keywords: png added
Owner: changed from ryandesign@… to macports-tickets@…
Port: libpng removed
Priority: HighNormal
Summary: libpng upgrade to 1.4 breaks pngmetapngmeta: error: 'png_IDAT' undeclared

We're not reverting to libpng 1.2. pngmeta didn't build with libpng 1.2 either; see #26263.

comment:2 in reply to:  1 ; Changed 13 years ago by vinc17@…

Replying to ryandesign@…:

We're not reverting to libpng 1.2. pngmeta didn't build with libpng 1.2 either; see #26263.

You're wrong. I installed pngmeta when libpng 1.2.8_2 was installed. And I doubt that libpng 1.2.44 was incompatible with 1.2.8 (FYI, in Debian, pngmeta is OK with libpng 1.2.44). #26263 may be a user-specific problem.

comment:3 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

I've committed a small fix to address the issues reported in this ticket in r75517. This returns me to experiencing the issues reported in #26263.

comment:4 in reply to:  2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

Replying to vinc17@…:

Replying to ryandesign@…:

We're not reverting to libpng 1.2. pngmeta didn't build with libpng 1.2 either; see #26263.

You're wrong. I installed pngmeta when libpng 1.2.8_2 was installed.

That's good to know! I can confirm that pngmeta builds with 1.2.8, but not 1.2.44. I've added this info to #26263.

And I doubt that libpng 1.2.44 was incompatible with 1.2.8

At least in this case, it appears to be.

comment:5 Changed 13 years ago by vinc17@…

For the png_IDAT problem, libpng 1.4 no longer has it (see 1.4.0beta79 in /opt/local/share/doc/libpng-1.4.5/CHANGES and the source). And in libpng 1.2.44, png_IDAT was defined only if PNG_USE_GLOBAL_ARRAYS was defined:

#ifdef PNG_USE_GLOBAL_ARRAYS
PNG_EXPORT_VAR (png_byte FARDATA) png_IHDR[5];
PNG_EXPORT_VAR (png_byte FARDATA) png_IDAT[5];
[...]

What's strange is that, still according to /opt/local/share/doc/libpng-1.4.5/CHANGES, the other changes related to these arrays seem to have been done only in 1.0.5c and 1.0.5d.

Note: See TracTickets for help on using tickets.