Subject: Re: make: RE substitution error: Invalid preceding regular expression
To: Marc Recht <recht@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 11/18/2003 16:52:34
On Tue, 18 Nov 2003, Jeremy C. Reed wrote:

> > >> ===> Required package py23-xml-*: NOT found
> > >> ===> Verifying reinstall for ../../textproc/pyxml
> > >> bmake: RE substitution error: Invalid preceding regular expression
> > [...]
> >
> > I think your bmake doesn't like this: [from extension.mk]
> > PYTHON_VERSION_REQD?= ${PKGNAME_REQD:C/^\'?py([^-]*)-.*/\1/}
> >
> > You could try changing the: \'? to \' since (AFAIK) all pkgnames are quoted
> > now.
> >
> > BTW, what version of bmake is it ?
>
> This was with old bmake-3.1.17. But I can't reproduce this problem today.

I spoke to soon. This error happened again after python23-pth-2.3nb3 was
installed but before pyxml.

I am now using latest bmake too (as installed from pkgsrc today).

I tried your suggested fix above. It did not work for me. At first, I
don't think that is used anyways, because PKGNAME_REQD does not appear to
be defined (according to show-var target). But I commented out that line
and it continued fine.

I don't know where the problem is. I will send-pr this if I can reproduce
on another system.

My workaround is to undef PYTHON_VERSION_REQD (or define it) in
pyversion.mk. (My PYTHON_VERSION_REQD=23pth in my Makefile is not used.)

   Jeremy C. Reed
   http://bsd.reedmedia.net/