Bug 44707

Summary: Add thirdparty directory and incorporate GLU tessellator
Product: WebKit Reporter: Kenneth Russell <kbr>
Component: WebCore Misc.Assignee: Kenneth Russell <kbr>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, cmarrin, dglazkov, fishd, hyatt, jamesr, mdelaney7, senorblanco, vangelis, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 44729    
Attachments:
Description Flags
Patch
kbr: commit-queue-
Revised patch fishd: review+, kbr: commit-queue-

Description Kenneth Russell 2010-08-26 12:32:45 PDT
For new rendering algorithms being incorporated into WebKit, the polygon tessellator from the OpenGL utility library is needed. Some small modifications were needed from the original sources in SGI's OpenGL Sample Implementation (http://oss.sgi.com/projects/ogl-sample/). It is desired to be able to build these sources on any platform that wishes to utilize these new algorithms. For this reason a 3rdparty directory is being added to WebCore and the GLU tessellator sources within.
Comment 1 Kenneth Russell 2010-08-26 12:39:06 PDT
Created attachment 65601 [details]
Patch

From the ChangeLog:

This directory is intended to contain copies of third-party libraries used by WebCore, in particular those which may require some modification in order to incorporate.

No tests at this time; these sources are being added in preparation for incorporating other code which uses them, at which point the code will be exercised and testable.
Comment 2 WebKit Review Bot 2010-08-26 12:43:12 PDT
Attachment 65601 [details] did not pass style-queue:

Failed to run "['WebKitTools/Scripts/check-webkit-style']" exit_code: 1
Last 3072 characters of output:
tyq-sort.h:114:  Extra space between void and pqDeletePriorityQ  [whitespace/declaration] [3]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:114:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:114:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:116:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:116:  Extra space between int and pqInit  [whitespace/declaration] [3]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:116:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:116:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:117:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:117:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:117:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:118:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:118:  Extra space between PQkey and pqExtractMin  [whitespace/declaration] [3]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:118:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:118:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:119:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:119:  Extra space between void and pqDelete  [whitespace/declaration] [3]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:119:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:119:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:121:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:121:  Extra space between PQkey and pqMinimum  [whitespace/declaration] [3]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:121:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:121:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:122:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:122:  Extra space between int and pqIsEmpty  [whitespace/declaration] [3]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:122:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/3rdparty/glu/libtess/priorityq-sort.h:122:  Extra space before )  [whitespace/parens] [2]
WebCore/3rdparty/glu/gluos.h:32:  #ifndef header guard has wrong style, please use: gluos_h  [build/header_guard] [5]
WebCore/3rdparty/glu/gluos.h:45:  One space before end of line comments  [whitespace/comments] [5]
Total errors found: 4489 in 34 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Kenneth Russell 2010-08-26 13:59:43 PDT
Created attachment 65616 [details]
Revised patch

Renamed 3rdparty directory to thirdparty on suggestion from hyatt.
Comment 4 WebKit Review Bot 2010-08-26 14:05:04 PDT
Attachment 65616 [details] did not pass style-queue:

Failed to run "['WebKitTools/Scripts/check-webkit-style']" exit_code: 1
Last 3072 characters of output:
y/glu/libtess/priorityq.h:114:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:114:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/libtess/priorityq.h:116:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/thirdparty/glu/libtess/priorityq.h:116:  Extra space between int and pqInit  [whitespace/declaration] [3]
WebCore/thirdparty/glu/libtess/priorityq.h:116:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:116:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/libtess/priorityq.h:117:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/thirdparty/glu/libtess/priorityq.h:117:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:117:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/libtess/priorityq.h:118:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/thirdparty/glu/libtess/priorityq.h:118:  Extra space between PQkey and pqExtractMin  [whitespace/declaration] [3]
WebCore/thirdparty/glu/libtess/priorityq.h:118:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:118:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/libtess/priorityq.h:119:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/thirdparty/glu/libtess/priorityq.h:119:  Extra space between void and pqDelete  [whitespace/declaration] [3]
WebCore/thirdparty/glu/libtess/priorityq.h:119:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:119:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/libtess/priorityq.h:121:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/thirdparty/glu/libtess/priorityq.h:121:  Extra space between PQkey and pqMinimum  [whitespace/declaration] [3]
WebCore/thirdparty/glu/libtess/priorityq.h:121:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:121:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/libtess/priorityq.h:122:  Tab found; better to use spaces  [whitespace/tab] [1]
WebCore/thirdparty/glu/libtess/priorityq.h:122:  Extra space between int and pqIsEmpty  [whitespace/declaration] [3]
WebCore/thirdparty/glu/libtess/priorityq.h:122:  Extra space after ( in function call  [whitespace/parens] [4]
WebCore/thirdparty/glu/libtess/priorityq.h:122:  Extra space before )  [whitespace/parens] [2]
WebCore/thirdparty/glu/internal_glu.h:36:  #ifndef header guard has wrong style, please use: internal_glu_h  [build/header_guard] [5]
WebCore/thirdparty/glu/internal_glu.h:113:  internal_gluNewTess is incorrectly named. Don't use underscores in your identifier names.  [readability/naming] [4]
WebCore/thirdparty/glu/internal_glu.h:141:  One space before end of line comments  [whitespace/comments] [5]
Total errors found: 4490 in 34 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 5 Adam Barth 2010-08-26 23:30:31 PDT
> If any of these errors are false positives, please file a bug against check-webkit-style.

We really need to teach the stylebot to ignore third-party code.
Comment 6 Darin Fisher (:fishd, Google) 2010-09-03 17:00:35 PDT
Comment on attachment 65616 [details]
Revised patch

View in context: https://bugs.webkit.org/attachment.cgi?id=65616&action=prettypatch

> WebCore/ChangeLog:30
> +        (dictNewDict):
nit: for new files that are added, it is nice to strip out mention of
the functions included in the new file since they aren't that helpful
when reading a ChangeLog entry like this.  you really just want to
know the set of files being added and the function names just add
noise.  (this was the advice that darin adler gave to me once upon
a time.)

otherwise, R=me
Comment 7 Kenneth Russell 2010-09-03 17:48:54 PDT
(In reply to comment #6)
> (From update of attachment 65616 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=65616&action=prettypatch
> 
> > WebCore/ChangeLog:30
> > +        (dictNewDict):
> nit: for new files that are added, it is nice to strip out mention of
> the functions included in the new file since they aren't that helpful
> when reading a ChangeLog entry like this.  you really just want to
> know the set of files being added and the function names just add
> noise.  (this was the advice that darin adler gave to me once upon
> a time.)

Will do this upon landing.

> otherwise, R=me
Comment 8 Kenneth Russell 2010-09-03 18:20:17 PDT
Committed r66784: <http://trac.webkit.org/changeset/66784>
Comment 9 James Robinson 2010-09-03 18:24:45 PDT
Committed r66785: <http://trac.webkit.org/changeset/66785>