3 # This file is the canonical location listing all the source files used
4 # to build the cairo library. Every source file is categorized as one of:
7 # * private header file (must end in -private.h except for cairoint.h)
10 # Every source file should be specified exactly once, grouped with the
11 # feature that uses the source file. If more than one feature use the
12 # file (like pdf_operators or font_subset files), the files should be
13 # appended to to the base cairo files, and the code inside them
14 # enabled/disabled using C preprocessor macros defined in cairoint.h.
15 # See how pdf_operators or font_subset are handled.
17 # The sources are picked up according to the configured features
18 # by the generated file Makefile.am.features or Makefile.win32.features.
20 # These are a few special source files. Those are not included in this
21 # file to not confuse build systems. Each build system must handle them
22 # separately. These files include:
25 # This file is generated by configure and includes macros signifying
26 # which features are enabled. This file should be installed like
27 # other public headers, but should NOT be distributed in the cairo
31 # This is a dummy header file used during the build, but it should
32 # NOT be installed. Its sole purpose is to make sure changes in the
33 # cairo version do not trigger a full rebuild of the library, but
34 # just the functions actually using the version information.
36 # * $(top_srcdir)/cairo-version.h:
37 # This is the real file holding the cairo version number. This file
38 # should be installed like other public headers. This is used during
39 # the build by cairo-version.c only.
41 # * cairo-supported-features.h:
42 # This file is generated by configure and includes macros signifying
43 # all supported features. This is used by gtk-doc to generate
44 # documentation for all those macros, enabled or not.
45 # This file is NOT used during the build of the library and should
46 # NOT be installed or distributed.
48 # Please follow the strict syntax of this file, including keeping file
52 cairo_headers = cairo.h cairo-deprecated.h
55 cairo-analysis-surface-private.h \
57 cairo-atomic-private.h \
58 cairo-cache-private.h \
59 cairo-clip-private.h \
60 cairo-combsort-private.h \
61 cairo-compiler-private.h \
62 cairo-fixed-private.h \
63 cairo-fixed-type-private.h \
64 cairo-freelist-private.h \
65 cairo-gstate-private.h \
66 cairo-hash-private.h \
67 cairo-image-info-private.h \
68 cairo-malloc-private.h \
69 cairo-meta-surface-private.h \
70 cairo-mutex-impl-private.h \
71 cairo-mutex-list-private.h \
72 cairo-mutex-private.h \
73 cairo-mutex-type-private.h \
74 cairo-output-stream-private.h \
75 cairo-paginated-private.h \
76 cairo-paginated-surface-private.h \
77 cairo-path-fixed-private.h \
78 cairo-path-private.h \
80 cairo-reference-count-private.h \
81 cairo-scaled-font-private.h \
82 cairo-skiplist-private.h \
83 cairo-spans-private.h \
84 cairo-surface-fallback-private.h \
85 cairo-surface-private.h \
86 cairo-types-private.h \
87 cairo-user-font-private.h \
88 cairo-wideint-private.h \
89 cairo-wideint-type-private.h \
92 cairo-analysis-surface.c \
96 cairo-base85-stream.c \
97 cairo-bentley-ottmann.c \
105 cairo-font-face-twin.c \
106 cairo-font-face-twin-data.c \
107 cairo-font-options.c \
114 cairo-image-surface.c \
117 cairo-meta-surface.c \
120 cairo-output-stream.c \
121 cairo-paginated-surface.c \
122 cairo-path-bounds.c \
126 cairo-path-in-fill.c \
127 cairo-path-stroke.c \
133 cairo-scaled-font.c \
139 cairo-stroke-style.c \
141 cairo-surface-fallback.c \
142 cairo-tor-scan-converter.c \
145 cairo-toy-font-face.c \
152 _cairo_font_subset_private = \
153 cairo-scaled-font-subsets-private.h \
154 cairo-truetype-subset-private.h \
155 cairo-type1-private.h \
156 cairo-type3-glyph-surface-private.h \
158 _cairo_font_subset_sources = \
160 cairo-scaled-font-subsets.c \
161 cairo-truetype-subset.c \
162 cairo-type1-fallback.c \
163 cairo-type1-subset.c \
164 cairo-type3-glyph-surface.c \
166 cairo_private += $(_cairo_font_subset_private)
167 cairo_sources += $(_cairo_font_subset_sources)
169 _cairo_pdf_operators_private = cairo-pdf-operators-private.h
170 _cairo_pdf_operators_sources = cairo-pdf-operators.c
171 cairo_private += $(_cairo_pdf_operators_private)
172 cairo_sources += $(_cairo_pdf_operators_sources)
174 cairo_png_sources = cairo-png.c
176 cairo_ps_headers = cairo-ps.h
177 cairo_ps_private = cairo-ps-surface-private.h
178 cairo_ps_sources = cairo-ps-surface.c
180 cairo_pdf_headers = cairo-pdf.h
181 cairo_pdf_private = cairo-pdf-surface-private.h
182 cairo_pdf_sources = cairo-pdf-surface.c cairo-deflate-stream.c
184 cairo_svg_headers = cairo-svg.h
185 cairo_svg_private = cairo-svg-surface-private.h
186 cairo_svg_sources = cairo-svg-surface.c
188 cairo_ft_headers = cairo-ft.h
189 cairo_ft_private = cairo-ft-private.h
190 cairo_ft_sources = cairo-ft-font.c
192 # These are private, even though they look like public headers
193 cairo_test_surfaces_private = \
194 test-fallback-surface.h \
195 test-fallback16-surface.h \
196 test-meta-surface.h \
197 test-null-surface.h \
198 test-paginated-surface.h \
200 cairo_test_surfaces_sources = \
201 test-fallback-surface.c \
202 test-fallback16-surface.c \
203 test-meta-surface.c \
204 test-null-surface.c \
205 test-paginated-surface.c \
208 cairo_xlib_headers = cairo-xlib.h
209 cairo_xlib_private = \
210 cairo-xlib-private.h \
211 cairo-xlib-surface-private.h \
212 cairo-xlib-xrender-private.h \
214 cairo_xlib_sources = \
215 cairo-xlib-display.c \
216 cairo-xlib-screen.c \
217 cairo-xlib-surface.c \
218 cairo-xlib-visual.c \
221 cairo_xlib_xrender_headers = cairo-xlib-xrender.h
223 # XXX split xcb-xrender. or better yet, merge it into xcb. xcb is so recent
224 # that it's hard to imagine having xcb but not render.
225 cairo_xcb_headers = cairo-xcb.h cairo-xcb-xrender.h
226 cairo_xcb_sources = cairo-xcb-surface.c
228 cairo_qt_headers = cairo-qt.h
229 cairo_qt_sources = cairo-qt-surface.cpp
231 cairo_quartz_headers = cairo-quartz.h
232 cairo_quartz_private = cairo-quartz-private.h
233 cairo_quartz_sources = cairo-quartz-surface.c
235 cairo_quartz_image_headers = cairo-quartz-image.h
236 cairo_quartz_image_sources = cairo-quartz-image-surface.c
238 cairo_quartz_font_sources = cairo-quartz-font.c
240 cairo_win32_headers = cairo-win32.h
241 cairo_win32_private = cairo-win32-private.h
242 cairo_win32_sources = cairo-win32-surface.c cairo-win32-printing-surface.c
244 cairo_win32_font_sources = cairo-win32-font.c
246 cairo_os2_headers = cairo-os2.h
247 cairo_os2_private = cairo-os2-private.h
248 cairo_os2_sources = cairo-os2-surface.c
250 # automake is stupid enough to always use c++ linker if we enable the
251 # following lines, even if beos surface is not enabled. Disable it for now.
252 cairo_beos_headers = cairo-beos.h
253 #cairo_beos_sources = cairo-beos-surface.cpp
255 cairo_gpu_gl_headers = cairo-gpu-gl.h
256 cairo_gpu_gl_private =
257 cairo_gpu_gl_sources = cairo-gpu-gl-surface.c
259 cairo_gpu_gallium_headers = cairo-gpu-gallium.h
260 cairo_gpu_gallium_private =
261 cairo_gpu_gallium_sources = cairo-gpu-gallium-surface.c
263 cairo_glitz_headers = cairo-glitz.h
264 cairo_glitz_private = cairo-glitz-private.h
265 cairo_glitz_sources = cairo-glitz-surface.c
267 cairo_directfb_headers = cairo-directfb.h
268 cairo_directfb_sources = cairo-directfb-surface.c
270 cairo_script_headers = cairo-script.h
271 cairo_script_sources = cairo-script-surface.c