On 08/05/2018 03:56, Joel Sherrill wrote: > > I have attached a workaround.
Looks like a solution to me. > It seems that libgen.h has this: > > ======================================================== > /* Return final component of PATH. > > This is the weird XPG version of this function. It sometimes will > modify its argument. Therefore we normally use the GNU version (in > <string.h>) and only if this header is included make the XPG > version available under the real name. */ > extern char *__xpg_basename (char *__path) __THROW; > #define basename __xpg_basename > ======================================================== > Oh yuck, who would ever work in standards. ;) Is this function allowed to be redefined as a macro? > Chris has used basename as a method name and even though that should > be perfectly acceptable, the macro above gets expanded, the name > gets changed (in some places) to rld::path::__xpg_basename() > > r.lowSourceLine = rld::path::basename (location); > > IMO the fix is to add dirname to rld-files, use rld basename and dirname > exclusively, and avoid libgen.h at all costs. Wouldn't the world be so much simpler if there was only Linux? ;) > I didn't do that much work. I got lucky in a couple of files by removing the > include of libgen.h since it wasn't needed but I had to leave it in one place. > > $ grep dirname *.cc > GcovData.cc: dirname( path ); > > Hopefully this lets you all proceed with Chris' patches and my slight hack > in place. > > Ultimate solution is probably simple. We just need to hear from Chris. This is fine. I am slowing move covoar to use more and more of the rtemstoolkit. I will merge these changes into a v2 patch set. Chris _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel