commit:     c3f4e3f788e2d5973ce49293fe20354b20576426
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  7 16:22:45 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep  7 18:21:32 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3f4e3f7

kernel-build.eclass: call ctf targets serially

Workaround for install + ctf_install not working in parallel for now
(have reported this).

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/kernel-build.eclass | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/eclass/kernel-build.eclass b/eclass/kernel-build.eclass
index 91c962d671ab..93523629de41 100644
--- a/eclass/kernel-build.eclass
+++ b/eclass/kernel-build.eclass
@@ -302,7 +302,9 @@ kernel-build_src_compile() {
                targets+=( ctf )
        fi
 
-       emake O="${WORKDIR}"/build "${MAKEARGS[@]}" "${targets[@]}"
+       for target in "${targets[@]}" ; do
+               emake O="${WORKDIR}"/build "${MAKEARGS[@]}" "${target}"
+       done
 }
 
 # @FUNCTION: kernel-build_src_test
@@ -325,9 +327,11 @@ kernel-build_src_test() {
                strip_args="--strip-unneeded"
        fi
 
-       emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
-               INSTALL_MOD_PATH="${T}" INSTALL_MOD_STRIP="${strip_args}" \
-               "${targets[@]}"
+       for target in "${targets[@]}" ; do
+               emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
+                       INSTALL_MOD_PATH="${T}" 
INSTALL_MOD_STRIP="${strip_args}" \
+                       "${target}"
+       done
 
        kernel-install_test "${KV_FULL}" \
                "${WORKDIR}/build/$(dist-kernel_get_image_path)" \
@@ -371,9 +375,11 @@ kernel-build_src_install() {
                )
        fi
 
-       emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
-               INSTALL_MOD_PATH="${ED}" INSTALL_MOD_STRIP="${strip_args}" \
-               INSTALL_PATH="${ED}/boot" "${compress[@]}" "${targets[@]}"
+       for target in "${targets[@]}" ; do
+               emake O="${WORKDIR}"/build "${MAKEARGS[@]}" \
+                       INSTALL_MOD_PATH="${ED}" 
INSTALL_MOD_STRIP="${strip_args}" \
+                       INSTALL_PATH="${ED}/boot" "${compress[@]}" "${target}"
+       done
 
        # note: we're using mv rather than doins to save space and time
        # install main and arch-specific headers first, and scripts

Reply via email to