1 |
Use the compile and install subcommands of meson instead of calling |
2 |
ninja. This allows for the possibility of a different back end. |
3 |
|
4 |
Signed-off-by: William Hubbs <williamh@g.o> |
5 |
--- |
6 |
eclass/meson.eclass | 24 +++++++++++++++++++++--- |
7 |
1 file changed, 21 insertions(+), 3 deletions(-) |
8 |
|
9 |
diff --git a/eclass/meson.eclass b/eclass/meson.eclass |
10 |
index 2a563e367c6..e9c9b155096 100644 |
11 |
--- a/eclass/meson.eclass |
12 |
+++ b/eclass/meson.eclass |
13 |
@@ -379,7 +379,21 @@ meson_src_configure() { |
14 |
meson_src_compile() { |
15 |
debug-print-function ${FUNCNAME} "$@" |
16 |
|
17 |
- eninja -C "${BUILD_DIR}" "$@" |
18 |
+ local mesoncompileargs=( |
19 |
+ -C "${BUILD_DIR}" |
20 |
+ ) |
21 |
+ if [[ -n ${NINJAOPTS} ]]; then |
22 |
+ mesoncompileargs+=( |
23 |
+ --jobs "$(makeopts_jobs ${NINJAOPTS})" |
24 |
+ --load-average "$(makeopts_loadavg ${NINJAOPTS})" |
25 |
+ ) |
26 |
+ elif [[ -n ${MAKEOPTS} ]]; then |
27 |
+ mesoncompileargs+=( |
28 |
+ --jobs "$(makeopts_jobs ${MAKEOPTS})" |
29 |
+ --load-average "$(makeopts_loadavg ${MAKEOPTS})" |
30 |
+ ) |
31 |
+ |
32 |
+ meson compile "${mesoncompileargs[@]}" "$@" || die "compile failed" |
33 |
} |
34 |
|
35 |
# @FUNCTION: meson_src_test |
36 |
@@ -406,13 +420,17 @@ meson_src_test() { |
37 |
} |
38 |
|
39 |
# @FUNCTION: meson_src_install |
40 |
-# @USAGE: [extra ninja install arguments] |
41 |
+# @USAGE: [extra meson install arguments] |
42 |
# @DESCRIPTION: |
43 |
# This is the meson_src_install function. |
44 |
meson_src_install() { |
45 |
debug-print-function ${FUNCNAME} "$@" |
46 |
|
47 |
- DESTDIR="${D}" eninja -C "${BUILD_DIR}" install "$@" |
48 |
+ local mesoninstallargs=( |
49 |
+ -C "${BUILD_DIR}" "$@" |
50 |
+ --destdir "${D}" |
51 |
+ ) |
52 |
+ meson install "${mesoninstallargs[@]}" "$@" |
53 |
|
54 |
pushd "${S}" > /dev/null || die |
55 |
einstalldocs |
56 |
-- |
57 |
2.31.1 |