mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-23 08:28:12 +02:00
The cairo-freelist-private.h header has a number of static inline functions which call hidden functions in libcairo. This poses a problem on Solaris where the native compiler compiles inline functions whether they are used or not, thereby adding the link time requirements on hidden functions from whatever code that includes cairo-freelist-private.h. Unfortunately the boilerplate code includes cairo-private headers and indirectly the freelist header, so linking the boilerplate helper library fails on Solaris. This patch separates the structure definitions from the function prototypes and static inlines in cairo-freelist-private.h by moving the datatypes to a new cairo-freelist-type-private.h.
394 lines
11 KiB
Text
394 lines
11 KiB
Text
# 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-freelist-type-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-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-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_tee_headers = cairo-tee.h
|
|
cairo_tee_private = cairo-tee-surface-private.h
|
|
cairo_tee_sources = cairo-tee-surface.c
|
|
|
|
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)
|