From owner-freebsd-toolchain@FreeBSD.ORG Thu Dec 13 13:20:16 2012 Return-Path: Delivered-To: toolchain@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D91ADF2C for ; Thu, 13 Dec 2012 13:20:16 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) by mx1.freebsd.org (Postfix) with ESMTP id 903AE8FC18 for ; Thu, 13 Dec 2012 13:20:15 +0000 (UTC) Received: from c120.sec.cl.cam.ac.uk (c120.sec.cl.cam.ac.uk [128.232.18.120]) (authenticated bits=0) by theravensnest.org (8.14.5/8.14.5) with ESMTP id qBDDKC4P096683 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES128-SHA bits=128 verify=NO); Thu, 13 Dec 2012 13:20:13 GMT (envelope-from theraven@FreeBSD.org) Subject: Re: Using non-standard linker Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=us-ascii From: David Chisnall In-Reply-To: <5337BAB6-7EEE-4A1E-9660-902544CCE3EE@cederstrand.dk> Date: Thu, 13 Dec 2012 13:20:11 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: <99D2C6D2-4C56-4724-875D-31FF41CFA2A4@FreeBSD.org> References: <089FCDB5-C0D2-4675-AB71-FD7089BFA031@cederstrand.dk> <5880F938-A9EC-4B2D-8079-42504DFA87F9@FreeBSD.org> <5337BAB6-7EEE-4A1E-9660-902544CCE3EE@cederstrand.dk> To: Erik Cederstrand X-Mailer: Apple Mail (2.1278) Cc: "toolchain@freebsd.org" , Pete chou X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Dec 2012 13:20:16 -0000 On 13 Dec 2012, at 13:18, Erik Cederstrand wrote: >> The easiest way of doing this is to make /usr/bin/ld (in the host = system and in the bootstrap) into a symbolic link that points to = whatever the selected linker is. I had to do this when testing gold as = well (we end up with ld-gold and ld-bfd and ld being a symlink to one of = them). >=20 > Yes, a symlink is of course an easy solution post-install. But 'ld' is = built as part of 'make toolchain', I believe, so this approach wouldn't = work if I wanted mclinker to be used as the linker in 'make buildworld'. = The newly built 'ld' in /usr/obj/ would be used as the linker instead. That's why I said 'and in the bootstrap'. You'd also need to ensure = that the bootstrap build of clang and binutils set up the symlink. = Purely for testing, I think you can do this manually by doing the = bootstrap and then the buildworld as separate make invocations. David=