1 Cairo Library Source Code
2 =========================
4 This directory contains the source code to the cairo library.
10 The canonical list of source files is the file Makefile.sources. See that
11 file for how it works.
17 The rule of the thumb for adding new backends is to see how other
18 backends are integrated. Pick one of the simpler, unsupported, backends
19 and search the entire tree for it, and go from there.
21 To add new backends you need to basically:
23 * Modify $(top_srcdir)/configure.in to add checks for your backend.
25 * Modify Makefile.sources to add source files for your backend,
27 * Modify $(top_srcdir)/boilerplate/ to add boilerplate code for
28 testing your new backend.
34 After adding new API, run "make check" in this directory and fix any
35 reported issues. Also add new API to the right location in
36 $(top_srcdir)/doc/public/cairo-sections.txt and run "make check"
37 in $(top_builddir)/doc/public to make sure that any newly added
38 documentation is correctly hooked up.
40 Do not forget to add tests for the new API. See next section.
46 There are some tests in this directory that check the source code and
47 the build for various issues. The tests are very quick to run, and
48 particularly should be run after any documentation or API changes. It
49 does not hurt to run them after any source modification either. Run
50 them simply by calling:
54 There are also extensive regression tests in $(top_srcdir)/test. It is
55 a good idea to run that test suite for any changes made to the source
56 code. Moreover, for any new feature, API, or bug fix, new tests should
57 be added to the regression test suite to test the new code.
63 A detailed list of academic publications used in cairo code is availagle
64 in the file $(top_srcdir)/BIBLIOGRAPHY. Feel free to update as you
65 implement more papers.
67 For more technical publications (eg. Adobe technical reports) just
68 point them out in a comment in the header of the file implementing them.