From owner-freebsd-toolchain@FreeBSD.ORG Thu Dec 13 14:48:34 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 41182A95 for ; Thu, 13 Dec 2012 14:48:34 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-da0-f54.google.com (mail-da0-f54.google.com [209.85.210.54]) by mx1.freebsd.org (Postfix) with ESMTP id 03CA08FC17 for ; Thu, 13 Dec 2012 14:48:33 +0000 (UTC) Received: by mail-da0-f54.google.com with SMTP id n2so798389dad.13 for ; Thu, 13 Dec 2012 06:48:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=JrfrRcYdipTTVhDmk92HSANbamZHU2pLCbKd3JLwvBY=; b=l4fcPBQFSNn0Iqv0isGXq5TUIht4hp7lKu5GGZS4xB9vRVhJ3exWgJPkPfAzsjqIJt 39+C11SqzCKzwEFx9mmwBTBZdJxHJSUyEa9yyYgDlhc61YtcgXz6IGUSWJmhzZ5/fUGV axoGO8VIAZPfGfekcMLTXlPFkOCYgYa6qwTrVqnCKivKdfVcQe4zrW2spo8Zw/ppgYJT ygD+EbdC7rBcZghZpM/T+ATecc3A2sXrveuNeRyP76erXRyxx2Ci2xiZq0YVev4doLlX 47SuI5ODDFxinQ9laQ1ZB68mn83M9iSXI1bKQr8HuLM7NzSEPgT3L/zU1RkpzvzLY6Fr Jr+A== Received: by 10.68.190.38 with SMTP id gn6mr6422761pbc.6.1355410113130; Thu, 13 Dec 2012 06:48:33 -0800 (PST) Received: from [10.0.0.53] (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPS id zv10sm1128607pbc.76.2012.12.13.06.48.29 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 13 Dec 2012 06:48:31 -0800 (PST) Sender: Warner Losh Subject: Re: Using non-standard linker Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <5337BAB6-7EEE-4A1E-9660-902544CCE3EE@cederstrand.dk> Date: Thu, 13 Dec 2012 07:48:26 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <8450A192-367E-4577-97C5-114EDD094BD4@bsdimp.com> 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.1085) X-Gm-Message-State: ALoCoQm5453VtfSmmCP66hYoORXEDZVhrVx37CmgqD9dOAIh77HkhIH/fabyza19/hOH8If7g1Mn 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 14:48:34 -0000 On Dec 13, 2012, at 6:18 AM, Erik Cederstrand wrote: > Den 13/12/2012 kl. 14.10 skrev David Chisnall : >=20 >> Hi Eric, >>=20 >> 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. Install ld as ld.gnu during the build and after. Make ld a small shell = script that invokes ld.gnu by default, or something else if a variable = is set. Much like the way we have different mail backends to a common = mail front end. Then ld does what people want, and you have a hook to do = different things. Warner