From owner-svn-ports-all@freebsd.org Mon Jun 11 12:39:04 2018 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 93EFE101E82D; Mon, 11 Jun 2018 12:39:04 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 481A982B94; Mon, 11 Jun 2018 12:39:04 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 260B71B85D; Mon, 11 Jun 2018 12:39:04 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w5BCd31l032132; Mon, 11 Jun 2018 12:39:03 GMT (envelope-from antoine@FreeBSD.org) Received: (from antoine@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w5BCd3AP032131; Mon, 11 Jun 2018 12:39:03 GMT (envelope-from antoine@FreeBSD.org) Message-Id: <201806111239.w5BCd3AP032131@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: antoine set sender to antoine@FreeBSD.org using -f From: Antoine Brodin Date: Mon, 11 Jun 2018 12:39:03 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r472188 - head/Mk/Uses X-SVN-Group: ports-head X-SVN-Commit-Author: antoine X-SVN-Commit-Paths: head/Mk/Uses X-SVN-Commit-Revision: 472188 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Jun 2018 12:39:04 -0000 Author: antoine Date: Mon Jun 11 12:39:03 2018 New Revision: 472188 URL: https://svnweb.freebsd.org/changeset/ports/472188 Log: Add support for USES=compiler:c++17-lang PR: 222415 Submitted by: Naram Qashat With hat: portmgr Modified: head/Mk/Uses/compiler.mk Modified: head/Mk/Uses/compiler.mk ============================================================================== --- head/Mk/Uses/compiler.mk Mon Jun 11 12:00:59 2018 (r472187) +++ head/Mk/Uses/compiler.mk Mon Jun 11 12:39:03 2018 (r472188) @@ -9,6 +9,7 @@ # c++0x: The port needs a compiler understanding C++0X # c++11-lang: The port needs a compiler understanding C++11 # c++14-lang: The port needs a compiler understanding C++14 +# c++17-lang: The port needs a compiler understanding C++17 # gcc-c++11-lib:The port needs g++ compiler with a C++11 library # c++11-lib: The port needs a compiler understanding C++11 and with a C++11 ready standard library # c11: The port needs a compiler understanding C11 @@ -35,7 +36,7 @@ _INCLUDE_USES_COMPILER_MK= yes compiler_ARGS= env .endif -VALID_ARGS= c++11-lib c++11-lang c++14-lang c11 features openmp env nestedfct c++0x gcc-c++11-lib +VALID_ARGS= c++11-lib c++11-lang c++14-lang c++17-lang c11 features openmp env nestedfct c++0x gcc-c++11-lib _CC_hash:= ${CC:hash} _CXX_hash:= ${CXX:hash} @@ -50,6 +51,8 @@ _COMPILER_ARGS+= features c++0x _COMPILER_ARGS+= features c++11-lang .elif ${compiler_ARGS} == c++14-lang _COMPILER_ARGS+= features c++14-lang +.elif ${compiler_ARGS} == c++17-lang +_COMPILER_ARGS+= features c++17-lang .elif ${compiler_ARGS} == c11 _COMPILER_ARGS+= features c11 .elif ${compiler_ARGS} == features @@ -138,7 +141,7 @@ COMPILER_FEATURES= libstdc++ .endif CSTD= c89 c99 c11 gnu89 gnu99 gnu11 -CXXSTD= c++98 c++0x c++11 c++14 gnu++98 gnu++11 +CXXSTD= c++98 c++0x c++11 c++14 c++17 gnu++98 gnu++11 gnu++14 gnu++17 .for std in ${CSTD} ${CXXSTD} _LANG=c @@ -165,6 +168,28 @@ CHOSEN_COMPILER_TYPE= gcc .elif ${COMPILER_TYPE} == clang && ${COMPILER_FEATURES:Mlibstdc++} USE_GCC= yes CHOSEN_COMPILER_TYPE= gcc +.endif +.endif + +.if ${_COMPILER_ARGS:Mc++17-lang} +.if !${COMPILER_FEATURES:Mc++17} +.if (defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc) || (${ARCH} != amd64 && ${ARCH} != i386) # clang not always supported on Tier-2 +USE_GCC= yes +CHOSEN_COMPILER_TYPE= gcc +.elif (${COMPILER_TYPE} == clang && ${COMPILER_VERSION} < 50) || ${COMPILER_TYPE} == gcc +.if ${ALT_COMPILER_TYPE} == clang && ${ALT_COMPILER_VERSION} >= 50 +CPP= clang-cpp +CC= clang +CXX= clang++ +CHOSEN_COMPILER_TYPE= clang +.else +BUILD_DEPENDS+= ${LOCALBASE}/bin/clang60:devel/llvm60 +CPP= ${LOCALBASE}/bin/clang-cpp60 +CC= ${LOCALBASE}/bin/clang60 +CXX= ${LOCALBASE}/bin/clang++60 +CHOSEN_COMPILER_TYPE= clang +.endif +.endif .endif .endif