mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
toolchain-funcs.eclass: Add tc-check-min_ver()
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
@@ -647,6 +647,50 @@ _tc-has-openmp() {
|
||||
return ${ret}
|
||||
}
|
||||
|
||||
# @FUNCTION: tc-check-min_ver
|
||||
# @USAGE: <gcc or clang> <minimum version>
|
||||
# @DESCRIPTION:
|
||||
# Minimum version of active GCC or Clang to require.
|
||||
#
|
||||
# You should test for any necessary minimum version in pkg_pretend in order to
|
||||
# warn the user of required toolchain changes. You must still check for it at
|
||||
# build-time, e.g.
|
||||
# @CODE
|
||||
# pkg_pretend() {
|
||||
# [[ ${MERGE_TYPE} != binary ]] && tc-check-min_ver gcc 13.2.0
|
||||
# }
|
||||
#
|
||||
# pkg_setup() {
|
||||
# [[ ${MERGE_TYPE} != binary ]] && tc-check-min_ver gcc 13.2.0
|
||||
# }
|
||||
# @CODE
|
||||
tc-check-min_ver() {
|
||||
do_check() {
|
||||
debug-print "Compiler version check for ${1}"
|
||||
debug-print "Detected: ${2}"
|
||||
debug-print "Required: ${3}"
|
||||
if ver_test ${2} -lt ${3}; then
|
||||
eerror "Your current compiler is too old for this package!"
|
||||
die "Active compiler is too old for this package (found ${1} ${2})."
|
||||
fi
|
||||
}
|
||||
|
||||
case ${1} in
|
||||
gcc)
|
||||
tc-is-gcc || return
|
||||
do_check GCC $(gcc-version) ${2}
|
||||
;;
|
||||
clang)
|
||||
tc-is-clang || return
|
||||
do_check Clang $(clang-version) ${2}
|
||||
;;
|
||||
*)
|
||||
eerror "Unknown first parameter for ${FUNCNAME} - must be gcc or clang"
|
||||
die "${FUNCNAME}: Parameter ${1} unknown"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# @FUNCTION: tc-check-openmp
|
||||
# @DESCRIPTION:
|
||||
# Test for OpenMP support with the current compiler and error out with
|
||||
|
||||
Reference in New Issue
Block a user