1 |
Signed-off-by: Mike Gilbert <floppym@g.o> |
2 |
--- |
3 |
eclass/systemd.eclass | 15 +++++++++++++-- |
4 |
1 file changed, 13 insertions(+), 2 deletions(-) |
5 |
|
6 |
diff --git a/eclass/systemd.eclass b/eclass/systemd.eclass |
7 |
index f6d1fa2d92d6..9f439238fe6c 100644 |
8 |
--- a/eclass/systemd.eclass |
9 |
+++ b/eclass/systemd.eclass |
10 |
@@ -46,12 +46,23 @@ fi |
11 |
# instead. |
12 |
_systemd_get_dir() { |
13 |
[[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} <variable-name> <fallback-directory>" |
14 |
- local variable=${1} fallback=${2} d |
15 |
+ local variable=${1} fallback=${2} d eprefix |
16 |
+ |
17 |
+ if [[ ${EAPI:-0} == [0123456] ]]; then |
18 |
+ eprefix=${EPREFIX} |
19 |
+ else |
20 |
+ # Derive from ESYSROOT due to weird PMS logic. |
21 |
+ eprefix=${ESYSROOT#${SYSROOT}} |
22 |
+ fi |
23 |
|
24 |
if $(tc-getPKG_CONFIG) --exists systemd; then |
25 |
d=$($(tc-getPKG_CONFIG) --variable="${variable}" systemd) || die |
26 |
+ |
27 |
+ # Remove SYSROOT in case PKG_CONFIG_SYSROOT_DIR is set by cross-pkg-config. |
28 |
d=${d#${SYSROOT}} |
29 |
- d=${d#${EPREFIX}} |
30 |
+ |
31 |
+ # Remove any offset prefix. |
32 |
+ d=${d#${eprefix}} |
33 |
else |
34 |
d=${fallback} |
35 |
fi |
36 |
-- |
37 |
2.30.0 |