FYI,  I have been working on rearranging the headers so that they are more 
inline with a development environment that can be used to develop metric 
modules outside of the Ganglia source tree.  Hopefully later today I will be 
checking in these changes.  This will affect a large number of source files in 
the project mainly due to some header file renaming and relocation.  When 
everything is done, the only real noticeable result will be a new include 
directory under monitor_core that contains the three public headers needed to 
build a module (there are actually four but protocol.h aka. gm_protocol.h, 
doesn't show up until after a make install).  Although I have tried to make 
sure that I haven't broken anything with the build, there is still a good 
chance that I have affected the builds on some of the platforms other than 
linux.  Once these changes have been checked in, I would appreciate it if 
others could retest the build on the non-linux platforms.  Also, the spec file 
will ne
 ed to be updated but I haven't gotten to that yet.

Brad

>>> On 3/27/2008 at 9:04 AM, in message <[EMAIL PROTECTED]>, "Brad
Nicholes" <[EMAIL PROTECTED]> wrote:
>>>> On 3/26/2008 at 7:32 PM, in message <[EMAIL PROTECTED]>, Carlo
> Marcelo Arenas Belon <[EMAIL PROTECTED]> wrote:
>> On Wed, Mar 26, 2008 at 05:20:48PM -0600, Brad Nicholes wrote:
>>> 
>>> I have been taking a look at what headers are needed in order to build a C 
>> module outside of the Ganglia tree.  So far I have determined that the 
>> following headers need to be made publically available:
>>> 
>>> debug_msg.h
>>> ganglia.h
>>> gm_mmn.h
>>> metric.h
>>> protocol.h
>>> 
>>> Maybe - error.h(should be renamed to error_msg.h) and scoreboard.h
>> 
>> debug_msg, error and scoreboard shouldn't be needed and should be 
>> consolidated
>> if they are.
>> 
> 
> debug and error are not required but are useful if the module wants to 
> insert debug or error messages into the same stream as gmond.  Some of the C 
> based modules that we have now, especially the gstatus module, use 
> debug_msg.h for this purpose.  We could roll these functions up into 
> ganglia.h.  Other than the gstatus module, there really isn't a use case for 
> scoreboard.h yet, so we could hold off on that one.
> 
> 
>>> Are there any other headers that we should consider or can the above list be
>> consolidated in anyway?
>> 
>> we should only need 3 headers :
>> 
>> all public interfaces that any program linked to libganglia needs (including
>> gmond modules) should go in <ganglia.h>, this header has to be cleaned up and
>> probably moved into a "ganglia" directory to avoid namespace pollution.
>> 
>> all module/metric specific interfaces (what is now on gm_mmn.h and metric.h)
>> should go in <ganglia/metric.h> and will also include the libganglia
>> interfaces through the original ganglia.h, this header is all that a module
>> should need to include.
>> 
>> protocol.h needs to be exported as well, as it is autogenerated from
>> protocol.x and defined the gmond XDR protocol (which is part of libganglia 
>> but
>> was never formally exported)
>> 
> 
> Agreed, I'll rework the headers to support this.
> 
> 
>>> Also, I have been moving all of the public headers into a new /include
>> directory to try to minimize the include path that is required to build all 
>> of
>> the ganglia component.
>> 
>> technically this "-I include" directory will make the path longer as it will
>> add the the current path with some headers currently found with "-I lib"
>> 
>>> Do you think that an include directory within the ganglia source tree is 
>> necessary or should the headers stay where they are and only be copied 
> during 
>> make install?
>> 
>> not necessary but will keep the source tree more organized and allow us
>> clearly identify which headers are public and which ones are not.
>> 
> 
> Sounds good.
> 
> 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 



-------------------------------------------------------------------------
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

Reply via email to