[cairo] cairo.h in /usr/include

Owen Taylor otaylor at redhat.com
Sun Sep 5 12:38:04 PDT 2004


Having cairo.h directly in $(includedir) might be problematical.
It means you can't have parallel installs of two API incompatible
versions.

When we went from GTK+-1.2 to GTK+-2.0, we had to release a new
version of GTK+-1.2 and require people to install it so that
we could have:

 $(includedir)/gtk-1.2/gtk/gtk.h
 $(includedir)/gtk-2.0/gtk/gtk.h

pkg-config --cflags GTK+-2.0 includes -I $(includedir)/gtk-2.0/,
so the application still does

 #include <gtk/gtk.h>

Of course, moving cairo.h *out* of $(includedir) causes it's own
problems. As I recall, for early versions of GTK+-2.0, we checked
during 'make install' for $(includedir)/gtk/gtk.h and die with
an error message.

FreeType went through much the same thing from freetype1 to 
freetype2.

Of course, if you are never planning to make incompatible API/ABI
changes to cairo after the initial stable release, than this doesn't
matter. But the extra directory in the include path does provide
some insurance. It also turns out to help with the case where
you have two versions of the library in different prefixes. 
(Because you aren't installing headers directly in the 
compiler's default search path.)

Regards,
					Owen

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.freedesktop.org/archives/cairo/attachments/20040905/d2b6aeb0/attachment.pgp


More information about the cairo mailing list