Signed-off-by: Mike Gilbert <[email protected]>
---
eclass/udev.eclass | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/eclass/udev.eclass b/eclass/udev.eclass
index 9a65b080f171..8e256385f8ef 100644
--- a/eclass/udev.eclass
+++ b/eclass/udev.eclass
@@ -50,11 +50,25 @@ fi
# @DESCRIPTION:
# Get unprefixed udevdir.
_udev_get_udevdir() {
- local udevdir="/lib/udev"
+ local udevdir="/lib/udev" eprefix
+
+ if [[ ${EAPI:-0} == [0123456] ]]; then
+ eprefix=${EPREFIX}
+ else
+ # Derive from ESYSROOT due to weird PMS logic.
+ eprefix=${ESYSROOT#${SYSROOT}}
+ fi
+
if $(tc-getPKG_CONFIG) --exists udev; then
udevdir="$($(tc-getPKG_CONFIG) --variable=udevdir udev)" || die
- udevdir="${udevdir#${EPREFIX}}"
+
+ # Remove SYSROOT in case PKG_CONFIG_SYSROOT_DIR is set by
cross-pkg-config.
+ d=${udevdir#${SYSROOT}}
+
+ # Remove any offset prefix.
+ d=${udevdir#${eprefix}}
fi
+
echo "${udevdir}"
}
--
2.30.0