# Makefile.sources # # This file is the canonical location listing all the source files used # to build the cairo library. Every source file is categorized as one of: # # * public header file # * private header file (must end in -private.h except for cairoint.h) # * source code file # # Every source file should be specified exactly once, grouped with the # feature that uses the source file. If more than one feature use the # file (like pdf_operators or font_subset files), the files should be # appended to to the base cairo files, and the code inside them # enabled/disabled using C preprocessor macros defined in cairoint.h. # See how pdf_operators or font_subset are handled. # # The sources are picked up according to the configured features # by the generated file Makefile.am.features or Makefile.win32.features. # # These are a few special source files. Those are not included in this # file to not confuse build systems. Each build system must handle them # separately. These files include: # # * cairo-features.h: # This file is generated by configure and includes macros signifying # which features are enabled. This file should be installed like # other public headers, but should NOT be distributed in the cairo # distribution. # # * cairo-version.h: # This is a dummy header file used during the build, but it should # NOT be installed. Its sole purpose is to make sure changes in the # cairo version do not trigger a full rebuild of the library, but # just the functions actually using the version information. # # * $(top_srcdir)/cairo-version.h: # This is the real file holding the cairo version number. This file # should be installed like other public headers. This is used during # the build by cairo-version.c only. # # * cairo-supported-features.h: # This file is generated by configure and includes macros signifying # all supported features. This is used by gtk-doc to generate # documentation for all those macros, enabled or not. # This file is NOT used during the build of the library and should # NOT be installed or distributed. # # Please follow the strict syntax of this file, including keeping file # lists sorted. # cairo_headers = cairo.h cairo-deprecated.h cairo_private = \ cairoint.h \ cairo-analysis-surface-private.h \ cairo-arc-private.h \ cairo-atomic-private.h \ cairo-boxes-private.h \ cairo-cache-private.h \ cairo-clip-private.h \ cairo-combsort-private.h \ cairo-compiler-private.h \ cairo-composite-rectangles-private.h \ cairo-device-private.h \ cairo-error-private.h \ cairo-fixed-private.h \ cairo-fixed-type-private.h \ cairo-freelist-private.h \ cairo-freed-pool-private.h \ cairo-fontconfig-private.h \ cairo-gstate-private.h \ cairo-hash-private.h \ cairo-image-info-private.h \ cairo-list-private.h \ cairo-malloc-private.h \ cairo-recording-surface-private.h \ cairo-mutex-impl-private.h \ cairo-mutex-list-private.h \ cairo-mutex-private.h \ cairo-mutex-type-private.h \ cairo-output-stream-private.h \ cairo-paginated-private.h \ cairo-paginated-surface-private.h \ cairo-path-fixed-private.h \ cairo-path-private.h \ cairo-private.h \ cairo-reference-count-private.h \ cairo-region-private.h \ cairo-rtree-private.h \ cairo-scaled-font-private.h \ cairo-slope-private.h \ cairo-spans-private.h \ cairo-surface-fallback-private.h \ cairo-surface-private.h \ cairo-surface-clipper-private.h \ cairo-surface-offset-private.h \ cairo-surface-subsurface-private.h \ cairo-surface-snapshot-private.h \ cairo-surface-wrapper-private.h \ cairo-tee-surface-private.h \ cairo-types-private.h \ cairo-user-font-private.h \ cairo-wideint-private.h \ cairo-wideint-type-private.h \ $(NULL) cairo_sources = \ cairo-analysis-surface.c \ cairo-arc.c \ cairo-array.c \ cairo-atomic.c \ cairo-base64-stream.c \ cairo-base85-stream.c \ cairo-bentley-ottmann.c \ cairo-bentley-ottmann-rectangular.c \ cairo-bentley-ottmann-rectilinear.c \ cairo-botor-scan-converter.c \ cairo-boxes.c \ cairo.c \ cairo-cache.c \ cairo-clip.c \ cairo-color.c \ cairo-composite-rectangles.c \ cairo-debug.c \ cairo-device.c \ cairo-fixed.c \ cairo-font-face.c \ cairo-font-face-twin.c \ cairo-font-face-twin-data.c \ cairo-font-options.c \ cairo-freelist.c \ cairo-freed-pool.c \ cairo-gstate.c \ cairo-hash.c \ cairo-hull.c \ cairo-image-info.c \ cairo-image-surface.c \ cairo-lzw.c \ cairo-matrix.c \ cairo-recording-surface.c \ cairo-misc.c \ cairo-mutex.c \ cairo-observer.c \ cairo-output-stream.c \ cairo-paginated-surface.c \ cairo-path-bounds.c \ cairo-path.c \ cairo-path-fill.c \ cairo-path-fixed.c \ cairo-path-in-fill.c \ cairo-path-stroke.c \ cairo-pattern.c \ cairo-pen.c \ cairo-polygon.c \ cairo-rectangle.c \ cairo-rectangular-scan-converter.c \ cairo-region.c \ cairo-rtree.c \ cairo-scaled-font.c \ cairo-slope.c \ cairo-spans.c \ cairo-spline.c \ cairo-stroke-style.c \ cairo-surface.c \ cairo-surface-fallback.c \ cairo-surface-clipper.c \ cairo-surface-offset.c \ cairo-surface-snapshot.c \ cairo-surface-subsurface.c \ cairo-surface-wrapper.c \ cairo-system.c \ cairo-tee-surface.c \ cairo-tor-scan-converter.c \ cairo-toy-font-face.c \ cairo-traps.c \ cairo-unicode.c \ cairo-user-font.c \ cairo-version.c \ cairo-wideint.c \ $(NULL) _cairo_font_subset_private = \ cairo-scaled-font-subsets-private.h \ cairo-truetype-subset-private.h \ cairo-type1-private.h \ cairo-type3-glyph-surface-private.h \ $(NULL) _cairo_font_subset_sources = \ cairo-cff-subset.c \ cairo-scaled-font-subsets.c \ cairo-truetype-subset.c \ cairo-type1-fallback.c \ cairo-type1-subset.c \ cairo-type3-glyph-surface.c \ $(NULL) cairo_private += $(_cairo_font_subset_private) cairo_sources += $(_cairo_font_subset_sources) cairo_egl_sources = cairo_glx_sources = cairo_wgl_sources = _cairo_pdf_operators_private = cairo-pdf-operators-private.h _cairo_pdf_operators_sources = cairo-pdf-operators.c cairo_private += $(_cairo_pdf_operators_private) cairo_sources += $(_cairo_pdf_operators_sources) cairo_png_sources = cairo-png.c cairo_ps_headers = cairo-ps.h cairo_ps_private = cairo-ps-surface-private.h cairo_ps_sources = cairo-ps-surface.c cairo_deflate_stream_sources = cairo-deflate-stream.c cairo_pdf_headers = cairo-pdf.h cairo_pdf_private = cairo-pdf-surface-private.h cairo_pdf_sources = cairo-pdf-surface.c if CAIRO_HAS_PDF_SURFACE req_cairo_deflate_stream_sources = $(cairo_deflate_stream_sources) endif cairo_svg_headers = cairo-svg.h cairo_svg_private = cairo-svg-surface-private.h cairo_svg_sources = cairo-svg-surface.c cairo_ft_headers = cairo-ft.h cairo_ft_private = cairo-ft-private.h cairo_ft_sources = cairo-ft-font.c # These are private, even though they look like public headers cairo_test_surfaces_private = \ test-fallback-surface.h \ test-fallback16-surface.h \ test-null-surface.h \ test-paginated-surface.h \ test-wrapping-surface.h \ $(NULL) cairo_test_surfaces_sources = \ test-fallback-surface.c \ test-fallback16-surface.c \ test-null-surface.c \ test-paginated-surface.c \ test-wrapping-surface.c \ $(NULL) cairo_xlib_headers = cairo-xlib.h cairo_xlib_private = \ cairo-xlib-private.h \ cairo-xlib-surface-private.h \ cairo-xlib-xrender-private.h \ $(NULL) if BUILD_XLIB_XCB cairo_xlib_sources = cairo-xlib-xcb-surface.c else cairo_xlib_sources = \ cairo-xlib-display.c \ cairo-xlib-screen.c \ cairo-xlib-surface.c \ cairo-xlib-visual.c \ $(NULL) endif cairo_xlib_xrender_headers = cairo-xlib-xrender.h cairo_xcb_headers = cairo-xcb.h cairo_xcb_private = cairo-xcb-private.h cairo_xcb_sources = \ cairo-xcb-connection.c \ cairo-xcb-connection-core.c \ cairo-xcb-connection-render.c \ cairo-xcb-screen.c \ cairo-xcb-surface.c \ cairo-xcb-surface-cairo.c \ cairo-xcb-surface-core.c \ cairo-xcb-surface-render.c \ $(NULL) if BUILD_XCB_SHM cairo_xcb_sources += \ cairo-xcb-shm.c \ cairo-xcb-connection-shm.c \ $(NULL) endif cairo_qt_headers = cairo-qt.h cairo_qt_cxx_sources = cairo-qt-surface.cpp cairo_quartz_headers = cairo-quartz.h cairo_quartz_private = cairo-quartz-private.h cairo_quartz_sources = cairo-quartz-surface.c cairo_quartz_image_headers = cairo-quartz-image.h cairo_quartz_image_sources = cairo-quartz-image-surface.c cairo_quartz_font_sources = cairo-quartz-font.c cairo_win32_headers = cairo-win32.h cairo_win32_private = cairo-win32-private.h cairo_win32_sources = cairo-win32-surface.c cairo-win32-printing-surface.c cairo_win32_font_sources = cairo-win32-font.c cairo_skia_headers = cairo-skia.h cairo_skia_cxx_sources = cairo-skia-surface.cpp cairo_os2_headers = cairo-os2.h cairo_os2_private = cairo-os2-private.h cairo_os2_sources = cairo-os2-surface.c # automake is stupid enough to always use c++ linker if we enable the # following lines, even if beos surface is not enabled. Disable it for now. cairo_beos_headers = cairo-beos.h cairo_beos_cxx_sources = cairo-beos-surface.cpp cairo_gl_headers = cairo-gl.h cairo_gl_private = cairo-gl-private.h \ cairo-gl-gradient-private.h \ glew/GL/glew.h \ glew/GL/glxew.h cairo_gl_sources = cairo-gl-composite.c \ cairo-gl-device.c \ cairo-gl-glyphs.c \ cairo-gl-gradient.c \ cairo-gl-shaders.c \ cairo-gl-surface.c if BUILD_PRIVATE_GLEW cairo_gl_sources += glew/glew.c endif cairo_egl_sources += cairo-egl-context.c cairo_glx_sources += cairo-glx-context.c cairo_wgl_sources += cairo-wgl-context.c cairo_directfb_headers = cairo-directfb.h cairo_directfb_sources = cairo-directfb-surface.c cairo_drm_headers = cairo-drm.h cairo_drm_private = drm/cairo-drm-private.h \ drm/cairo-drm-ioctl-private.h \ drm/cairo-drm-intel-private.h \ drm/cairo-drm-intel-ioctl-private.h \ drm/cairo-drm-i915-private.h \ drm/cairo-drm-i965-private.h \ drm/cairo-drm-intel-brw-defines.h \ drm/cairo-drm-intel-brw-structs.h \ drm/cairo-drm-intel-brw-eu.h \ drm/cairo-drm-radeon-private.h cairo_drm_sources = drm/cairo-drm.c \ drm/cairo-drm-bo.c \ drm/cairo-drm-surface.c \ drm/cairo-drm-intel.c \ drm/cairo-drm-intel-debug.c \ drm/cairo-drm-intel-surface.c \ drm/cairo-drm-i915-surface.c \ drm/cairo-drm-i915-glyphs.c \ drm/cairo-drm-i915-shader.c \ drm/cairo-drm-i915-spans.c \ drm/cairo-drm-i965-surface.c \ drm/cairo-drm-i965-glyphs.c \ drm/cairo-drm-i965-shader.c \ drm/cairo-drm-i965-spans.c \ drm/cairo-drm-intel-brw-eu.c \ drm/cairo-drm-intel-brw-eu-emit.c \ drm/cairo-drm-intel-brw-eu-util.c \ drm/cairo-drm-radeon.c \ drm/cairo-drm-radeon-surface.c cairo_gallium_sources = drm/cairo-drm-gallium-surface.c cairo_drm_xr_headers = cairo-drm-xr.h cairo_drm_xr_sources = \ drm/cairo-drm-xr.c \ $(NULL) cairo_script_headers = cairo-script.h cairo_script_sources = cairo-script-surface.c if CAIRO_HAS_SCRIPT_SURFACE req_cairo_deflate_stream_sources = $(cairo_deflate_stream_sources) endif cairo_xml_headers = cairo-xml.h cairo_xml_sources = cairo-xml-surface.c if CAIRO_HAS_XML_SURFACE req_cairo_deflate_stream_sources = $(cairo_deflate_stream_sources) endif cairo_vg_headers = cairo-vg.h cairo_vg_sources = cairo-vg-surface.c cairo_sources += \ $(req_cairo_deflate_stream_sources) \ $(NULL)