summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2018-03-08 17:21:41 +0100
committerMichał Górny <mgorny@gentoo.org>2018-07-09 18:54:47 +0200
commit51562449412d635b03cb71132315f0045dd33819 (patch)
treeb80e719507c1f9067ec9a776a207e62be836d16b /eclass
parentlinux-info.eclass: require_configured_kernel, improve error handling (diff)
downloadgentoo-51562449412d635b03cb71132315f0045dd33819.tar.gz
gentoo-51562449412d635b03cb71132315f0045dd33819.tar.bz2
gentoo-51562449412d635b03cb71132315f0045dd33819.zip
linux-info.eclass: Ignore check_extra_config on non-Linux
Make the check_extra_config and pkg_setup calls no-op on non-Linux systems. Those systems don't have a Linux kernel, so they obviously can't satisfy the requirements. This currently results in a lot of useless warnings about missing Linux kernel sources on FreeBSD. We could make it conditional per-package but there is really no point in adding a lot of conditionals everywhere if this eclass can't ever work on non-Linux.
Diffstat (limited to 'eclass')
-rw-r--r--eclass/linux-info.eclass8
1 files changed, 7 insertions, 1 deletions
diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass
index 5795219a880b..51be89dbcf34 100644
--- a/eclass/linux-info.eclass
+++ b/eclass/linux-info.eclass
@@ -110,6 +110,8 @@ inherit toolchain-funcs versionator
EXPORT_FUNCTIONS pkg_setup
+IUSE="kernel_linux"
+
# Overwritable environment Var's
# ---------------------------------------
KERNEL_DIR="${KERNEL_DIR:-${ROOT}usr/src/linux}"
@@ -688,8 +690,10 @@ check_modules_supported() {
# @FUNCTION: check_extra_config
# @DESCRIPTION:
# It checks the kernel config options specified by CONFIG_CHECK. It dies only when a required config option (i.e.
-# the prefix ~ is not used) doesn't satisfy the directive.
+# the prefix ~ is not used) doesn't satisfy the directive. Ignored on non-Linux systems.
check_extra_config() {
+ use kernel_linux || return
+
local config negate die error reworkmodulenames
local soft_errors_count=0 hard_errors_count=0 config_required=0
# store the value of the QA check, because otherwise we won't catch usages
@@ -902,6 +906,8 @@ check_zlibinflate() {
# Force a get_version() call when inherited from linux-mod.eclass and then check if the kernel is configured
# to support the options specified in CONFIG_CHECK (if not null)
linux-info_pkg_setup() {
+ use kernel_linux || return
+
linux-info_get_any_version
if kernel_is 2 4; then