Dear rooters,
while migrating a ROOT-based project into automake build system, I noticed that the header ‘clib/inc/mmconfig.h’ defines preprocessor symbols like ‘HAVE_UNISTD_H’, ‘HAVE_STDLIB_H’ and so on. This naming scheme conflicts with GNU autoconf naming scheme, and warning messages like below appear every time I compile the programs.
In file included from /usr/local/root/cvs/include/root/mmalloc.h:19,
from /usr/local/root/cvs/include/root/mmprivate.h:39,
from /usr/local/root/cvs/include/root/TMapFile.h:45,
from ./GTS/TFndGtsMonFrame.h:16,
from ./STEER/TFndRun.h:22,
from ./STEER/TFndGeb2hdtMan.h:22,
from ./GUI/TFndGeb2hdtGUI.h:20,
from GEB2DAQ/geb2hdt.cxx:9:
/usr/local/root/cvs/include/root/mmconfig.h:26:1: warning: "HAVE_STDLIB_H" redefined
In file included from GEB2DAQ/geb2hdt.cxx:4:
./config.h:56:1: warning: this is the location of the previous definition
There is no real harm done of course, but I feel very uncomfortable with these long warning messages. Is there a way to remove these warning messages? Thank you.
H. So