From: Ondrej Mosnacek <omosnace(a)redhat.com>
kernel.spec.template: Ship arch/s390/lib/expoline.o in kernel-devel
After commit 87d393e29c9e ("[redhat] New configs in arch/s390"), which
enabled CONFIG_EXPOLINE_EXTERN in ARK/ELN, an external module build
expects arch/s390/lib/expoline.o to be available, otherwise the build
fails.
To fix this, ship the file in the -devel package if it is found.
Fixes: 87d393e29c9e ("[redhat] New configs in arch/s390")
Signed-off-by: Ondrej Mosnacek <omosnace(a)redhat.com>
diff --git a/redhat/kernel.spec.template b/redhat/kernel.spec.template
index blahblah..blahblah 100755
--- a/redhat/kernel.spec.template
+++ b/redhat/kernel.spec.template
@@ -1857,6 +1857,14 @@ BuildKernel() {
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/tracing
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/spdxcheck.py
+%ifarch s390x
+ # CONFIG_EXPOLINE_EXTERN=y produces arch/s390/lib/expoline.o
+ # which is needed during external module build.
+ if [ -f arch/s390/lib/expoline.o ]; then
+ cp -a --parents arch/s390/lib/expoline.o
$RPM_BUILD_ROOT/lib/modules/$KernelVer/build
+ fi
+%endif
+
# Files for 'make scripts' to succeed with kernel-devel.
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/security/selinux/include
cp -a --parents security/selinux/include/classmap.h
$RPM_BUILD_ROOT/lib/modules/$KernelVer/build
--
https://gitlab.com/cki-project/kernel-ark/-/merge_requests/1756