From owner-freebsd-ports@FreeBSD.ORG Sat Nov 8 04:39:29 2014 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 347B7603; Sat, 8 Nov 2014 04:39:29 +0000 (UTC) Received: from mail-wg0-x22b.google.com (mail-wg0-x22b.google.com [IPv6:2a00:1450:400c:c00::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B98CFC86; Sat, 8 Nov 2014 04:39:28 +0000 (UTC) Received: by mail-wg0-f43.google.com with SMTP id y10so5211231wgg.2 for ; Fri, 07 Nov 2014 20:39:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=7TnuqNMxWAM7BVOeMpbT7B6xHkWZ1tw/lORMFkuwPNE=; b=d5Q+WPCy99jcDGyTjLRTaP7uJlPU/u5F0L/QmxlUdeou8J1M6a8S+dm1MCsSKnhxSP P5Th+vVH3WU/M3eIboLSQmhVEoBXtQLlePfoheX2ugRyelSWc1ygQBvngm4eBmEYDScy FaTZljOYAgXfV7TBxCEHzMITTg8hicg0m7VUNQ7lI7IArcAOX52NsFaQQjOsJmipEYdc pNRxePkgawkCSh9s8C7RzqdLyYrNGNYAjSCUDc1Uzoe5hS5a980JG/9S5IX1jfRqmBIb +SXIc97jd38GuiYUsP68J3bUmMCv4dcP/cNesf3SM6VV27MNrWAdTjZytMYg3tTVM04D dugQ== MIME-Version: 1.0 X-Received: by 10.194.60.16 with SMTP id d16mr22809070wjr.13.1415421567201; Fri, 07 Nov 2014 20:39:27 -0800 (PST) Received: by 10.27.46.14 with HTTP; Fri, 7 Nov 2014 20:39:27 -0800 (PST) In-Reply-To: <6810431a15d054459a29d434dd22619e@ultimatedns.net> References: <6810431a15d054459a29d434dd22619e@ultimatedns.net> Date: Fri, 7 Nov 2014 22:39:27 -0600 Message-ID: Subject: Re: How exactly does the base toolchain determine WHICH language to build with? From: Scot Hetzel To: Chris H Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-hackers@freebsd.org, FreeBSD CURRENT , FreeBSD ports X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2014 04:39:29 -0000 On Fri, Nov 7, 2014 at 6:23 PM, Chris H wrote: > Greetings, > Sorry for the long title. I've been [needlessly] struggling > with getting ports within the ports tree to build, on a > fresh 11-CURRENT install from 2014-11-05. With custom > KERNEL and WORLD built, and installed. > Here's my situation, which has worked well since ~8.2; > make.conf(5) > WITHOUT_CLANG=true > FAVORITE_COMPILER=gcc > src.conf(5) > WITHOUT_CLANG=true > > I'll neither argue, nor defend rational for w/o clang. To > boring and out of scope for this thread. That said; I > realize that lang/clang(33/34/35) is the default toolchain > for 10+, and that's just fine by me. So I shouldn't be lang/clang(33/34/35) is not the default toolchain in 10+. 10+ uses a version of clang that is included in the FreeBSD source (/usr/src). > terribly surprised when install kernel/world, followed by > make delete-old removes the clang built, or provided by > the base install from the (initial) install procedure. But > what _does_ surprise me, is that the install of lang/gcc-48 > does _not_ become the compiler of choice with the above > $ENV, after [seemingly] deleting clang. I understand that FAVORITE_COMPILER is used by Mk/Uses/compiler.mk. If you want ports to build with lang/gcc-48, then you would need to check that the ports you are trying to compile have either USES=compiler or USES_GCC defined in their Makefile. Otherwise the ports will use the compiler that is provided by the FreeBSD source (gcc 2.4.x or clang). When WITHOUT_CLANG is defined in make.conf/src.conf. The FreeBSD source will be built using gcc 2.4.x from the FreeBSD source. /usr/bin/{cc,c++} will then be linked to the gcc versions. The ports will then use this version to build if there is no USES_GCC or USES=compiler in the ports Makefile. -- DISCLAIMER: No electrons were maimed while sending this message. Only slightly bruised.