Skip to content
This repository was archived by the owner on Aug 19, 2024. It is now read-only.

Commit 088ec2d

Browse files
committed
2017.0.1-1 release
1 parent e74c449 commit 088ec2d

File tree

6,387 files changed

+1233244
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

6,387 files changed

+1233244
-1
lines changed

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,12 @@
11
# source-publish
2-
Sources used in Intel Python that have a license that requires publication: GPL, LGPL, MPL
2+
Sources used in Intel Python with a license that requires publication: GPL, LGPL, MPL
3+
4+
Each of the subdirectories is a component in Intel Python that has a license
5+
that requires publication of the sources. This includes GPL, LGPL, and MPL. We
6+
are publishing the original sources including any patches. Each component has
7+
its own license, so we do not provide a license for this repo. The repo is
8+
tagged with the release of Intel Python that uses it.
9+
10+
If you need the sources for a component that is not included here, please
11+
12+

cairo/cairo-1.12.18/AUTHORS

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
Josh Aas <[email protected]> Memory leak fix for quartz backend
2+
Daniel Amelang <[email protected]> Many (magic) floating-point optimizations
3+
Shawn T. Amundson <[email protected]> Build fix
4+
Olivier Andrieu <[email protected]> PNG backend
5+
Peter Dennis Bartok <[email protected]> Bug fix for clipping
6+
Dave Beckett <[email protected]> Build fixes, Debian packaging
7+
Kai-Uwe Behrmann <[email protected]> SVG bug fixes
8+
Christian Biesinger <[email protected]> BeOS backend
9+
Billy Biggs <[email protected]> Pixman code merge. Optimization. Fixes for subtle rendering bugs.
10+
Hans Breuer <[email protected]> win32 bug fixes, build fixes, and improvements
11+
Brian Cameron <[email protected]> Flag bug in Sun's X server
12+
Carlos Garcia Campos <[email protected]> libspectre integration into the test-suite
13+
Andrea Canciani <[email protected]> Bugs, quartz backend improvements and type 6/7 patterns.
14+
Damien Carbery <[email protected]> Build fixes
15+
Andrew Chant <[email protected]> Adding const where needed
16+
Steve Chaplin <[email protected]> Bug fixes for PNG reading
17+
Tomasz Cholewo <[email protected]> Bug fixes
18+
Manu Cornet <[email protected]> SVG build fix
19+
Frederic Crozat <[email protected]> Fix test suite for OPD platforms (IA64 or PPC64)
20+
Julien Danjou <[email protected]> XCB fixes
21+
Radek Doulík <[email protected]> Bug report and test case
22+
John Ehresman <[email protected]> Build fixes for win32
23+
John Ellson <[email protected]> First font/glyph extents functions
24+
Michael Emmel <[email protected]> DirectFB backend
25+
Miklós Erdélyi <[email protected]> Fix typo leading to a crash
26+
Behdad Esfahbod <[email protected]> Huge piles of bug fixes, improvements, and general maintenance
27+
Larry Ewing <[email protected]> Test case for group-clip
28+
Brian Ewins <[email protected]> ATSUI maintenance (first success at making it really work)
29+
Bertram Felgenhauer <[email protected]> Fixes for subtle arithmetic errors
30+
Damian Frank <[email protected]> Build system improvements for win32
31+
Bdale Garbee <[email protected]> Provided essential support for cairo achitecture sessions
32+
Jens Granseuer <[email protected]> Fixes to generate proper compiler flags
33+
Laxmi Harikumar <[email protected]> Build fix
34+
J. Ali Harlow <[email protected]> win32 backend updates
35+
Mathias Hasselmann <[email protected]> Significant reduction of calls to malloc
36+
Richard Henderson <[email protected]> "slim" macros for better shared libraries
37+
James Henstridge <[email protected]> Build fixes related to freetype
38+
Graydon Hoare <[email protected]> Support for non-render X server, first real text support
39+
Thomas Hunger <[email protected]> Initial version of cairo_in_stroke/fill
40+
Thomas Jaeger <[email protected]> Extended repeat modes for X
41+
Björn Lindqvist <[email protected]> Performance test cases
42+
Kristian Høgsberg <[email protected]> PDF backend, PS backend with meta-surfaces
43+
Amaury Jacquot <[email protected]> Documentation review, appplication testing
44+
Adrian Johnson <[email protected]> PDF backend improvement
45+
Michael Johnson <[email protected]> Bug fix for pre-C99 compilers
46+
Jonathon Jongsma <[email protected]> Fix documentation typos
47+
Øyvind Kolås <[email protected]> OpenVG backend, Bug fixes. Better default values.
48+
Martin Kretzschmar <[email protected]> Arithmetic fix for 64-bit architectures
49+
Mathieu Lacage <[email protected]> several bug/typo fixes
50+
Dominic Lachowicz <[email protected]> PDF conformance fix, fix image surface to zero out contents
51+
Alexander Larsson <[email protected]> Profiling and performance fixes.
52+
Tor Lillqvist <[email protected]> win32 build fixes, build scripts
53+
Jinghua Luo <[email protected]> Add bitmap glyph transformation, many freetype and glitz fixes
54+
Luke-Jr <[email protected]> Build fix for cross-compiling
55+
Kjartan Maraas <[email protected]> Several fixes for sparse, lots of debug help for multi-thread bugs
56+
Nis Martensen <[email protected]> Bug fix for sub paths
57+
Jordi Mas <[email protected]> Bug fix for cairo_show_text
58+
Nicholas Miell <[email protected]> Fixes for linking bugs on AMD64
59+
Eugeniy Meshcheryakov <[email protected]> PS/PDF font subsetting improvements
60+
Zakharov Mikhail <[email protected]> Build fix for HP-UX
61+
Christopher (Monty) Montgomery <[email protected]> Performnace fix (subimage_copy), multi-thread testing
62+
Tim Mooney <[email protected]> Fix test suite to compile with Solaris compiler
63+
Jeff Muizelaar <[email protected]> Patient, painful, pixman code merge. Many fixes for intricacies of dashing.
64+
Yevgen Muntyan <[email protected]> win32 build fix
65+
Declan Naughton <[email protected]> Fix documentation typos
66+
Peter Nilsson <[email protected]> Glitz backend
67+
Henning Noren <[email protected]> Fix memory leak
68+
Geoff Norton <[email protected]> Build fixes
69+
Robert O'Callahan <[email protected]> Const-correctness fixes, several new API functions for completeness (and to help mozilla)
70+
Ian Osgood <[email protected]> XCB backend maintenance
71+
Benjamin Otte <[email protected]> Refinements to cairo/perf timing, OpenGL backend fixups, random fixes
72+
Mike Owens <[email protected]> Bug fixes
73+
Emmanuel Pacaud <[email protected]> SVG backend
74+
Keith Packard <[email protected]> Original concept, polygon tessellation, dashing, font metrics rewrite
75+
Stuart Parmenter <[email protected]> Original GDI+ backend, win32 fixes
76+
Alfred Peng <[email protected]> Fixes for Sun compilers and for a memory leak
77+
Christof Petig <[email protected]> Build fixes related to freetype
78+
Joonas Pihlaja <[email protected]> Huge improvements to the tessellator performance
79+
Mart Raudsepp <[email protected]> Build fixes
80+
David Reveman <[email protected]> New pattern API, glitz backend
81+
Calum Robinson <[email protected]> Quartz backend
82+
Pavel Roskin <[email protected]> Several cleanups to eliminate warnings
83+
Tim Rowley <[email protected]> Quartz/ATSUI fixes, X server workarounds, win32 glyph path support, test case to expose gradient regression
84+
Soeren Sandmann <[email protected]> Lots of MMX love for pixman compositing
85+
Uli Schlachter <[email protected]> Some more XCB fixes
86+
Torsten Schönfeld <[email protected]> Build fixes
87+
Jamey Sharp <[email protected]> Surface/font backend virtualization, XCB backend
88+
Jason Dorje Short <[email protected]> Build fixes and bug fixes
89+
Jeff Smith <[email protected]> Fixes for intricacies of stroking code
90+
Travis Spencer <[email protected]> XCB backend fix
91+
Bill Spitzak <[email protected]> Build fix to find Xrender.h without xrender.pc
92+
Zhe Su <[email protected]> Add support for fontconfig's embeddedbitmap option
93+
Owen Taylor <[email protected]> Font rewrite, documentation, win32 backend
94+
Pierre Tardy <[email protected]> EGL support and testing, OpenVG backend
95+
Karl Tomlinson <[email protected]> Optimisation and obscure bug fixes (mozilla)
96+
Alp Toker <[email protected]> Fix several code/comment typos
97+
Malcolm Tredinnick <[email protected]> Documentation fixes
98+
David Turner <[email protected]> Optimize gradient calculations
99+
Kalle Vahlman <[email protected]> Allow perf reports to be compared across different platforms
100+
Sasha Vasko <[email protected]> Build fix to compile without xlib backend
101+
Vladimir Vukicevic <[email protected]> Quartz backend rewrite, win32/quartz maintenance
102+
Jonathan Watt <[email protected]> win32 fixes
103+
Peter Weilbacher <[email protected]> OS/2 backend
104+
Dan Williams <[email protected]> Implemnt MMX function to help OLPC
105+
Chris Wilson <[email protected]> Large-scale robustness improvements, (warn_unsed_result and malloc failure injection)
106+
Carl Worth <[email protected]> Original library, support for paths, images
107+
Richard D. Worth <[email protected]> Build fixes for cygwin
108+
Kent Worsnop <[email protected]> Fix PDF dashing bug
109+
Dave Yeo <[email protected]> Build fix for win32
110+
111+
(please let us know if we have missed anyone)

