From owner-freebsd-toolchain@FreeBSD.ORG Tue Aug 23 09:34:13 2011 Return-Path: Delivered-To: freebsd-toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DADC61065670; Tue, 23 Aug 2011 09:34:13 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (cl-327.ede-01.nl.sixxs.net [IPv6:2001:7b8:2ff:146::2]) by mx1.freebsd.org (Postfix) with ESMTP id 9A4C98FC0A; Tue, 23 Aug 2011 09:34:13 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7:0:2cd0:314:6286:119c] (unknown [IPv6:2001:7b8:3a7:0:2cd0:314:6286:119c]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id A484B5C59; Tue, 23 Aug 2011 11:34:12 +0200 (CEST) Message-ID: <4E537413.5070105@FreeBSD.org> Date: Tue, 23 Aug 2011 11:34:11 +0200 From: Dimitry Andric Organization: The FreeBSD Project User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) Gecko/20110812 Thunderbird/6.0 MIME-Version: 1.0 To: Alexander Best References: <20110818050142.GA96873@freebsd.org> <4E4CB59B.3000005@FreeBSD.org> <20110818173508.GA92360@freebsd.org> <4E4D6E01.40905@FreeBSD.org> <20110819080105.GA92201@freebsd.org> <4E50551D.9020104@FreeBSD.org> <20110823092301.GA45910@freebsd.org> In-Reply-To: <20110823092301.GA45910@freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-toolchain@freebsd.org Subject: Re: Relocatable linking with relocations from format elf64-x86-64-freebsd (crt1_s.o) to format elf32-i386-freebsd (gcrt1.o) is not supported X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Aug 2011 09:34:13 -0000 On 2011-08-23 11:23, Alexander Best wrote: ... >> The patch fixes this by adding "-ECC -ECXX -EAS -ELD" to the build32 >> sub-make invocation, which forces those environment variables to always >> override any assignment in makefiles. >> >> It makes it possible to simply do: >> >> CC=clang >> CXX=clang++ >> >> in your make.conf, or specify a path, even: >> >> CC=/usr/local/bin/gcc46 >> CXX=/usr/local/bin/g++46 >> >> Note this was already possible on i386, but not yet on amd64. Also, >> strange things might happen if you set CC but not CXX, or vice versa... > > any chance this patch can be committed? I hope so, but it needs to be reviewed by one or more senior build gurus, before it makes a chance (if any) to get into 9.0-R. It's really just a band-aid now. Obviously, the whole way Makefile.inc1 sets up CC to run the build32 stage should be overhauled, and as Warner said, we really need a (SYSTEM|WORLD|PORTS)_COMPILER global switch (instead of manually setting CC), but that kind of restructuring must be done after the tree is unfrozen, not now.