Date: Fri, 13 Sep 2013 09:33:38 -0400 From: Jerry <jerry@seibercom.net> To: freebsd-ports@freebsd.org Subject: Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment Message-ID: <20130913093338.40b9eb3e@scorpio> In-Reply-To: <20130913131753.GJ33103@ithaqua.etoilebsd.net> References: <20130913131753.GJ33103@ithaqua.etoilebsd.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_/ZwficfLWf8xIux4/be9b68j Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, 13 Sep 2013 15:17:53 +0200 Baptiste Daroussin articulated: > Hi, >=20 > Given how old our gcc in base is and the work done on clang and > libc++. >=20 > It is becoming complicating to make some ports properly working on > all supported version of FreeBSD. >=20 > To help in that I would like to propose a new USES: > compiler >=20 > http://people.freebsd.org/~bapt/compiler.mk.txt >=20 > What it does is: >=20 > USES=3Dcompiler >=20 > Will set 2 variables: > COMPILER_TYPE to gcc or clang depending on the base compiler > COMPILER_VERSION wish will be the 2 first digits of the compiler > version 46 for gcc 4.6.* 33 for clang 3.3.* >=20 > USES=3Dcompiler:features > It creates a new COMPILER_FEATURES which will gather the supported > features of the compiler. >=20 > Features being: > libstdc++ if the c++ compiler uses libstdc++ by default > libc++ if the c++ compiler uses libc++ by default > And the standard supported by the compiler: > c89, c99, c11, gnu89, gnu99, gnu11, c++98, c++11, gnu++98, gnu++11 >=20 > USES=3Dcompiler:c11 >=20 > Means you need a c11 capable compiler, and if your default comiler is > not able to do it, it will picked clang33 by default of gcc 4.6+ if > you specify in your make.conf you do prefer gcc over clang >=20 > USES=3D compiler:c++11 >=20 > Means you need a c++1 capable compiler but not necessary a c++ 11 > aware standard library, in that case if the base compiler is not able > to support c++11 clang33 will be used from ports otherwise gcc 4.6+ > if you specify it in make.conf. >=20 > USES=3D compiler=3Dstdc++11 >=20 > You need a c++11 aware stdlibrary, if the base compiler doesn't have > it then gcc 4.6+ will be used. >=20 > To specify you do prefer gcc over clang by default add > FAVORITE_COMPILER=3Dgcc in your make.conf >=20 > For all cases that does not fall into one of the above case continue > using USE_GCC as you where doing before Excellent idea. I was never in favor of switching to "clang" anyway. I would have preferred that the base "gcc" was updated to the latest stable version; however, too many people got their shorts in a bunch and that wasn't going to happen. This sounds like a smart, well thought out concept; therefore, it will probably be rejected. --=20 Jerry =E2=99=94 Disclaimer: off-list followups get on-list replies or get ignored. Please do not ignore the Reply-To header. __________________________________________________________________ --Sig_/ZwficfLWf8xIux4/be9b68j Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.21 (FreeBSD) iQEcBAEBAgAGBQJSMxQ6AAoJEF2rWD2do7dNtOUH/0m8V28zyzIJG8r3rWltCQ88 podOeAzhbKqOPl+JhSOrP0YfeReT9uJyqSd+HOJegI8d0liUskvrks6a5s6kYFhA BpBdCZJTFPPM0iuPaaU4xe3nZ/hPfRJdSzSG9d70YOs6JlJR7Ti+CJ9racGTRJr+ KUEh1+x9VZPHDEoNHly+WgnJJLbthU7XdH0P2OXONsPfIivRCPZ7+OTMJw9IgZTa idaPM/QpDGEXV94baQcTzeBMlXU3c77asJPsyaL4y/5tOrHEv9Z5tpXTKQB8j1AF 90HoKUmV4C+MJuTdMgvhg9PdpvGxxAOAKgDHU7fAiPD6Yq0CbzuoP8PSUkohw28= =UkQg -----END PGP SIGNATURE----- --Sig_/ZwficfLWf8xIux4/be9b68j--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130913093338.40b9eb3e>