cairo/cairo-1.12.18/BIBLIOGRAPHY

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
Here's an effort to document some of the academic work that was
2+
referenced during the implementation of cairo. It is presented in the
3+
context of operations as they would be performed by either
4+
cairo_stroke() or cairo_fill():
5+
6+
Given a Bézier path, approximate it with line segments:
7+
8+
The deCasteljau algorithm
9+
"Outillages methodes calcul", P de Casteljau, technical
10+
report, - Andre Citroen Automobiles SA, Paris, 1959
11+
12+
That technical report might be "hard" to find, but fortunately
13+
this algorithm will be described in any reasonable textbook on
14+
computational geometry. Two that have been recommended by
15+
cairo contributors are:
16+
17+
"Computational Geometry, Algorithms and Applications", M. de
18+
Berg, M. van Kreveld, M. Overmars, M. Schwarzkopf;
19+
Springer-Verlag, ISBN: 3-540-65620-0.
20+
21+
"Computational Geometry in C (Second Edition)", Joseph
22+
O'Rourke, Cambridge University Press, ISBN 0521640105.
23+
24+
Then, if stroking, construct a polygonal representation of the pen
25+
approximating a circle (if filling skip three steps):
26+
27+
"Good approximation of circles by curvature-continuous Bezier
28+
curves", Tor Dokken and Morten Daehlen, Computer Aided
29+
Geometric Design 8 (1990) 22-41.
30+
31+
Add points to that pen based on the initial/final path faces and take
32+
the convex hull:
33+
34+
Convex hull algorithm
35+
36+
[Again, see your favorite computational geometry
37+
textbook. Should cite the name of the algorithm cairo uses
38+
here, if it has a name.]
39+
40+
Now, "convolve" the "tracing" of the pen with the tracing of the path:
41+
42+
"A Kinetic Framework for Computational Geometry", Leonidas
43+
J. Guibas, Lyle Ramshaw, and Jorge Stolfi, Proceedings of the
44+
24th IEEE Annual Symposium on Foundations of Computer Science
45+
(FOCS), November 1983, 100-111.
46+
47+
The result of the convolution is a polygon that must be filled. A fill
48+
operations begins here. We use a very conventional Bentley-Ottmann
49+
pass for computing the intersections, informed by some hints on robust
50+
implementation courtesy of John Hobby:
51+
52+
John D. Hobby, Practical Segment Intersection with Finite
53+
Precision Output, Computation Geometry Theory and
54+
Applications, 13(4), 1999.
55+
56+
http://cm.bell-labs.com/who/hobby/93_2-27.pdf
57+
58+
Hobby's primary contribution in that paper is his "tolerance square"
59+
algorithm for robustness against edges being "bent" due to restricting
60+
intersection coordinates to the grid available by finite-precision
61+
arithmetic. This is one algorithm we have not implemented yet.
62+
63+
We use a data-structure called Skiplists in the our implementation
64+
of Bentley-Ottmann:
65+
66+
W. Pugh, Skip Lists: a Probabilistic Alternative to Balanced Trees,
67+
Communications of the ACM, vol. 33, no. 6, pp.668-676, 1990.
68+
69+
http://citeseer.ist.psu.edu/pugh90skip.html
70+
71+
The random number generator used in our skip list implementation is a
72+
very small generator by Hars and Petruska. The generator is based on
73+
an invertable function on Z_{2^32} with full period and is described
74+
in
75+
76+
Hars L. and Petruska G.,
77+
``Pseudorandom Recursions: Small and Fast Pseurodandom
78+
Number Generators for Embedded Applications'',
79+
Hindawi Publishing Corporation
80+
EURASIP Journal on Embedded Systems
81+
Volume 2007, Article ID 98417, 13 pages
82+
doi:10.1155/2007/98417
83+
84+
http://www.hindawi.com/getarticle.aspx?doi=10.1155/2007/98417&e=cta
85+
86+
From the result of the intersection-finding pass, we are currently
87+
computing a tessellation of trapezoids, (the exact manner is
88+
undergoing some work right now with some important speedup), but we
89+
may want to rasterize directly from those edges at some point.
90+
91+
Given the set of tessellated trapezoids, we currently execute a
92+
straightforward, (and slow), point-sampled rasterization, (and
93+
currently with a near-pessimal regular 15x17 grid).
94+
95+
We've now computed a mask which gets fed along with the source and
96+
destination into cairo's fundamental rendering equation. The most
97+
basic form of this equation is:
98+
99+
destination = (source IN mask) OP destination
100+
101+
with the restriction that no part of the destination outside the
102+
current clip region is affected. In this equation, IN refers to the
103+
Porter-Duff "in" operation, while OP refers to a any user-selected
104+
Porter-Duff operator:
105+
106+
T. Porter & T. Duff, Compositing Digital Images Computer
107+
Graphics Volume 18, Number 3 July 1984 pp 253-259
108+
109+
http://keithp.com/~keithp/porterduff/p253-porter.pdf

