View | Details | Raw Unified | Return to bug 222415 | Differences between
and this patch

Collapse All | Expand All

(-)Mk/Uses/compiler.mk (-2 / +27 lines)
Lines 9-14 Link Here
9
# c++0x:	The port needs a compiler understanding C++0X
9
# c++0x:	The port needs a compiler understanding C++0X
10
# c++11-lang:	The port needs a compiler understanding C++11
10
# c++11-lang:	The port needs a compiler understanding C++11
11
# c++14-lang:	The port needs a compiler understanding C++14
11
# c++14-lang:	The port needs a compiler understanding C++14
12
# c++17-lang:   The port needs a compiler understanding C++17
12
# gcc-c++11-lib:The port needs g++ compiler with a C++11 library
13
# gcc-c++11-lib:The port needs g++ compiler with a C++11 library
13
# c++11-lib:	The port needs a compiler understanding C++11 and with a C++11 ready standard library
14
# c++11-lib:	The port needs a compiler understanding C++11 and with a C++11 ready standard library
14
# c11:		The port needs a compiler understanding C11
15
# c11:		The port needs a compiler understanding C11
Lines 35-41 Link Here
35
compiler_ARGS=	env
36
compiler_ARGS=	env
36
.endif
37
.endif
37
38
38
VALID_ARGS=	c++11-lib c++11-lang c++14-lang c11 features openmp env nestedfct c++0x gcc-c++11-lib
39
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
39
40
40
_CC_hash:=	${CC:hash}
41
_CC_hash:=	${CC:hash}
41
_CXX_hash:=	${CXX:hash}
42
_CXX_hash:=	${CXX:hash}
Lines 50-55 Link Here
50
_COMPILER_ARGS+=	features c++11-lang
51
_COMPILER_ARGS+=	features c++11-lang
51
.elif ${compiler_ARGS} == c++14-lang
52
.elif ${compiler_ARGS} == c++14-lang
52
_COMPILER_ARGS+=	features c++14-lang
53
_COMPILER_ARGS+=	features c++14-lang
54
.elif ${compiler_ARGS} == c++17-lang
55
_COMPILER_ARGS+=	features c++17-lang
53
.elif ${compiler_ARGS} == c11
56
.elif ${compiler_ARGS} == c11
54
_COMPILER_ARGS+=	features c11
57
_COMPILER_ARGS+=	features c11
55
.elif ${compiler_ARGS} == features
58
.elif ${compiler_ARGS} == features
Lines 138-144 Link Here
138
.endif
141
.endif
139
142
140
CSTD=	c89 c99 c11 gnu89 gnu99 gnu11
143
CSTD=	c89 c99 c11 gnu89 gnu99 gnu11
141
CXXSTD=	c++98 c++0x c++11 c++14 gnu++98 gnu++11
144
CXXSTD=	c++98 c++0x c++11 c++14 c++17 gnu++98 gnu++11 gnu++14 gnu++17
142
145
143
.for std in ${CSTD} ${CXXSTD}
146
.for std in ${CSTD} ${CXXSTD}
144
_LANG=c
147
_LANG=c
Lines 168-173 Link Here
168
.endif
171
.endif
169
.endif
172
.endif
170
173
174
.if ${_COMPILER_ARGS:Mc++17-lang}
175
.if !${COMPILER_FEATURES:Mc++17}
176
.if (defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc) || (${ARCH} != amd64 && ${ARCH} != i386) # clang not always supported on Tier-2
177
USE_GCC=	yes
178
CHOSEN_COMPILER_TYPE=	gcc
179
.elif (${COMPILER_TYPE} == clang && ${COMPILER_VERSION} < 50) || ${COMPILER_TYPE} == gcc
180
.if ${ALT_COMPILER_TYPE} == clang && ${ALT_COMPILER_VERSION} >= 50
181
CPP=	clang-cpp
182
CC=	clang
183
CXX=	clang++
184
CHOSEN_COMPILER_TYPE=	clang
185
.else
186
BUILD_DEPENDS+=	${LOCALBASE}/bin/clang60:devel/llvm60
187
CPP=	${LOCALBASE}/bin/clang-cpp60
188
CC=	${LOCALBASE}/bin/clang60
189
CXX=	${LOCALBASE}/bin/clang++60
190
CHOSEN_COMPILER_TYPE=	clang
191
.endif
192
.endif
193
.endif
194
.endif
195
171
.if ${_COMPILER_ARGS:Mc++14-lang}
196
.if ${_COMPILER_ARGS:Mc++14-lang}
172
.if !${COMPILER_FEATURES:Mc++14}
197
.if !${COMPILER_FEATURES:Mc++14}
173
.if (defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc) || (${ARCH} != amd64 && ${ARCH} != i386) # clang not always supported on Tier-2
198
.if (defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc) || (${ARCH} != amd64 && ${ARCH} != i386) # clang not always supported on Tier-2

Return to bug 222415