From: Brad N. <BNI...@no...> - 2008-03-28 15:25:48
|
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 need to be updated but I haven't gotten to that yet. Brad >>> On 3/27/2008 at 9:04 AM, in message <47E...@no...>, "Brad Nicholes" <BNI...@no...> wrote: >>>> On 3/26/2008 at 7:32 PM, in message <20080327013247.GA8510@tapir>, Carlo > Marcelo Arenas Belon <ca...@sa...> 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 > Gan...@li... > https://lists.sourceforge.net/lists/listinfo/ganglia-developers |