[Cairo] ELF shared library improvements [0/4]

Carl Worth cworth at east.isi.edu
Tue Jul 29 15:44:51 PDT 2003


On Jul 29, Richard Henderson wrote:
 > If I'm not mistaken, I think we still need all three installed
 > headers.

Ah, I hadn't look closely enough at how this was implemented.

 > One possible improvement would be to avoid the reliance on _PKGINT_H_
 > that is present in the user's public header file (e.g. ic.h).

Would the following proposal/convention work?

Slim provides two header files, (maybe slim.h and slim_internal.h). A
user of slim, (say libic for example), would do the following:

icint.h
-------
#include <slim_internal.h>
#include "ic.h"

ic.h
----
#include <slim.h>

Then, the conflicting definitions from slim_internal.h and slim.h,
(eg. __external_linkage macro) would be protected so that the first
definition seen wins.

I might be missing something as I didn't understand the comment about
multiple inclusion and not using ifdef protection in internal.h and
external.h.

But if that works, then slim should be fairly easy to use and no
autoconf macros should be needed. Plus, the changes to the public
header file end up being, dare I say it?, quite slim.

Or am I way off base?

 > > slim	Shared-Library Interface Macros.
 > 
 > I think I like this best myself.

Sounds like it's unanimous then.

-Carl




More information about the cairo mailing list