Resolve conflict with /lib/modules when using baselibs
authorHyotaek Shim <hyotaek.shim@samsung.com>
Wed, 23 Jun 2021 01:15:47 +0000 (10:15 +0900)
committerHyotaek Shim <hyotaek.shim@samsung.com>
Wed, 23 Jun 2021 01:32:46 +0000 (10:32 +0900)
In tw3 images, kernel is based on 64bit while platform is on 32bit.
Thanks to baselibs, aarch64 rpms containing tw3 kernel modules can be repackaged to arm rpms.

$ rpm -ql linux-tizen-modules-tw3-aarch64-6.5.0-0.armv7l.rpm
/lib/modules
/lib/modules/4.9.59
/lib/modules/4.9.59/extra
/lib/modules/4.9.59/extra/logger.ko

Unfortunately, however, /lib/modules, which is implicitly packaged,
is conflict with filesystem package.

INFO: Next install: filesystem
WARNING: file /lib/modules conflicts between attempted installs of
linux-tizen-modules-tw3-aarch64-6.5.0-1.1.armv7l and filesystem-3.1-3.3.armv7l
ERROR: Could not run transaction.

This patch avoids generating /lib/modules in the linux-tizen-modules-tw3-aarch64.armv7l.rpm

Change-Id: I8be870f9999e1e2f626c99bae7bced3ac623d44d
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
packaging/baselibs.conf
packaging/linux-tizen-modules.spec

index 443bcc4..879d5d6 100644 (file)
@@ -2,4 +2,5 @@ arch aarch64 targets armv7l:aarch64
 
 linux-tizen-modules-tw3
   +/
-  -/lib/modules
\ No newline at end of file
+  post "/bin/cp -r /aarch64/modules/* /lib/modules/"
+  post "/bin/rm -rf /aarch64"
index 2e6042b..bb1c8b1 100644 (file)
@@ -58,10 +58,16 @@ make -C kernel modules_install KERNELDIR=/boot/kernel/devel/kernel-devel-tw3 INS
 
 %install
 mkdir -p %{buildroot}/%{KMOD_PATH}
+
 pushd lib/modules
 find -name "*.ko" -exec cp -a --parents {} %{buildroot}/%{KMOD_PATH}/ \;
 popd
 
+%ifarch aarch64
+mkdir -p %{buildroot}/aarch64/modules
+mv %{buildroot}/%{KMOD_PATH}/4.9.59 %{buildroot}/aarch64/modules/
+%endif
+
 %clean
 rm -rf %{buildroot}
 rm -rf %{_builddir}/%{name}-%{version}/lib
@@ -80,5 +86,5 @@ rm -rf %{_builddir}/%{name}-%{version}/lib
 %files tw3
 %manifest %{name}.manifest
 %license COPYING
-%{KMOD_PATH}/4.9.59/extra
+/aarch64/modules/4.9.59/extra
 %endif