bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libposix - is it done yet?


From: Bruno Haible
Subject: Re: libposix - is it done yet?
Date: Sun, 10 Oct 2010 22:59:38 +0200
User-agent: KMail/1.9.9

Bruce Korb wrote:
> > IMO the inclusion guards of the headers need to be transformed
> IMO, I don't know that.  If a confused program winds up including
> both, then you'll have duplicate definitions.  Theoretically,
> the contents of libposix and what you get from gnulib would be
> the same.

No, they are different because the @GNULIB_XXX@ macros expand to different
values. For example, in string.in.h there are @GNULIB_XXX@ that are 0 in
libposix and may be 1 in other packages.

> > 2) The library should use libtool versioning:
> > 
> > # Libtool's library version information for libposix.
> > # See the libtool documentation, section "Library interface versions".
> > LTV_CURRENT=0
> > LTV_REVISION=0
> > LTV_AGE=0
> > libposix_la_LDFLAGS += -version-info 
> > $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE)
> 
> Then it may as well be:
> 
>   libposix_la_LDFLAGS += -version-info 0:0:0
> 
> because the only other rational choice is going to be a version
> that changes daily whether or not there are changes to the
> interface.  Just hard code to 0:0:0 -- with comments about why.

No, this is wrong. If you hardcode 0:0:0, the slightest backward incompatible
change will break existing linked programs.

> > 5) The libposix.m4 file should be rewritten from scratch to *not* use
> > pkg-config and instead use the macros from the gnulib 'havelib' module.
> > 6) On Solaris 8, with gcc, the files fnmatch.h, float.h, errno.h, stddef.h,
> > stdbool.h, stdarg.h, sched.h get created after the library has been built,
> > with invalid contents (#include_next without argument, and such). The 
> > mistake
> > is that you have included stddef.h in nobase_nodist_pkginclude_HEADERS,
> > although STDDEF_H is empty on this platform.
> 
> Yep, these are still hang-out items.  It isn't obvious to me how to load
> the nobase_nodist_pkginclude_HEADERS macro

nobase_nodist_pkginclude_HEADERS = $(FNMATCH_H) $(FLOAT_H) $(STDDEF_H) ...

Bruno



reply via email to

[Prev in Thread] Current Thread [Next in Thread]