Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Feb 2011 13:06:34 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Tim Kientzle <tim@kientzle.com>
Cc:        FreeBSD-current Current <freebsd-current@freebsd.org>
Subject:   Re: Can't update CLang-based system
Message-ID:  <4D6B8FCA.5050203@FreeBSD.org>
In-Reply-To: <11C58791-9103-4C0E-8B35-EE46A4A6D3D4@kientzle.com>
References:  <11C58791-9103-4C0E-8B35-EE46A4A6D3D4@kientzle.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2011-02-28 04:30, Tim Kientzle wrote:
> I have a FreeBSD-CURRENT AMD64 system here that was last updated at r215029.
>
> I'm trying to update it to r219079, but the build fails in lib/libz when it tries to compile gvmat64.S.  It looks like the Makefile here has a workaround for clang on AMD64, but it doesn't seem to actually be working in this case.

For this to work, you must put the following fragment in /etc/make.conf,
*not* in /etc/src.conf.

.if !defined(CC) || ${CC} == "cc"
CC=clang
.endif
.if !defined(CXX) || ${CXX} == "c++"
CXX=clang++
.endif
# Don't die on warnings
NO_WERROR=
WERROR=

The problem with src.conf is that is only read when make encounters a
.include <bsd.lib.mk> or <bsd.prog.mk> statement, which usually is at
the end of a Makefile.  Thus, any checks done on ${CC} or ${CXX} in the
beginning of a Makefile pick up only the default value.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D6B8FCA.5050203>