If you are not writing GLib or Gtk, you probably don't need subdirectories in your header paths. I, too, do this often, and I think I'm ready to stop.
#include <gtk/gtk.h>
For example, in the above example, we include gtk/gtk.h
. This was necessary
(at least at one time) because we would have gtk/*
, gdk/*
, and possibly other
headers all within this top-level directory /usr/include/gtk-3.0
.
For the rest of us, having such a separation of headers is likely not necessary. And if it is, you can just have a toplevel header that can include files from those subdirectories. So for example, my quite annoying choice to do
#include <mongo-glib/mongo-glib.h>
should just be
#include <mongo-glib.h>
I'll likely fix these in the near future unless someone has a compelling reason that I've overlooked.
-- Christian Hergert 2012-08-25