summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorryoon <ryoon>2015-07-16 12:09:04 +0000
committerryoon <ryoon>2015-07-16 12:09:04 +0000
commitf9461e8b8aeb1ff415fbcf5aa16a0f521dbc11b2 (patch)
tree04de6ef1f8d9f2c9ef6d6a270d3febec3cfcab54 /mk
parentac9d1062497ea17da64171af237f709395567a22 (diff)
downloadpkgsrc-f9461e8b8aeb1ff415fbcf5aa16a0f521dbc11b2.tar.gz
Add gcc5 support.
Diffstat (limited to 'mk')
-rw-r--r--mk/compiler/gcc.mk43
1 files changed, 39 insertions, 4 deletions
diff --git a/mk/compiler/gcc.mk b/mk/compiler/gcc.mk
index 4d2592634f2..7e42b33eba3 100644
--- a/mk/compiler/gcc.mk
+++ b/mk/compiler/gcc.mk
@@ -1,4 +1,4 @@
-# $NetBSD: gcc.mk,v 1.161 2015/04/27 10:33:49 tnn Exp $
+# $NetBSD: gcc.mk,v 1.162 2015/07/16 12:09:04 ryoon Exp $
#
# This is the compiler definition for the GNU Compiler Collection.
#
@@ -105,7 +105,7 @@ GCC_REQD+= 20120614
# _GCC_DIST_VERSION is the highest version of GCC installed by the pkgsrc
# without the PKGREVISIONs.
-_GCC_DIST_NAME:= gcc49
+_GCC_DIST_NAME:= gcc5
.include "../../lang/${_GCC_DIST_NAME}/version.mk"
_GCC_DIST_VERSION:= ${${_GCC_DIST_NAME:tu}_DIST_VERSION}
@@ -138,6 +138,9 @@ _GCC48_PATTERNS= 4.8 4.8.*
# _GCC49_PATTERNS matches N s.t. 4.9 <= N < 4.10.
_GCC49_PATTERNS= 4.9 4.9.*
+# _GCC5_PATTERNS matches N s.t. 5.0 <= N < 6.
+_GCC5_PATTERNS= 5.*
+
# _GCC_AUX_PATTERNS matches 8-digit date YYYYMMDD*
_GCC_AUX_PATTERNS= 20[1-2][0-9][0-1][0-9][0-3][0-9]*
@@ -278,6 +281,12 @@ _NEED_GCC49?= no
_NEED_GCC49= yes
. endif
.endfor
+_NEED_GCC5?= no
+.for _pattern_ in ${_GCC5_PATTERNS}
+. if !empty(_GCC_REQD:M${_pattern_})
+_NEED_GCC5= yes
+. endif
+.endfor
_NEED_GCC_AUX?= no
.for _pattern_ in ${_GCC_AUX_PATTERNS}
. if !empty(_GCC_REQD:M${_pattern_})
@@ -289,8 +298,9 @@ _NEED_NEWER_GCC=NO
!empty(_NEED_GCC34:M[nN][oO]) && !empty(_NEED_GCC44:M[nN][oO]) && \
!empty(_NEED_GCC45:M[nN][oO]) && !empty(_NEED_GCC46:M[nN][oO]) && \
!empty(_NEED_GCC47:M[nN][oO]) && !empty(_NEED_GCC48:M[nN][oO]) && \
- !empty(_NEED_GCC49:M[nN][oO]) && !empty(_NEED_GCC_AUX:M[nN][oO])
-_NEED_GCC49= yes
+ !empty(_NEED_GCC49:M[nN][oO]) && !empty(_NEED_GCC5:M[nN][oO]) && \
+ !empty(_NEED_GCC_AUX:M[nN][oO])
+_NEED_GCC5= yes
.endif
# Assume by default that GCC will only provide a C compiler.
@@ -313,6 +323,8 @@ LANGUAGES.gcc= c c++ fortran fortran77 go java objc obj-c++
LANGUAGES.gcc= c c++ fortran fortran77 go java objc obj-c++
.elif !empty(_NEED_GCC49:M[yY][eE][sS])
LANGUAGES.gcc= c c++ fortran fortran77 go java objc obj-c++
+.elif !empty(_NEED_GCC5:M[yY][eE][sS])
+LANGUAGES.gcc= c c++ fortran fortran77 go java objc obj-c++
.elif !empty(_NEED_GCC_AUX:M[yY][eE][sS])
LANGUAGES.gcc= c c++ fortran fortran77 objc ada
.endif
@@ -505,6 +517,27 @@ _GCC_DEPENDENCY= gcc49>=${_GCC_REQD}:../../lang/gcc49
_USE_GCC_SHLIB?= yes
. endif
. endif
+.elif !empty(_NEED_GCC5:M[yY][eE][sS])
+#
+# We require gcc-5.x in the lang/gcc5-* directory.
+#
+_GCC_PKGBASE= gcc5
+. if !empty(PKGPATH:Mlang/gcc5)
+_IGNORE_GCC= yes
+MAKEFLAGS+= _IGNORE_GCC=yes
+. endif
+. if !defined(_IGNORE_GCC) && !empty(_LANGUAGES.gcc)
+_GCC_PKGSRCDIR= ../../lang/gcc5
+_GCC_DEPENDENCY= gcc5>=${_GCC_REQD}:../../lang/gcc5
+. if !empty(_LANGUAGES.gcc:Mc++) || \
+ !empty(_LANGUAGES.gcc:Mfortran) || \
+ !empty(_LANGUAGES.gcc:Mfortran77) || \
+ !empty(_LANGUAGES.gcc:Mgo) || \
+ !empty(_LANGUAGES.gcc:Mobjc) || \
+ !empty(_LANGUAGES.gcc:Mobj-c++)
+_USE_GCC_SHLIB?= yes
+. endif
+. endif
.elif !empty(_NEED_GCC_AUX:M[yY][eE][sS])
#
# We require Ada-capable compiler in the lang/gcc-aux directory.
@@ -839,6 +872,8 @@ PREPEND_PATH+= ${_GCC_DIR}/bin
. include "../../lang/gcc48-libs/buildlink3.mk"
. elif !empty(CC_VERSION:Mgcc-4.9*)
. include "../../lang/gcc49-libs/buildlink3.mk"
+. elif !empty(CC_VERSION:Mgcc-5.*)
+. include "../../lang/gcc5-libs/buildlink3.mk"
. else
PKG_FAIL_REASON= "No USE_PKGSRC_GCC_RUNTIME support for ${CC_VERSION}"
. endif