>>> On 3/29/2008 at 2:43 AM, in message <[EMAIL PROTECTED]>, Carlo Marcelo Arenas Belon <[EMAIL PROTECTED]> wrote: > On Fri, Mar 28, 2008 at 11:44:44PM -0600, Brad Nicholes wrote: >> >> The problem is the typedef of g_val_t. Both libmetrics and the metric > modules need this typedef. Before the commits, the metric modules had to > include libmetrics.h to get this typedef. This would have required > libmetrics.h to become one of the public headers. So rather than make > libmetrics.h a public header, I pulled the typedef into gm_metrics.h. > > g_val_t is a public interface of libganglia and libganglia is used by the > modules so it should be IMHO moved into "ganglia.h" or whathever the public > interface for libganglia is. >
Right, but that isn't the problem. If I move g_val_t into ganglia.h then I run into the same apr.h problems that we had before. Libganglia depends on apr so therefore ganglia.h includes apr.h. If metric.c includes ganglia.h to get the typedef for g_val_t then that drags apr.h into libmetrics again which is what caused the problem in the first place. So I can't put the definition of g_val_t in ganglia.h or gm_metric.h. Both places cause the same problem. That's why I created gm_value.h. That should allow libmetrics, the metric modules and libganglia to get the typedef for g_val_t without dragging apr into libmetrics. Brad ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ Ganglia-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ganglia-developers
