gcov usage documented. internals updated with dia diagram

git-svn-id: https://svn.o-hand.com/repos/matchbox/trunk/matchbox-documentation@781 b067294f-1dea-0310-9683-c47a78595994
This commit is contained in:
mallum
2004-04-19 13:09:38 +00:00
parent ddb458ed48
commit b5c6e2dc3d
3 changed files with 74 additions and 1 deletions

BIN
developers/internals.dia Normal file

Binary file not shown.

View File

@@ -1,3 +1,5 @@
Matchbox Internals Documentation - v0.1 - mallum@o-hand.com
===========================================================
Introduction
====
@@ -127,6 +129,11 @@ Wm.c also has various functions for 'global' operations on clients
such as resizing/repositioning all clients. Numerous points throughout
the codebase will use this.
Note a diagram reprenting visually what has been discussed in this
overview is available via;
http://matchbox.handhelds.org/documentation/developers/internals/internals.png
File Structure
====
@@ -279,21 +286,25 @@ XX_client_move_resize (Client *c);
Safely moves and resizes a client ( to positions set by
client_configure ) or other.
void
XX_client_get_coverage (Client *c, int *x, int *y, int *w, int *h);
returns the display area covered by the client and its decoration frame.
void
XX_client_hide (Client *c);
Hides ( unmaps ) a client.
void
XX_client_show (Client *c);
Shows ( maps ) a client.
void
XX_client_destroy (Client *c);
@@ -405,3 +416,18 @@ Some optimizations matchbox uses;
that due to its style of restrictive window management it avoids much
of the code needed by a desktop window manager.
Further reading
====
Matchbox WM source
http://cvs.handhelds.org/cgi-bin/viewcvs.cgi/apps/matchbox/matchbox-window-manager/src/
Matchbox Developer documentation.
http://matchbox.handhelds.org/developer.shtml
Matchbox X Communication specifics ( ie freedesktop.org standards support )
http://matchbox.handhelds.org/documentation/developers/matchbox-key.txt
libMatchbox API documentation.
http://matchbox.handhelds.org/documentation/developers/api/

View File

@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<article>
<artheader>
<title>Matchbox Testing HOWTO. (V 0.2)</title>
<title>Matchbox Testing HOWTO. (V 0.3)</title>
<author><firstname>Matthew</firstname>
<surname>Allum</surname>
<email>matthew@openedhand.com</email>
@@ -229,6 +229,53 @@ url="http://bugs.openedhand.com/index.cgi/Matchbox/index">bugs.openedhand.com</u
</para>
</section>
<section><title>Code Coverage</title>
<para>
Both the matchbox-window-manager and libmatchbox packages have support
for the GNU Code coverage tool <ulink
url="http://gcc.gnu.org/onlinedocs/gcc-3.0/gcc_8.html">Gcov</ulink>. To
enable, at build time configure the packages with the
<userinput>--enable-gcov</userinput> option. The built binaries will then produce gcov statistics, which can further be processed by running gcov on source files.
</para>
<para>
Within the test package exists 'gcov-wrapper.sh'. This script will run all or any of the tests and report the percentage of code per sourcefile the test run covered.
</para>
<para>
Usage is like;
<programlisting>
usage: ./gcov-wrapper.sh <matchbox wm src path> <libmatchbox src path> [test]
'test' defaults to testrun.sh
Set GCOV_FLAGS to any required gcov swicthes
</programlisting>
</para>
<para>
It is advised you make clean and then remake matchbox-window-manager
and libmatchbox before each gcov-wrapper.sh run to avoid statistics
accumerlating.
</para>
<para>
More information on using Gcov is available at url="http://gcc.gnu.org/onlinedocs/gcc-3.0/gcc_8.html">http://gcc.gnu.org/onlinedocs/gcc-3.0/gcc_8.html</ulink>
</para>
</section>
<section><title>Appendix A - Tools</title>
<section><title>Valgrind</title>
<para>