From owner-freebsd-doc@FreeBSD.ORG Sun Sep 15 06:24:08 2013 Return-Path: Delivered-To: freebsd-doc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 91455D04 for ; Sun, 15 Sep 2013 06:24:08 +0000 (UTC) (envelope-from matthew.penna@gmail.com) Received: from hrndva-omtalb.mail.rr.com (hrndva-omtalb.mail.rr.com [71.74.56.122]) by mx1.freebsd.org (Postfix) with ESMTP id 5803C20CF for ; Sun, 15 Sep 2013 06:24:07 +0000 (UTC) X-Authority-Analysis: v=2.0 cv=ddwCLAre c=1 sm=0 a=D6SPsHPbnqXqIXRMvwsseQ==:17 a=RBlSrGADsdwA:10 a=tl3IIzNqaVQA:10 a=nDghuxUhq_wA:10 a=kj9zAlcOel0A:10 a=pGLkceISAAAA:8 a=KGjhK52YXX0A:10 a=i7URWOISgwgA:10 a=XzF7_ttjAAAA:8 a=-17yK2wQeijRiGdxbZsA:9 a=CjuIK1q_8ugA:10 a=KqIhK5g8EZZ7q_cd:21 a=01mDyDOsRs-iMUP6:21 a=D6SPsHPbnqXqIXRMvwsseQ==:117 X-Cloudmark-Score: 0 X-Authenticated-User: X-Originating-IP: 24.93.22.59 Received: from [24.93.22.59] ([24.93.22.59:42049] helo=[192.168.1.4]) by hrndva-oedge01.mail.rr.com (envelope-from ) (ecelerity 2.2.3.46 r()) with ESMTP id DE/93-28548-18255325; Sun, 15 Sep 2013 06:24:01 +0000 Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.6 \(1510\)) Subject: Re: augment USE_GCC description in the porter's handbook From: Matt Penna In-Reply-To: <20130913032440.GA68665@regency.nsu.ru> Date: Sun, 15 Sep 2013 02:24:00 -0400 Content-Transfer-Encoding: quoted-printable Message-Id: <7A6DAFBE-6290-410C-B463-D820365A2F7D@gmail.com> References: <20130913032440.GA68665@regency.nsu.ru> To: "freebsd-doc@freebsd.org" X-Mailer: Apple Mail (2.1510) X-BeenThere: freebsd-doc@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Documentation project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Sep 2013 06:24:08 -0000 On Sep 12, 2013, at 11:24 PM, Alexey Dokuchaev wrote: > hi, >=20 > cooked something up, so people would get less confused about proper > USE_GCC usage. diff attached. >=20 > - USE_GCC=3D3.4 > + USE_GCC=3DX.Y > =20 > - would add a dependency on gcc34 for every port, > - including gcc34 itself! > + (where X.Y is version number) would add a dependency on > + gccXY for every port, including = lang/gccXY > + itself! I am unsure about this change. I understand the value in generalizing = it, but I think leaving it with a specific version number provides a = clearer example. So, it might be better as it is currently written? > USE_GCC > - The port requires a specific version of > - gcc to build. The exact version > - can be specified with value such as > - 3.4. The minimal required > - version can be specified as 3.4+. > - The gcc from the base system is > - used when it satisfies the requested version, > - otherwise an appropriate gcc is > - compiled from ports and the CC > - and CXX variables are > - adjusted. > + The port requires GCC (gcc or > + g++) to build. Some ports need any > + GCC version, some require modern, recent versions. It > + is typically set to any (in this > + case, GCC from base would be used on versions of &os; > + that still have it, or lang/gcc = port > + would be installed when default C/C++ compiler is = Clang); > + or yes (means always use stable, = modern > + GCC from lang/gcc port). The exact > + version can be also specified, with a value such as > + 4.7. The minimal required > + version can be specified as 4.6+. > + The GCC from the base system is used when it satisfies > + the requested version, otherwise an appropriate = compiler > + in built from the port, and the CC > + and CXX variables are adjusted > + accordingly. I have some ideas about clarifying this, but I would like to better = understand the final point because "appropriate compiler" is a little = vague. Is lang/gcc the compiler that is always used in this situation as = long as it satisfies the minimal version requirement? Or is it possible = that a version older than lang/gcc will be used? Example: USE_GCC is set to "4.2+". Would lang/gcc (currently at 4.6, I = believe) always be built and installed? Or would 4.2 potentially be = built, as this is also available in the ports tree? If I should get = clarification on another list, I would be glad to do that. Matt=