From owner-svn-ports-head@FreeBSD.ORG Thu Nov 7 17:35:37 2013 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 50DAE167; Thu, 7 Nov 2013 17:35:37 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3DCE72076; Thu, 7 Nov 2013 17:35:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA7HZbr4085193; Thu, 7 Nov 2013 17:35:37 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA7HZbgF085192; Thu, 7 Nov 2013 17:35:37 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201311071735.rA7HZbgF085192@svn.freebsd.org> From: Baptiste Daroussin Date: Thu, 7 Nov 2013 17:35:37 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r333142 - head/Mk/Uses X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 17:35:37 -0000 Author: bapt Date: Thu Nov 7 17:35:36 2013 New Revision: 333142 URL: http://svnweb.freebsd.org/changeset/ports/333142 Log: Allow base clang to be used if version is >= 3.3 This gives 2 new variables to the porters: ALT_COMPILER_TYPE which can be empty, clang or cc depending on what ${CC} is ALT_COMPILER_VERSION which will give the porter a 2 digit version of the alternative compiler Requested by: many Modified: head/Mk/Uses/compiler.mk Modified: head/Mk/Uses/compiler.mk ============================================================================== --- head/Mk/Uses/compiler.mk Thu Nov 7 16:59:23 2013 (r333141) +++ head/Mk/Uses/compiler.mk Thu Nov 7 17:35:36 2013 (r333142) @@ -59,6 +59,22 @@ COMPILER_TYPE= clang COMPILER_TYPE= gcc .endif +ALT_COMPILER_VERSION= 0 +ALT_COMPILER_TYPE= none +_ALTCCVERSION= +.if ${COMPILER_TYPE} == gcc && exists(/usr/bin/clang) +_ALTCCVERSION!= /usr/bin/clang --version +.elif ${COMPILER_TYPE} == clang && exists(/usr/bin/gcc) +_ALTCCVERSION!= /usr/bin/gcc --version +.endif + +ALT_COMPILER_VERSION= ${_ALTCCVERSION:M[0-9].[0-9]*:C/([0-9]).([0-9]).*/\1\2/g} +.if ${_ALTCCVERSION:Mclang} +ALT_COMPILER_TYPE= clang +.elif !empty(_ALTCCVERSION) +ALT_COMPILER_TYPE= gcc +.endif + .if ${_COMPILER_ARGS:Mopenmp} .if ${COMPILER_TYPE} == clang USE_GCC= yes @@ -101,6 +117,11 @@ USE_GCC= yes .if defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc USE_GCC= yes .elif (${COMPILER_TYPE} == clang && ${COMPILER_VERSION} < 33) || ${COMPILER_TYPE} == gcc +.if ${ALT_COMPILER_TYPE} == clang && ${ALT_COMPILER_VERSION} >= 33 +CPP= clang-cpp +CC= clang +CXX= clang++ +.else BUILD_DEPENDS+= ${LOCALBASE}/bin/clang33:${PORTSDIR}/lang/clang33 CPP= ${LOCALBASE}/bin/clang-cpp33 CC= ${LOCALBASE}/bin/clang33 @@ -108,6 +129,7 @@ CXX= ${LOCALBASE}/bin/clang++33 .endif .endif .endif +.endif .if ${_COMPILER_ARGS:Mc11} .if !${COMPILER_FEATURES:Mc11}