1 |
- Drop the unused emesontestargs variable. |
2 |
|
3 |
- Use the compile and install subcommands of meson instead of calling |
4 |
ninja. This allows for the possibility of a different back end. |
5 |
|
6 |
- Stop using the NINJAOPTS variable. |
7 |
|
8 |
- Add --num-processes to "meson test" call regardless of whether MAKEOPTS |
9 |
is set since the default is 1 process. |
10 |
|
11 |
- Pass --jobs 0 instead of 999 to represent infinity. |
12 |
|
13 |
- Echo commands before running them. |
14 |
- Remove extraneous whitespace. |
15 |
--- |
16 |
eclass/meson.eclass | 41 ++++++++++++++++++++++++----------------- |
17 |
1 file changed, 24 insertions(+), 17 deletions(-) |
18 |
|
19 |
diff --git a/eclass/meson.eclass b/eclass/meson.eclass |
20 |
index 2a563e367c6..8b22797da71 100644 |
21 |
--- a/eclass/meson.eclass |
22 |
+++ b/eclass/meson.eclass |
23 |
@@ -77,12 +77,6 @@ fi |
24 |
# Optional meson arguments as Bash array; this should be defined before |
25 |
# calling meson_src_configure. |
26 |
|
27 |
-# @VARIABLE: emesontestargs |
28 |
-# @DEFAULT_UNSET |
29 |
-# @DESCRIPTION: |
30 |
-# Optional meson test arguments as Bash array; this should be defined before |
31 |
-# calling meson_src_test. |
32 |
- |
33 |
# @VARIABLE: MYMESONARGS |
34 |
# @DEFAULT_UNSET |
35 |
# @DESCRIPTION: |
36 |
@@ -379,7 +373,17 @@ meson_src_configure() { |
37 |
meson_src_compile() { |
38 |
debug-print-function ${FUNCNAME} "$@" |
39 |
|
40 |
- eninja -C "${BUILD_DIR}" "$@" |
41 |
+ local mesoncompileargs=( |
42 |
+ -C "${BUILD_DIR}" |
43 |
+ --jobs "$(makeopts_jobs "${MAKEOPTS}" 0)" |
44 |
+ --load-average "$(makeopts_loadavg "${MAKEOPTS}" 0)" |
45 |
+ --verbose |
46 |
+ "$@" |
47 |
+ ) |
48 |
+ |
49 |
+ set -- meson compile "${mesoncompileargs[@]}" |
50 |
+ echo "$@" >&2 |
51 |
+ "$@" || die "compile failed" |
52 |
} |
53 |
|
54 |
# @FUNCTION: meson_src_test |
55 |
@@ -391,28 +395,31 @@ meson_src_test() { |
56 |
|
57 |
local mesontestargs=( |
58 |
-C "${BUILD_DIR}" |
59 |
+ --num-processes "$(makeopts_jobs "${MAKEOPTS}")" |
60 |
+ "$@" |
61 |
) |
62 |
- [[ -n ${NINJAOPTS} || -n ${MAKEOPTS} ]] && |
63 |
- mesontestargs+=( |
64 |
- --num-processes "$(makeopts_jobs ${NINJAOPTS:-${MAKEOPTS}})" |
65 |
- ) |
66 |
- |
67 |
- # Append additional arguments from ebuild |
68 |
- mesontestargs+=("${emesontestargs[@]}") |
69 |
|
70 |
- set -- meson test "${mesontestargs[@]}" "$@" |
71 |
+ set -- meson test "${mesontestargs[@]}" |
72 |
echo "$@" >&2 |
73 |
"$@" || die "tests failed" |
74 |
} |
75 |
|
76 |
# @FUNCTION: meson_src_install |
77 |
-# @USAGE: [extra ninja install arguments] |
78 |
+# @USAGE: [extra meson install arguments] |
79 |
# @DESCRIPTION: |
80 |
# This is the meson_src_install function. |
81 |
meson_src_install() { |
82 |
debug-print-function ${FUNCNAME} "$@" |
83 |
|
84 |
- DESTDIR="${D}" eninja -C "${BUILD_DIR}" install "$@" |
85 |
+ local mesoninstallargs=( |
86 |
+ -C "${BUILD_DIR}" |
87 |
+ --destdir "${D}" |
88 |
+ "$@" |
89 |
+ ) |
90 |
+ |
91 |
+ set -- meson install "${mesoninstallargs[@]}" |
92 |
+ echo "$@" >&2 |
93 |
+ "$@" || die "install failed" |
94 |
|
95 |
pushd "${S}" > /dev/null || die |
96 |
einstalldocs |
97 |
-- |
98 |
2.31.1 |