Commit graph

37 commits

Author SHA1 Message Date
Chris Wilson
bf309aab60 [configure] Delete CAN_TEST_SCRIPT
A CairoScript interpreter is built under utils and so is always available.
2008-11-16 16:21:37 +00:00
Chris Wilson
cdfffc7420 Add CairoScript interpreter
Add a CairoScript interpreter library and use it to replay the test output
for the CairoScript backend. The library is also used by the currently
standalone Sphinx debugger [git://anongit.freedesktop.org/~ickle/sphinx].
The syntax/operator semantics are not yet finalized, but are expected to
mature before the next stable release.
2008-11-13 11:36:55 +00:00
Chris Wilson
a856371bef Add CairoScript backend.
A new meta-surface backend for serialising drawing operations to a
CairoScript file. The principal use (as currently envisaged) is to provide
a round-trip testing mechanism for CairoScript - i.e. we can generate
script files for every test in the suite and check that we can replay them
with perfect fidelity. (Obviously this does not provide complete coverage
of CairoScript's syntax, but should give reasonable coverage over the
operators.)
2008-11-13 11:36:54 +00:00
Chris Wilson
476d5daa9b [trace] Only build if we have zlib.
Use the configure check for libz and do not attempt to build the trace
unless we have zlib.
2008-11-05 19:29:04 +00:00
Chris Wilson
34564aa84a [test/pdf2png] Remove dependency on GdkPixbuf
It's appears to be dropped from the current poppler trunk, so just use our
own venerable cairo_surface_write_ton_png().
2008-11-05 19:27:49 +00:00
Chris Wilson
c80a1c68c1 [configure] Make trace consistent.
Remove the debianism from the comments for HAVE_BFD and comply with
Behdad's guidelines on using  $(...) within Makefile.am.
2008-11-03 23:16:09 +00:00
Chris Wilson
2c08f3f83b [trace] Autodetect -lbfd during configure
Stop being lazy and detect libbfd during configure.
2008-11-03 11:30:38 +00:00
Chris Wilson
c554f18d78 [util] Add cairo-trace.
This tool can be used to trace all the cairo function calls made by an
applications.  This is useful for either extracting a test case triggering
a bug from an application, or simply to get a general idea of how an
application is using cairo.

After make install, cairo-trace program arguments, will print out all the
cairo calls to the terminal and also capture theme in ./program.$pid.trace

The format of the output is CairoScript, watch this space for more
cairo-script tools!
2008-10-31 15:37:58 +00:00
Chris Wilson
e90073f7dd [test] Build test suite into single binary.
Avoid calling libtool to link every single test case, by building just one
binary from all the sources.

This binary is then given the task of choosing tests to run (based on user
selection and individual test requirement), forking each test into its own
process and accumulating the results.
2008-10-31 12:30:11 +00:00
Chris Wilson
cf072c7203 [sdl] Add new backend.
Add a new backend to allow easy interoperability with the Simple
DirectMedia Layer.
2008-10-30 17:04:53 +00:00
Behdad Esfahbod
9d4262ebe0 [build] Use dolt
Dolt is a hack to speed up libtool-based build systems:

	http://dolt.freedesktop.org/

It's completely transparent to the user.  Brings make time
of cairo from 70s down to 20s.  Yay!
2008-10-21 17:45:54 -04:00
Chris Wilson
f2ff794426 [perf] A crude tool to visualise performance changes across a series.
Generate a cairo-perf-diff graph for a series of commits in order to be
able to identify significant commits. Still very crude, but minimally
functional.
2008-10-19 09:36:53 +01:00
Chris Wilson
6736faba3e [test/any2ppm] Do not attempt to compile PS without spectre
Since CAN_TEST_PS_SURFACE does not currently require spectre, we were
attempting to compile in spectre support for any2ppm even on systems
without libspectre installed. Fix that by adding a separate flag for
CAIRO_HAS_SPECTRE.
2008-10-11 19:01:43 +01:00
Carlos Garcia Campos
8ac8e8c523 [test] Add ps2png check program using libspectre
Add a simple program to compliment pdf2png and svg2png.
2008-10-09 12:25:08 +01:00
Carlos Garcia Campos
3e6afb353d [test/any2ppm] Enable PS conversion using libspectre.
Complete the vector trilogy using libspectre to provide a similar
interface (to poppler and librsvg) around GhostScript.
2008-10-09 12:25:08 +01:00
Behdad Esfahbod
32a1585288 [configure.ac] Require autoconf >= 2.59 and automake >= 1.9.6
These are the versions available on RHEL5 (two years old now), and
we know cairo works with them.  There's evidence that our build system
does not work with older automake, and we've been requiring autoconf 2.58
but no one ever tested 2.58 with the new build system.  It's very likely
that 2.58 doesn't work and needs some macro backporting.  In any case,
no one reported that they have 2.58 when I asked on the list.
2008-09-30 15:22:30 -04:00
Chris Wilson
ba7ef8b40e [configure.ac] Bump poppler dependency to 0.9.2
poppler-0.9.2 is required for replaying user-fonts correctly.
2008-09-24 22:37:08 +01:00
Behdad Esfahbod
32d3bfdde8 [configure.ac] Set pixman required version back to 0.12.0
I accidentally committed and pushed changing that version to 0.11.0.
2008-09-17 19:16:25 -04:00
Behdad Esfahbod
3867d99ad7 [configure.ac] Err, don't pass argument to AC_PROG_LIBTOOL 2008-09-17 17:55:01 -04:00
Søren Sandmann Pedersen
e6f66ef65b Require pixman 0.12.0 2008-09-17 15:18:55 -04:00
Behdad Esfahbod
20daa425d8 [configure.ac] Generate boilerplate/Makefile.am.config
Same scheme as in src/
2008-09-16 03:58:19 -04:00
Behdad Esfahbod
b4b65a7890 Revert "[configure] Append -lz to LIBS"
This reverts commit 9c207b2454.

I pushed a proper fix in last commit.
2008-09-15 21:50:27 -04:00
Chris Wilson
9c207b2454 [configure] Append -lz to LIBS
After going to the effort of detecting zlib for cairo-deflate-stream.c, it
rather defects the purpose of the exercise (and the mingw32 build) if we
forget to add the library to LIBS.
2008-09-16 01:50:30 +01:00
Jeff Muizelaar
e31462d399 Check for poppler_page_render instead of poppler_page_render_to_pixbuf
We now use poppler_page_render for testing. Further, poppler can be built
without poppler_page_render_to_pixbuf to avoid a dependency on gdk.
2008-09-15 19:31:28 -04:00
Behdad Esfahbod
fe31c35d86 [doc] Don't rebuild after every configure run
The version.xml file was rebuilt all the time and forcing a full
doc rebuild.  Not anymore unless cairo-version.h was changed.
2008-09-11 17:31:07 -04:00
Behdad Esfahbod
694fee9e7c Update gtk-doc makefile fragment
Also move it to build/.

We still do not call gtkdocize from autogen.sh.
2008-09-11 16:38:12 -04:00
Behdad Esfahbod
2b4a26f097 [configure.ac] Add CAIRO_BEGINEND_DECLS 2008-09-11 04:21:29 -04:00
Behdad Esfahbod
b7a838261b Move m4 macros into build/aclocal.*.m4 files 2008-09-11 04:17:43 -04:00
Behdad Esfahbod
2bc53fb152 [configure.ac] Really fix pixman config 2008-09-11 01:04:13 -04:00
Behdad Esfahbod
f9a332c8fd [configure.ac] Fix pixman requires 2008-09-11 00:49:17 -04:00
Behdad Esfahbod
391bef58fc Add support for always-builtin features in the build system
Like image surface and user fonts.
2008-09-11 00:38:30 -04:00
Behdad Esfahbod
f84e7b6e65 [configure.ac] Opt for more automake warnings and checks 2008-09-08 15:10:06 -04:00
Behdad Esfahbod
cdee34c5b7 Back to using autoconf 2.58 2008-09-07 17:01:33 -04:00
Chris Wilson
ddb529a59c [configure.ac] Bump the required version.
2.62!!! Hopefully Behdad will notice and rewrite his excellent build
scripts to avoid m4_newline() and m4_expand().
2008-09-07 12:16:29 +01:00
Behdad Esfahbod
a37806a9da [configure.ac] Quote version macros 2008-09-06 17:44:17 -04:00
Behdad Esfahbod
22de0f6b8d [configure.ac] Add some automake options 2008-09-04 23:26:19 -04:00
Behdad Esfahbod
4edfdb4b15 Rename build/*.ac to build/configure.ac.*.
Also rename configure.in to configure.ac (finally)

	configure.in		-> configure.ac
	build/analysis.ac	-> build/configure.ac.analysis
	build/enable.ac		-> build/configure.ac.enable
	build/system.ac		-> build/configure.ac.system
	build/tools.ac		-> build/configure.ac.tools
	build/version.ac	-> build/configure.ac.version
	build/warnings.ac	-> build/configure.ac.warnings
2008-09-04 22:33:52 -04:00
Renamed from configure.in (Browse further)