Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 355181 - www-client/chromium doesn't build with libpng 1.5
Summary: www-client/chromium doesn't build with libpng 1.5
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: libpng-1.5
  Show dependency tree
 
Reported: 2011-02-16 14:03 UTC by Hanno Böck
Modified: 2011-08-11 23:55 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
chromium-webkit-libpng15.patch (chromium-webkit-libpng15.patch,3.95 KB, patch)
2011-03-28 13:58 UTC, iGentoo
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hanno Böck gentoo-dev 2011-02-16 14:03:52 UTC
chromium 10.0.648.45 doesn't build with libpng 1.5.

It seems to be an issue within webkit, though I tried porting the webkit-gtk-patch (bug #355015), but it's nontrivial. Also found a patch for chromium, but that didn't work either. It's attached to the upstream bug:
http://code.google.com/p/chromium/issues/detail?id=73019

Error:
  x86_64-pc-linux-gnu-g++ '-DNO_HEAPCHECKER' '-DCHROMIUM_BUILD' '-DENABLE_REMOTING=1' '-DUSE_PROPRIETARY_CODECS' '-DENABLE_GPU=1' '-DWEBCORE_NAVIGATOR_VENDOR="Google Inc."' '-DENABLE_3D_CANVAS=1' '-DENABLE_3D_PLUGIN=1' '-DENABLE_BLOB=1' '-DENABLE_BLOB_SLICE=1' '-DENABLE_CHANNEL_MESSAGING=1' '-DENABLE_CLIENT_BASED_GEOLOCATION=1' '-DENABLE_DASHBOARD_SUPPORT=0' '-DENABLE_DATABASE=1' '-DENABLE_DATAGRID=0' '-DENABLE_DEVICE_ORIENTATION=1' '-DENABLE_DIRECTORY_UPLOAD=1' '-DENABLE_DOM_STORAGE=1' '-DENABLE_EVENTSOURCE=1' '-DENABLE_FILE_SYSTEM=1' '-DENABLE_FILTERS=1' '-DENABLE_GEOLOCATION=1' '-DENABLE_ICONDATABASE=0' '-DENABLE_INDEXED_DATABASE=1' '-DENABLE_INPUT_SPEECH=1' '-DENABLE_JAVASCRIPT_DEBUGGER=1' '-DENABLE_JSC_MULTIPLE_THREADS=0' '-DENABLE_LINK_PREFETCH=1' '-DENABLE_METER_TAG=1' '-DENABLE_NOTIFICATIONS=1' '-DENABLE_OFFLINE_WEB_APPLICATIONS=1' '-DENABLE_OPENTYPE_SANITIZER=1' '-DENABLE_ORIENTATION_EVENTS=0' '-DENABLE_PROGRESS_TAG=1' '-DENABLE_REQUEST_ANIMATION_FRAME=1' '-DENABLE_RUBY=1' '-DENABLE_SANDBOX=1' '-DENABLE_SHARED_WORKERS=1' '-DENABLE_SVG=1' '-DENABLE_SVG_ANIMATION=1' '-DENABLE_SVG_AS_IMAGE=1' '-DENABLE_SVG_FONTS=1' '-DENABLE_SVG_FOREIGN_OBJECT=1' '-DENABLE_SVG_USE=1' '-DENABLE_TOUCH_EVENTS=1' '-DENABLE_V8_SCRIPT_DEBUG_SERVER=1' '-DENABLE_VIDEO=1' '-DENABLE_WEB_SOCKETS=1' '-DENABLE_WEB_TIMING=1' '-DENABLE_WORKERS=1' '-DENABLE_XHR_RESPONSE_BLOB=1' '-DENABLE_XPATH=1' '-DENABLE_XSLT=1' '-DWTF_USE_WEBP=1' '-DWTF_USE_WEBKIT_IMAGE_DECODERS=1' '-DWTF_USE_ACCELERATED_COMPOSITING=1' '-DENABLE_3D_RENDERING=1' '-DENABLE_ACCELERATED_2D_CANVAS=1' '-DBUILDING_CHROMIUM__=1' '-DUSE_SYSTEM_MALLOC=1' '-DWTF_USE_PTHREADS=1' '-DUSE_SYSTEM_ICU' '-DSK_BUILD_NO_IMAGE_ENCODE' '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' '-DGR_SKIP_2POINTRADIAL_PROGRAMS' '-DUSE_SYSTEM_LIBPNG' '-DUSE_SYSTEM_LIBXML' '-DUSE_SYSTEM_LIBJPEG' '-D__STDC_FORMAT_MACROS' '-DNDEBUG' '-DNVALGRIND' '-DDYNAMIC_ANNOTATIONS_ENABLED=0' -Igpu -Iout/Release/obj.target/geni -Ithird_party/WebKit/Source/WebCore -Ithird_party/WebKit/Source/WebCore/accessibility -Ithird_party/WebKit/Source/WebCore/accessibility/chromium -Ithird_party/WebKit/Source/WebCore/bindings -Ithird_party/WebKit/Source/WebCore/bindings/generic -Ithird_party/WebKit/Source/WebCore/bindings/v8 -Ithird_party/WebKit/Source/WebCore/bindings/v8/custom -Ithird_party/WebKit/Source/WebCore/bindings/v8/specialization -Ithird_party/WebKit/Source/WebCore/css -Ithird_party/WebKit/Source/WebCore/dom -Ithird_party/WebKit/Source/WebCore/dom/default -Ithird_party/WebKit/Source/WebCore/editing -Ithird_party/WebKit/Source/WebCore/fileapi -Ithird_party/WebKit/Source/WebCore/history -Ithird_party/WebKit/Source/WebCore/html -Ithird_party/WebKit/Source/WebCore/html/canvas -Ithird_party/WebKit/Source/WebCore/html/parser -Ithird_party/WebKit/Source/WebCore/html/shadow -Ithird_party/WebKit/Source/WebCore/inspector -Ithird_party/WebKit/Source/WebCore/loader -Ithird_party/WebKit/Source/WebCore/loader/appcache -Ithird_party/WebKit/Source/WebCore/loader/archive -Ithird_party/WebKit/Source/WebCore/loader/cache -Ithird_party/WebKit/Source/WebCore/loader/icon -Ithird_party/WebKit/Source/WebCore/mathml -Ithird_party/WebKit/Source/WebCore/notifications -Ithird_party/WebKit/Source/WebCore/page -Ithird_party/WebKit/Source/WebCore/page/animation -Ithird_party/WebKit/Source/WebCore/page/chromium -Ithird_party/WebKit/Source/WebCore/platform -Ithird_party/WebKit/Source/WebCore/platform/animation -Ithird_party/WebKit/Source/WebCore/platform/audio -Ithird_party/WebKit/Source/WebCore/platform/audio/chromium -Ithird_party/WebKit/Source/WebCore/platform/chromium -Ithird_party/WebKit/Source/WebCore/platform/graphics -Ithird_party/WebKit/Source/WebCore/platform/graphics/chromium -Ithird_party/WebKit/Source/WebCore/platform/graphics/filters -Ithird_party/WebKit/Source/WebCore/platform/graphics/gpu -Ithird_party/WebKit/Source/WebCore/platform/graphics/opentype -Ithird_party/WebKit/Source/WebCore/platform/graphics/skia -Ithird_party/WebKit/Source/WebCore/platform/graphics/transforms -Ithird_party/WebKit/Source/WebCore/platform/image-decoders -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/bmp -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/gif -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/ico -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/jpeg -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/png -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/skia -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/xbm -Ithird_party/WebKit/Source/WebCore/platform/image-decoders/webp -Ithird_party/WebKit/Source/WebCore/platform/image-encoders/skia -Ithird_party/WebKit/Source/WebCore/platform/mock -Ithird_party/WebKit/Source/WebCore/platform/network -Ithird_party/WebKit/Source/WebCore/platform/network/chromium -Ithird_party/WebKit/Source/WebCore/platform/sql -Ithird_party/WebKit/Source/WebCore/platform/text -Ithird_party/WebKit/Source/WebCore/platform/text/transcoder -Ithird_party/WebKit/Source/WebCore/plugins -Ithird_party/WebKit/Source/WebCore/plugins/chromium -Ithird_party/WebKit/Source/WebCore/rendering -Ithird_party/WebKit/Source/WebCore/rendering/style -Ithird_party/WebKit/Source/WebCore/rendering/svg -Ithird_party/WebKit/Source/WebCore/storage -Ithird_party/WebKit/Source/WebCore/storage/chromium -Ithird_party/WebKit/Source/WebCore/svg -Ithird_party/WebKit/Source/WebCore/svg/animation -Ithird_party/WebKit/Source/WebCore/svg/graphics -Ithird_party/WebKit/Source/WebCore/svg/graphics/filters -Ithird_party/WebKit/Source/WebCore/svg/properties -Ithird_party/WebKit/Source/WebCore/thirdparty/glu -Ithird_party/WebKit/Source/WebCore/webaudio -Ithird_party/WebKit/Source/WebCore/websockets -Ithird_party/WebKit/Source/WebCore/workers -Ithird_party/WebKit/Source/WebCore/xml -Ithird_party/angle/include/GLSLANG -Iout/Release/obj/gen/webkit -Iout/Release/obj/gen/webkit/bindings -Ithird_party/WebKit/Source/JavaScriptCore -Ithird_party/WebKit/Source/JavaScriptCore/wtf -I. -Iskia/config -Ithird_party/skia/include/config -Ithird_party/skia/include/core -Ithird_party/skia/include/effects -Ithird_party/skia/include/gpu -Ithird_party/skia/gpu/include -Iskia/ext -Ithird_party/iccjpeg -Ithird_party/libwebp -Ithird_party/libwebp/webp -Ithird_party/npapi -Ithird_party/npapi/bindings -Ithird_party/ots/include -Ithird_party/sqlite -Ithird_party/harfbuzz/contrib -Ithird_party/harfbuzz/src -pthread -fno-exceptions -Wall -Wno-unused-parameter -Wno-missing-field-initializers -D_FILE_OFFSET_BITS=64 -fvisibility=hidden -pipe -fPIC -fno-strict-aliasing -I/usr/include/libpng15 -I/usr/include/libxml2 -I/usr/include/libxml2 -pthread -DQT_SHARED -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore -O2 -fno-ident -fdata-sections -ffunction-sections -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -MMD -MF out/Release/.deps/out/Release/obj.target/webcore_platform/third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.o.d.raw -O2 -march=core2 -pipe -DGENTOO_CHROMIUM_ENABLE_GECKO_MEDIAPLAYER -c -o out/Release/obj.target/webcore_platform/third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.o third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp: In function 'WebCore::ColorProfile WebCore::readColorProfile(png_struct*, png_info*)':
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:231:89: error: invalid conversion from 'char**' to 'png_byte**'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:231:89: error:   initializing argument 5 of 'png_uint_32 png_get_iCCP(const png_struct*, const png_info*, char**, int*, png_byte**, png_uint_32*)'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp: In member function 'void WebCore::PNGImageDecoder::headerAvailable()':
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:244:28: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:245:29: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:248:12: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:248:40: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:322:68: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:323:12: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp: In member function 'void WebCore::PNGImageDecoder::rowAvailable(unsigned char*, unsigned int, int)':
third_party/WebKit/Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:346:31: error: invalid use of incomplete type 'struct png_struct'
/usr/include/libpng15/png.h:803:16: error: forward declaration of 'struct png_struct'
Comment 1 iGentoo 2011-03-28 13:58:14 UTC
Created attachment 267541 [details, diff]
chromium-webkit-libpng15.patch
Comment 2 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-04-02 13:38:52 UTC
Patches have landed upstream. Please let me know if you'd like them to be backported. Note that Chromium has very short release cycles, so I'd expect it to be available in stable channel releases within about 8 weeks.
Comment 3 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-05-01 08:43:15 UTC
The upstream patch http://trac.webkit.org/changeset/82344 has landed about 5 weeks ago. I'd expect it to be in at least the dev channel releases. If anyone wants to verify it (test which version of www-client/chromium compiles against libpng-1.5), great.
Comment 4 Mike Gilbert gentoo-dev 2011-06-26 20:50:40 UTC
I can build aganst libpng-1.5 with the chromium trunk, but not the dev channel.

Works: 14.0.804.0 (Developer Build f78fd02 Linux)

Broken: www-client/chromium-14.0.797.0

third_party/WebKit/Source/WebCore/platform/image-encoders/skia/PNGImageEncoder.cpp:47:44: error: invalid use of incomplete type ‘struct png_struct’
/usr/include/libpng15/png.h:811:16: error: forward declaration of ‘struct png_struct’
make: *** [out/Release/obj.target/webcore_platform/third_party/WebKit/Source/WebCore/platform/image-encoders/skia/PNGImageEncoder.o] Error 1
Comment 5 Mike Gilbert gentoo-dev 2011-06-26 20:54:53 UTC
Looks like this was fixed by angelos in a recent webkit change.

https://bugs.webkit.org/show_bug.cgi?id=61738
Comment 6 Christoph Mende (RETIRED) gentoo-dev 2011-06-29 07:34:52 UTC
my patch is in 14.0.803.0, which Paweł added yesterday
Comment 7 Christoph Mende (RETIRED) gentoo-dev 2011-06-29 10:05:15 UTC
also, emerge just finished here. 14.0.803.0 builds fine against libpng-1.5 (and with gcc-4.6 btw)
Comment 8 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-06-29 10:39:51 UTC
(In reply to comment #7)
> also, emerge just finished here. 14.0.803.0 builds fine against libpng-1.5 (and
> with gcc-4.6 btw)

Excellent. Thank you for testing. I'll keep the bugs open until 14.x moves into ~arch, which should happen within a few weeks.
Comment 9 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-08-08 21:54:42 UTC
Just tested here:

www-client/chromium-13.0.782.109 fails with libpng-1.5
www-client/chromium-14.0.835.18 is fine with libpng-1.5

So waiting for 14.x to hit ~arch.
Comment 10 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2011-08-11 23:55:55 UTC
chromium-14.x is now in ~arch, closing