Subject: Re: bsd.pkg.mk broken?
To: Simon Gerraty <sjg@juniper.net>
From: Alan Barrett <apb@cequrux.com>
List: tech-pkg
Date: 02/23/2004 23:38:26
On Mon, 23 Feb 2004, Simon Gerraty wrote:
> >_BLNK_GE_DEPENDS.${_pkg_}= ${BUILDLINK_DEPENDS.${_pkg_}:N*{*:M*>=[0-9]*}
> >                                                          ^
> 
> Yes, the above looks wrong.  Can anyone explain what its trying to do?
> Perhaps it can be re-worked.

It's trying to find all the words in ${BUILDLINK_DEPENDS.${_pkg_}}
that contain '>=' but do not contain '{'. This is used in pkgsrc
to figure out what version of package "${_pkg_}" is required by
some other package.  I am not sure why the words that contain
'{' are skipped here; the commit log for revision 1.95 of
pkgsrc/mk/buildlink3/bsd.buildlink3.mk doesn't help me to understand
what "Don't spew files in the package directory" means.

> >LBRACE={
> >_BLNK_GE_DEPENDS.${_pkg_}= ${BUILDLINK_DEPENDS.${_pkg_}:N*${LBRACE}*:M*>=[0-9]*}
> 
> That's fine, doesn't a simple \ work?  ISTR :M at least checked for \{

Yes, \{ also seems to work with the version of make that I have lying around.

--apb (Alan Barrett)