[Webkit-unassigned] [Bug 98038] New: [Qt] QNX build fails due to signature change in gl2.h header (glShaderSource)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 1 08:49:55 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=98038

           Summary: [Qt] QNX build fails due to signature change in gl2.h
                    header (glShaderSource)
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit Qt
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: milian.wolff at kdab.com
            Blocks: 74040


QtWebKit for QNX fails to compile with enabled 3D rendering:

qcc -Vgcc_ntoarmv7le -c -Wno-psabi -lang-c++ -g -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -D_REENTRANT -DQT_NO_CLIPBOARD -DSQLITE_CORE -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_OMIT_COMPLETE -DQT_OPENGL_SHIMS=1 -DBUILDING_QT__=1 -DENABLE_3D_RENDERING=1 -DENABLE_BLOB=1 -DENABLE_CHANNEL_MESSAGING=1 -DENABLE_CSS_BOX_DECORATION_BREAK=1 -DENABLE_CSS_EXCLUSIONS=1 -DENABLE_CSS_FILTERS=1 -DENABLE_CSS_IMAGE_SET=1 -DENABLE_CSS_REGIONS=1 -DENABLE_CSS_STICKY_POSITION=1 -DENABLE_DATALIST_ELEMENT=1 -DENABLE_DETAILS_ELEMENT=1 -DENABLE_FAST_MOBILE_SCROLLING=1 -DENABLE_FILTERS=1 -DENABLE_FTPDIR=1 -DENABLE_FULLSCREEN_API=1 -DENABLE_GESTURE_EVENTS=1 -DENABLE_ICONDATABASE=1 -DENABLE_IFRAME_SEAMLESS=1 -DENABLE_INPUT_TYPE_COLOR=1 -DENABLE_INSPECTOR=1 -DENABLE_INSPECTOR_SERVER=1 -DENABLE_JAVASCRIPT_DEBUGGER=1 -DENABLE_LEGACY_NOTIFICATIONS=1 -DENABLE_LEGACY_VIEWPORT_ADAPTION=1 -DENABLE_LEGACY_VENDOR_PREFIXES=1 -DENABLE_LEGACY_WEBKIT_BLOB_BUILDER=1 -DENABLE_METER_ELEMENT=1 -DENABLE_NOTIFICATIONS=1 -DENABLE_PAGE_VISIBILITY_API=1 -DENABLE_PROGRESS_ELEMENT=1 -DENABLE_REQUEST_ANIMATION_FRAME=1 -DENABLE_SHARED_WORKERS=1 -DENABLE_SMOOTH_SCROLLING=1 -DENABLE_SQL_DATABASE=1 -DENABLE_SVG=1 -DENABLE_SVG_FONTS=1 -DENABLE_TOUCH_ADJUSTMENT=1 -DENABLE_TOUCH_EVENTS=1 -DENABLE_WEB_SOCKETS=1 -DENABLE_WEB_TIMING=1 -DENABLE_WORKERS=1 -DWTF_USE_TILED_BACKING_STORE=1 -DHAVE_QTQUICK=1 -DHAVE_QTPRINTSUPPORT=1 -DHAVE_QSTYLE=1 -DHAVE_QTTESTLIB=1 -DWTF_USE_ZLIB=1 -DPLUGIN_ARCHITECTURE_UNSUPPORTED=1 -DWTF_USE_3D_GRAPHICS=1 -DENABLE_WEBGL=1 -DENABLE_CSS_SHADERS=1 -DENABLE_TOUCH_SLIDER=1 -DENABLE_ACCELERATED_2D_CANVAS=0 -DENABLE_ANIMATION_API=0 -DENABLE_BATTERY_STATUS=0 -DENABLE_CSP_NEXT=0 -DENABLE_CSS_GRID_LAYOUT=0 -DENABLE_CSS_HIERARCHIES=0 -DENABLE_CSS_IMAGE_ORIENTATION=0 -DENABLE_CSS_IMAGE_RESOLUTION=0 -DENABLE_CSS_VARIABLES=0 -DENABLE_CSS3_TEXT_DECORATION=0 -DENABLE_DASHBOARD_SUPPORT=0 -DENABLE_DATAGRID=0 -DENABLE_DATA_TRANSFER_ITEMS=0 -DENABLE_DEVICE_ORIENTATION=0 -DENABLE_DIRECTORY_UPLOAD=0 -DENABLE_DOWNLOAD_ATTRIBUTE=0 -DENABLE_FILE_SYSTEM=0 -DENABLE_GAMEPAD=0 -DENABLE_GEOLOCATION=0 -DENABLE_HIGH_DPI_CANVAS=0 -DENABLE_INDEXED_DATABASE=0 -DENABLE_INPUT_SPEECH=0 -DENABLE_INPUT_TYPE_DATE=0 -DENABLE_INPUT_TYPE_DATETIME=0 -DENABLE_INPUT_TYPE_DATETIMELOCAL=0 -DENABLE_INPUT_TYPE_MONTH=0 -DENABLE_INPUT_TYPE_TIME=0 -DENABLE_INPUT_TYPE_WEEK=0 -DENABLE_LEGACY_CSS_VENDOR_PREFIXES=0 -DENABLE_LINK_PREFETCH=0 -DENABLE_LINK_PRERENDER=0 -DENABLE_MATHML=0 -DENABLE_MEDIA_SOURCE=0 -DENABLE_MEDIA_STATISTICS=0 -DENABLE_MEDIA_STREAM=0 -DENABLE_MHTML=0 -DENABLE_MICRODATA=0 -DENABLE_MUTATION_OBSERVERS=0 -DENABLE_NAVIGATOR_CONTENT_UTILS=0 -DENABLE_NETSCAPE_PLUGIN_API=0 -DENABLE_NETWORK_INFO=0 -DENABLE_ORIENTATION_EVENTS=0 -DENABLE_QUOTA=0 -DENABLE_SCRIPTED_SPEECH=0 -DENABLE_SHADOW_DOM=0 -DENABLE_STYLE_SCOPED=0 -DENABLE_SVG_DOM_OBJC_BINDINGS=0 -DENABLE_TEXT_AUTOSIZING=0 -DENABLE_TEXT_NOTIFICATIONS_ONLY=0 -DENABLE_TOUCH_ICON_LOADING=0 -DENABLE_UNDO_MANAGER=0 -DENABLE_VIBRATION=0 -DENABLE_VIDEO=0 -DENABLE_VIDEO_TRACK=0 -DENABLE_WEB_AUDIO=0 -DENABLE_XSLT=0 -DBUILDING_WebCore -DBUILDING_WEBKIT -DQT_ASCII_CAST_WARNINGS -DSTATICALLY_LINKED_WITH_ANGLE -DSTATICALLY_LINKED_WITH_JavaScriptCore -DSTATICALLY_LINKED_WITH_WTF -DQT_SQL_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/home/milian/projects/qt5/install-qnx650/mkspecs/qnx-armv7le-qcc -I/home/milian/projects/qt5/qtwebkit/Source/WebCore -I. -I/home/milian/projects/qt5/qtwebkit/Source/WebCore -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/filesystem -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/geolocation -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/indexeddb -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/navigatorcontentutils -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/notifications -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/quota -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/webaudio -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/webdatabase -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/Modules/websockets -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/accessibility -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bindings -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bindings/generic -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bridge -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bridge/qt -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/css -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/dom -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/dom/default -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/editing -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/fileapi -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/history -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/html -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/html/canvas -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/html/parser -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/html/shadow -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/html/track -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/inspector -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/loader -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/loader/appcache -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/loader/archive -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/loader/cache -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/loader/icon -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/mathml -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/page -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/page/animation -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/page/qt -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/page/scrolling -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/animation -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/audio -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/filters -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/filters/arm -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/opengl -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/opentype -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/qt -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/surfaces -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/texmap -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/transforms -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders/bmp -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders/ico -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders/gif -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders/jpeg -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders/png -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/image-decoders/webp -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/leveldb -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/mock -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/network -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/network/qt -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/qt -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/sql -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/text -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/text/transcoder -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/plugins -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/rendering -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/rendering/mathml
-I/home/milian/projects/qt5/qtwebkit/Source/WebCore/rendering/style -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/rendering/svg -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/storage -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/svg -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/svg/animation -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/svg/graphics -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/svg/graphics/filters -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/svg/properties -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/testing -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/websockets -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/workers -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/xml -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/xml/parser -I/home/milian/projects/qt5/qtwebkit/Source/ThirdParty -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bridge/jsc -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bindings/js -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/bridge/c -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/testing/js -Igenerated -I/home/milian/projects/qt5/qtbase/src/3rdparty/sqlite -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/gpu -I/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/gpu -I/home/milian/projects/qt5/qtwebkit/Source -I/home/milian/projects/qt5/build-qnx650/qtwebkit/Source/include -I/home/milian/projects/qt5/install-qnx650/include -I/home/milian/projects/qt5/install-qnx650/include/QtScript -I/home/milian/projects/qt5/qtwebkit/Source/ThirdParty/ANGLE/include/GLSLANG -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore -I/home/milian/projects/qt5/qtwebkit/Source -I/home/milian/projects/qt5/qtwebkit/Source/WTF -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/assembler -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/bytecode -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/bytecompiler -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/heap -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/dfg -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/debugger -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/disassembler -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/interpreter -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/jit -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/llint -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/parser -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/profiler -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/runtime -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/tools -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/yarr -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/API -I/home/milian/projects/qt5/qtwebkit/Source/JavaScriptCore/ForwardingHeaders -I../JavaScriptCore/generated -I/home/milian/projects/qt5/qtwebkit/Source/WTF -I/home/milian/projects/qt5/install-qnx650/include/QtSql -I/home/milian/projects/qt5/install-qnx650/include/QtNetwork -I/home/milian/projects/qt5/install-qnx650/include/QtGui -I/home/milian/projects/qt5/install-qnx650/include/QtGui/5.0.0 -I/home/milian/projects/qt5/install-qnx650/include/QtGui/5.0.0/QtGui -I/home/milian/projects/qt5/install-qnx650/include/QtCore -I/home/milian/projects/qt5/install-qnx650/include/QtCore/5.0.0 -I/home/milian/projects/qt5/install-qnx650/include/QtCore/5.0.0/QtCore -I/opt/qnx650/target/qnx6/usr/include -I/opt/qnx650/target/qnx6/usr/include/freetype2 -I. -o obj/debug/home/milian/projects/qt5/build-qnx650/qtwebkit/Source/WebCore/generated/JSDirectoryReader.o generated/JSDirectoryReader.cpp
/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/OpenGLShims.cpp: In function 'bool WebCore::initializeOpenGLShims()':
/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/OpenGLShims.cpp:192: error: invalid conversion from 'void (*)(GLuint, GLsizei, const GLchar* const*, const GLint*)' to 'void (*)(GLuint, GLsizei, const char**, const GLint*)'

The reason here is that WebKit defines

typedef void (GLAPIENTRY *glShaderSourceType) (GLuint, GLsizei, const char**, const GLint*);

which is compatible to the Desktop OpenGL and older OpenGL 2 ES versions of glShaderSource. Yet recent OpenGL 2 ES versions have a different signature for this method:


typedef void (GLAPIENTRY *glShaderSourceType) (GLuint, GLsizei, const char* const*, const GLint*);

See e.g. http://www.khronos.org/opengles/sdk/docs/man/xhtml/glShaderSource.xml (old documentation, same signature as used by webkit)
and then compare to the actual gl2.h header: http://www.khronos.org/registry/gles/api/2.0/gl2.h - it contains:

GL_APICALL void         GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list