CFT: BSD-licensed grep [Fwd: cvs commit: ports/textproc/bsdgrep
Makefile distinfo]
Kris Kennaway
kris at FreeBSD.org
Tue Jul 8 13:57:15 UTC 2008
Gábor Kövesdán wrote:
>
>>> Well, it seems you have missed the first nits of the discussion. GNU
>>> grep has some regression test, which doesn't pass completely itself
>>> either. :) I've mentioned here that I used those tests to find out
>>> what incompatible options are there. Unfortunately, I have to say
>>> that BSD grep won't pass all of those, because GNU allows some
>>> non-standard regexes, which are rejected by our libc-regex library,
>>> like for example (a|) is not standard because it has an empty
>>> subexpression. First, I tried to pre-edit such expression in the
>>> code. It was ugly enough but I thought: "Ok, this code is pretty
>>> ugly, but compatibility is important, maybe we can later revise
>>> and/or change our regexp library and get rid of these snippets."
>>> Later, when Andrey pointed it out, I realized that my workarounds
>>> adressed those incompatibilities but didn't work completely, they
>>> broke compatibility at other places, thus I just removed them,
>>> because it was not that easy to fix. The version that I sent you for
>>> the portbuild test, doesn't have those workarounds. The regression
>>> test helped though to fix other compatibility issues, like return
>>> values. All of these trivial things are supposed to be compatible
>>> now, the only exceptions are the non-standard regexes. That's why I'm
>>> so curious about the results. If they are inacceptable, we can try to
>>> build BSD grep with the GNU regexp lib (it's in the tree, as Pedro F.
>>> Giffuni pointed it out). It doesn't work by just linking with that
>>> library, so it will need more work and investigation then, not
>>> speaking about that GNU regex should go one day...
>>
>> OK, yes I did miss the start of the thread, but I was trying to
>> suggest that grep doesn't seem to be functional enough yet and this is
>> a way to work on identifying what needs to be fixed.
> Could you please send me some logs of ports which build with GNU grep
> but not with BSD grep? That would help me to identify the problems and
> find out if those problems come from non-standard regexes or what's
> happening here?
No, because every port build fails because egrep -v is failing to work
properly in the management scripts :) I sent you mail about this already.
Kris
More information about the freebsd-hackers
mailing list