forked from KolibriOS/kolibrios
70 lines
2.0 KiB
Plaintext
70 lines
2.0 KiB
Plaintext
|
Cairo Library Source Code
|
||
|
=========================
|
||
|
|
||
|
This directory contains the source code of the cairo library.
|
||
|
|
||
|
|
||
|
Source Code Listing
|
||
|
-------------------
|
||
|
|
||
|
The canonical list of source files is the file Makefile.sources. See that
|
||
|
file for how it works.
|
||
|
|
||
|
|
||
|
New Backends
|
||
|
------------
|
||
|
|
||
|
The rule of the thumb for adding new backends is to see how other
|
||
|
backends are integrated. Pick one of the simpler, unsupported, backends
|
||
|
and search the entire tree for it, and go from there.
|
||
|
|
||
|
To add new backends you need to basically:
|
||
|
|
||
|
* Modify $(top_srcdir)/configure.in to add checks for your backend.
|
||
|
|
||
|
* Modify Makefile.sources to add source files for your backend,
|
||
|
|
||
|
* Modify $(top_srcdir)/boilerplate/ to add boilerplate code for
|
||
|
testing your new backend.
|
||
|
|
||
|
|
||
|
New API
|
||
|
-------
|
||
|
|
||
|
After adding new API, run "make check" in this directory and fix any
|
||
|
reported issues. Also add new API to the right location in
|
||
|
$(top_srcdir)/doc/public/cairo-sections.txt and run "make check"
|
||
|
in $(top_builddir)/doc/public to make sure that any newly added
|
||
|
documentation is correctly hooked up.
|
||
|
|
||
|
Do not forget to add tests for the new API. See next section.
|
||
|
|
||
|
|
||
|
Tests
|
||
|
-----
|
||
|
|
||
|
There are some tests in this directory that check the source code and
|
||
|
the build for various issues. The tests are very quick to run, and
|
||
|
particularly should be run after any documentation or API changes. It
|
||
|
does not hurt to run them after any source modification either. Run
|
||
|
them simply by calling:
|
||
|
|
||
|
make check
|
||
|
|
||
|
There are also extensive regression tests in $(top_srcdir)/test. It is
|
||
|
a good idea to run that test suite for any changes made to the source
|
||
|
code. Moreover, for any new feature, API, or bug fix, new tests should
|
||
|
be added to the regression test suite to test the new code.
|
||
|
|
||
|
|
||
|
Bibliography
|
||
|
------------
|
||
|
|
||
|
A detailed list of academic publications used in cairo code is available
|
||
|
in the file $(top_srcdir)/BIBLIOGRAPHY. Feel free to update as you
|
||
|
implement more papers.
|
||
|
|
||
|
For more technical publications (eg. Adobe technical reports) just
|
||
|
point them out in a comment in the header of the file implementing them.
|
||
|
|