Updated HACKING notes about debugging.
[libguestfs.git] / HACKING
diff --git a/HACKING b/HACKING
index b2fab3e..2d3f216 100644 (file)
--- a/HACKING
+++ b/HACKING
@@ -15,14 +15,63 @@ You will need to run src/generator.ml (from the top directory) which
 regenerates all the auto-generated files, and then continue with the
 ordinary build process.
 
+PLEASE LOOK AT THE TOP OF EACH FILE BEFORE EDITING to see whether it
+is automatically generated or not.
+
 Formatting
 ----------------------------------------------------------------------
 
 Try to use GNU / Emacs default formatting, following the convention
 used elsewhere in the source.
 
+Please make sure that the code compiles without warnings.
+
+Please test any changes.
+
+Directories
+----------------------------------------------------------------------
+
+daemon/
+       The daemon that runs inside the guest and carries out actions.
+
+examples/
+       The examples.
+
+fish/
+       Guestfish (the command-line program / shell)
+
+images/
+       Some guest images to test against.  These are gzipped to save
+       space.  You have to unzip them before use.
+
+m4/
+       M4 macros used by autoconf.
+
+ocaml/
+       OCaml bindings.
+
+perl/
+       Perl bindings.
+
+python/
+       Python bindings.
+
+src/
+       Source code to the C library.
+       Also contains the crucial generator program.
+
+Debugging
+----------------------------------------------------------------------
+
+It's a good idea to use guestfish to try out new commands.
+
+Debugging the daemon is a problem because it runs inside a minimal
+qemu environment.  However you can print messages from the daemon, and
+they will show up if you use 'guestfish -v'.
+
 Patches
 ----------------------------------------------------------------------
 
 Submit patches to the fedora-virt mailing list:
 http://www.redhat.com/mailman/listinfo/fedora-virt
+and CC to rjones@redhat.com