Subject: Re: problem in geography/shapelib/buildlink3.mk?
To: None <pkgsrc-users@NetBSD.org>
From: Steven M. Bellovin <smb@cs.columbia.edu>
List: pkgsrc-users
Date: 04/17/2006 10:48:02
On Mon, 17 Apr 2006 09:49:09 -0400, Johnny Lam <jlam@pkgsrc.org> wrote:
> Thomas Klausner wrote:
> > On Sun, Apr 16, 2006 at 07:36:14PM -0400, Steven M. Bellovin wrote:
> >> I believe that geography/shapelib/buildlink3.mk needs
> >>
> >> BUILDLINK_INCDIRS.shapelib:= include/libshp
> >>
> >> added so that applications can find the #include file. Am I correct? Or
> >> should applications that use it be patched to say #include<libshp/shaplfil.h>?
> >
> > If a program installs its header files in a subdirectory, it should
> > be well-defined and packages using it should use #include <foo/bar.h>,
> > or it should provide a pkg-config sniplet or config script that
> > provides the appropriate C(PP)FLAGS.
> >
> > I don't think it's up to buildlink3 to fix this. (Though of course
> > it can be used as a workaround.)
>
> You can also just add
>
> CPPFLAGS+= -I${BUILDLINK_PREFIX.shapelib}/include/libshp
>
> to the Makefile of the package that uses shapelib in this way to avoid
> needing to patch anything.
>
Thanks. I know lots of ways around the problem. My question was more
philosophical: where should it be fixed, in the client packages or in
shapelib. The answer I'm hearing is the former. (Obviously, it's a
judgment call, since pkgsrc does support BUILDLINK_INCDIRS and some
packages use it.)
--Steven M. Bellovin, http://www.cs.columbia.edu/~smb