Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jul 2020 21:07:01 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        Yuri Pankov <yuripv@yuripv.dev>
Cc:        "sjg@freebsd.org" <sjg@FreeBSD.org>, svn-src-head@freebsd.org, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: svn commit: r363031 - in head: contrib/bmake contrib/bmake/lst.lib contrib/bmake/mk contrib/bmake/mk/sys contrib/bmake/unit-tests usr.bin/bmake (make now broken)
Message-ID:  <8969386C-D964-4597-BE7E-6A2D215D801C@yahoo.com>
In-Reply-To: <25afe2ff-e805-8415-ddd9-430cfa271e16@yuripv.dev>
References:  <CCB7E15F-98CE-492A-94D1-CE8964E8363E.ref@yahoo.com> <CCB7E15F-98CE-492A-94D1-CE8964E8363E@yahoo.com> <25afe2ff-e805-8415-ddd9-430cfa271e16@yuripv.dev>

next in thread | previous in thread | raw e-mail | index | archive | help


On 2020-Jul-8, at 20:35, Yuri Pankov <yuripv at yuripv.dev> wrote:

> Mark Millard wrote:
>> This seems to have broken doing buildworld buildkernel and
>> other things using make:
>> make[2]: "/usr/src/share/mk/bsd.compiler.mk" line 197: warning: =
String comparison operator should be either =3D=3D or !=3D
>> make[2]: "/usr/src/share/mk/bsd.compiler.mk" line 197: warning: =
String comparison operator should be either =3D=3D or !=3D
>> . . .
>> make[3]: "/usr/src/share/mk/bsd.sys.mk" line 100: warning: String =
comparison operator should be either =3D=3D or !=3D
>> . . .
>> make[3]: "/usr/src/share/mk/bsd.sys.mk" line 81: warning: String =
comparison operator should be either =3D=3D or !=3D
>> . . .
>> Using -d c shows the likes of:
>> . . .
>> lhs =3D "clang", rhs =3D "clang", op =3D =3D=3D
>> lhs =3D "${${:UCOMPILER_TYPE}__${${:U${_empty_var_}}_cc_hash}}", rhs =
=3D "gcc", op =3D =3D=3D
>> make[2]: "/usr/src/share/mk/bsd.compiler.mk" line 197: warning: =
String comparison operator should be either =3D=3D or !=3D
>> lhs =3D "clang", rhs =3D "clang", op =3D =3D=3D
>> lhs =3D "LD", rhs =3D "LD", op =3D =3D=3D
>> . . .
>> left =3D 6.000000, right =3D 2.000000, op =3D <=3D
>> left =3D 6.000000, right =3D 1.000000, op =3D <=3D
>> lhs =3D "${${:UCOMPILER_TYPE}__${${:U${_empty_var_}}_cc_hash}}", rhs =
=3D "clang", op =3D =3D=3D
>> make[3]: "/usr/src/share/mk/bsd.sys.mk" line 100: warning: String =
comparison operator should be either =3D=3D or !=3D
>> lhs =3D "${${:UCOMPILER_TYPE}__${${:U${_empty_var_}}_cc_hash}}", rhs =
=3D "gcc", op =3D =3D=3D
>> lhs =3D "clang", rhs =3D "gcc", op =3D =3D=3D
>> . . .
>> left =3D 0.000000, right =3D 6.000000, op =3D <=3D
>> left =3D 0.000000, right =3D 3.000000, op =3D <=3D
>> lhs =3D "clang", rhs =3D "gcc", op =3D =3D=3D
>> make[3]: "/usr/src/share/mk/bsd.sys.mk" line 81: warning: String =
comparison operator should be either =3D=3D or !=3D
>> lhs =3D "clang", rhs =3D "clang", op =3D =3D=3D
>> left =3D 100001.000000, right =3D 70000.000000, op =3D >=3D
>> lhs =3D "amd64", rhs =3D "arm", op =3D =3D=3D
>> (Now I just need to figure out how to get back to a working context.)
>=20
> For me, buildworld/buildkernel produced only warnings,

But, looking at the code in bmake, the expression is also
evaluated differently/incorrectly when it is classified as
having the problem of having a incorrect operator. In other
words: the behavior in make changes via misevaluated
expressions.


> though the one in ports is real issue:
>=20
> $ make config
> make: "/usr/ports/Mk/bsd.port.mk" line 2096: warning: String =
comparison operator should be either =3D=3D or !=3D
> make: "/usr/ports/Mk/bsd.port.mk" line 2096: Malformed conditional =
(defined(MAKE_JOBS_NUMBER_LIMIT) && ( ${MAKE_JOBS_NUMBER_LIMIT} < =
${_MAKE_JOBS_NUMBER} ))
> make: Fatal errors encountered -- cannot continue
> make: stopped in /usr/ports/devel/subversion

Not the only "real issue", I'm afraid.

=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8969386C-D964-4597-BE7E-6A2D215D801C>