Re: gnatsd problems with 4.0.1

"Mark D. Baushke" <[email protected]>
Newsgroups gmane.comp.bug-tracking.gnats.general
Message-ID <[email protected]>
Mike M. Volokhov <[email protected]> writes:

> On Thu, 6 Jan 2005 11:04:35 -0600
> Chad Walstrom <[email protected]> wrote:
> 
> First, excuse me please for the delayed answer. :-(
> 
> > Mike M. Volokhov wrote:
> > > Could you explain me please what a reason to have libiberty code in
> > > GNATS tree?
> > 
> > For historical and supposedly portability reasons.  Frankly, I'm not
> > that comfortable with it being there.  I haven't had much time lately,
> > but I'd love to audit the GNATS codebase to find out what functions in
> > ./libiberty are actually being used and decide either to adopt them
> > completely by moving them into the ./gnats directory OR drop them
> > completely.  There was a lot of cruft pulled in from my last update.  We
> > can always roll back the CVS to the point before the libiberty update
> > (which I've been contemplating since the day I mistakenly committed it
> > to TRUNK rather than the dev branch like I wanted).
> > 
> > Any opinions in either direction?
> 
> Yes, that's exactly I've asked why. Including libiberty in GNATS
> codebase depends on how much it is used by the project.  Unfortunately,
> libiberty itself seems have not official distribution and in addition it
> may provide some functionality which cannot be acheived by standard C
> library.
> 
> > If someone is willing to do the audit, let me know.  It may not take
> > much time, but most of my spare time right now is going toward a
> > certification class, :-/, and caring for my son, :-).
> 
> I've done some sort of GNATS sources audit to know how much project
> dependends on libiberty code. Well, seems it is not too hard dependent!
> I've used libiberty.h header file to obtain a list of provided functions
> and ran a simple script across gnats/*.[ch] files. It shows a results at
> the end of this mail message.
> 
> So, only six functions are used by GNATS, when libiberty provides about
> 40. Only two functions (asprintf and vasprintf) are nor POSIX nor
> standard C relevant (but included in both GNU and BSD libc). Three
> functions (xstrdup, xmalloc, xrealloc) are totally libiberty-own, but
> can be easy replaced with their standard equivalents.
> 
> Thus, I propose to eliminate dependency on libiberty completely.
> 
> Any comments?

I would suggest consideration of including the GNULIB versions of those
functions as an alternative.

This is much easier than trying to keep libiberty up-to-date.

  cvs -d :ext:[email protected]/cvsroot/gnulib co gnulib

this does probably make a vote of moving to a use of autoconf and
automake as a part of building the configure and related files in
order to make this easier to use.

The typical approach would be to create a lib and m4 directory for
including the relevant code from a gnulib checkout directory into the
gnats source base. There is a tool that can be used to pull into the
gnats tree any module that GNULIB provides.

See the gnulib/README after you checkout a copy of it.

	-- Mark
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.