cairo/cairo-1.12.18/BUGS

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
If you find a bug in cairo we would love to hear about it. We're also
2+
trying to make cairo better, and learning about the bugs that users
3+
encounter is an essential part of that. So we really appreciate the
4+
extra effort users put in to providing high-quality bug reports.
5+
6+
There are two acceptable ways to report cairo bugs, and you can choose
7+
which you prefer:
8+
9+
1) Bugzilla bug tracking database:
10+
11+
You can use the following web interface to report new bugs, follow
12+
up on previous bug reports, and search for existing, known
13+
bugs. Just use the "cairo" product:
14+
15+
http://bugs.freedesktop.org
16+
17+
It is necessary to go through a quick account creation process,
18+
(with email address verification), in order to be able to report
19+
new bugs in bugzilla. We apologize for any inconvenience that might
20+
cause, and hope it won't prevent you from reporting bugs.
21+
22+
2) Cairo mailing list:
23+
24+
For people who cannot stand the bugzilla interface, you can just
25+
send an email to cairo mailing list ([email protected]). The
26+
mailing list only allows posting from subscribers, so use the
27+
following page for subscription instructions:
28+
29+
http://cairographics.org/lists
30+
31+
Again, we apologize for any inconvenience this subscription step
32+
might cause, but we've found it necessary to require this in order
33+
to enjoy spam-free discussions on the list.
34+
35+
If you don't actually _want_ to be a subscriber to the mailing
36+
list, but just want to be able to send a message, the easiest thing
37+
to do is to go through the subscription process, and then use the
38+
preferences page to disable message delivery to your address.
39+
40+
Which of the above you use to report bugs depends on your own
41+
preferences. Some people find just typing an email message much easier
42+
than using the web-based forms on bugzilla. Others greatly prefer the
43+
ability to check back on a specific bug entry in bugzilla without
44+
having to ask on the mailing list if an issue has been resolved.
45+
46+
Regardless of which method you use, here are some general tips that
47+
will help you improve the quality of your bug report, (which will help
48+
in getting the bug fixed sooner):
49+
50+
1) Check to see if the bug has been reported already. It's pretty easy
51+
to run a search or two against the cairo product in the
52+
http://bugs.freedesktop.org bugzilla database. Another place to
53+
look for known bugs is the cairo ROADMAP:
54+
55+
http://cairographics.org/ROADMAP
56+
57+
which shows a planned schedule of releases and which bug fixes are
58+
being planned for each release.
59+
60+
2) Provide an accurate description of the bug with detailed steps for
61+
how we can reproduce the problem.
62+
63+
3) If possible provide a minimal test case demonstrating the bug. A
64+
great test case would be a minimal self-contained function in C or
65+
python or whatever language you are using for cairo. The function
66+
might accept nothing more than a cairo context, (cairo_t* in C).
67+
68+
4) If you feel like being particularly helpful, you could craft this
69+
minimal test case in the form necessary for cairo's test
70+
suite. This isn't much more work than writing a minimal
71+
function. Just look at the cairo/test/README file and imitate the
72+
style of existing test cases.
73+
74+
If you do submit a test case, be sure to include Copyright
75+
information, (with the standard MIT licensing blurb if you want us
76+
to include your test in the test case). Also, including a reference
77+
image showing the expected result will be extremely useful.
78+
79+
5) Finally, the best bug report also comes attached with a patch to
80+
cairo to fix the bug. So send this too if you have it! Otherwise,
81+
don't worry about it and we'll try to fix cairo when we can.
82+
83+
Thanks, and have fun with cairo!
84+
85+
-Carl

0 commit comments

Comments
 (0)