Re: CURRENT: lang/gcc fails to build on CURRENT with error: configure: error: no usable dependency style found

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Mon, 11 Mar 2013 17:29:10 +0100
On 2013-03-11 14:15, Niclas Zeising wrote:
> On 03/11/13 14:13, Steve Kargl wrote:
...
>> No.  Here's my make.conf.
>>
>> KERNCONF=SPEW
>> CPUTYPE?=opteron
>> FFLAGS+= -O2 -pipe -march=native -mtune=native -funroll-loops -ftree-vectorize
>> MALLOC_PRODUCTION="YES"
>> WITHOUT_LIB32="YES"
>> WITHOUT_MODULES="YES"
>> WITHOUT_NLS="YES"
>> WITH_BSD_GREP="YES"
>> WITH_PROFILE="YES"
>> WITH_PKGNG=yes
>> PRINTERDEVICE=ps
>> #
>> # Crap for ports.
>> #
>> DISABLE_MAKE_JOBS="YES"
>> WITH_GHOSTSCRIPT_VER=8
>> #
>> # added by use.perl 2013-02-19 12:45:06
>> PERL_VERSION=5.12.4
>>
>
> This is most likely due to a incompatibility between bsd grep and gnu
> grep.  Try to switch to gnu grep, and the problem will most likely go away.

Yes, this is definitely due to a BSD grep bug.  The depcomp tests
create a file sub/conftest.Po, containing:

========================================================================
sub/conftest.o: sub/conftest.c sub/conftst1.h sub/conftst2.h \
    sub/conftst3.h sub/conftst4.h sub/conftst5.h sub/conftst6.h

sub/conftst1.h:

sub/conftst2.h:

sub/conftst3.h:

sub/conftst4.h:

sub/conftst5.h:

sub/conftst6.h:
========================================================================

Then it runs "grep sub/conftest.o sub/conftest.Po", which fails with BSD
grep, and succeeds with GNU grep.

BSD grep does something very strange here:

$ echo 'foo.bar' | grep foo.bar
foo.bar
$ echo 'foo.barx' | grep foo.bar
foo.barx
$ echo 'sub/foo.bar' | grep sub/foo.bar
sub/foo.bar
$ echo 'sub/foo.barx' | grep sub/foo.bar
$ echo $?
1

So why does it not match in the last case?  GNU grep works:

$ echo 'sub/foo.barx' | gnugrep sub/foo.bar
sub/foo.barx
Received on Mon Mar 11 2013 - 15:29:36 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:35 UTC