diff options
Diffstat (limited to 'meta/lib/oe/rootfs.py')
| -rw-r--r-- | meta/lib/oe/rootfs.py | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py index 327c8eae86..0bd1cf632f 100644 --- a/meta/lib/oe/rootfs.py +++ b/meta/lib/oe/rootfs.py | |||
| @@ -304,16 +304,30 @@ class Rootfs(object): | |||
| 304 | self._exec_shell_cmd(['ldconfig', '-r', self.image_rootfs, '-c', | 304 | self._exec_shell_cmd(['ldconfig', '-r', self.image_rootfs, '-c', |
| 305 | 'new', '-v']) | 305 | 'new', '-v']) |
| 306 | 306 | ||
| 307 | def _check_for_kernel_modules(self, modules_dir): | ||
| 308 | for root, dirs, files in os.walk(modules_dir, topdown=True): | ||
| 309 | for name in files: | ||
| 310 | found_ko = name.endswith(".ko") | ||
| 311 | if found_ko: | ||
| 312 | return found_ko | ||
| 313 | return False | ||
| 314 | |||
| 307 | def _generate_kernel_module_deps(self): | 315 | def _generate_kernel_module_deps(self): |
| 316 | modules_dir = os.path.join(self.image_rootfs, 'lib', 'modules') | ||
| 317 | # if we don't have any modules don't bother to do the depmod | ||
| 318 | if not self._check_for_kernel_modules(modules_dir): | ||
| 319 | bb.note("No Kernel Modules found, not running depmod") | ||
| 320 | return | ||
| 321 | |||
| 308 | kernel_abi_ver_file = oe.path.join(self.d.getVar('PKGDATA_DIR', True), "kernel-depmod", | 322 | kernel_abi_ver_file = oe.path.join(self.d.getVar('PKGDATA_DIR', True), "kernel-depmod", |
| 309 | 'kernel-abiversion') | 323 | 'kernel-abiversion') |
| 310 | if not os.path.exists(kernel_abi_ver_file): | 324 | if not os.path.exists(kernel_abi_ver_file): |
| 311 | bb.fatal("No kernel-abiversion file found (%s), cannot run depmod, aborting" % kernel_abi_ver_file) | 325 | bb.fatal("No kernel-abiversion file found (%s), cannot run depmod, aborting" % kernel_abi_ver_file) |
| 312 | 326 | ||
| 313 | kernel_ver = open(kernel_abi_ver_file).read().strip(' \n') | 327 | kernel_ver = open(kernel_abi_ver_file).read().strip(' \n') |
| 314 | modules_dir = os.path.join(self.image_rootfs, 'lib', 'modules', kernel_ver) | 328 | versioned_modules_dir = os.path.join(self.image_rootfs, modules_dir, kernel_ver) |
| 315 | 329 | ||
| 316 | bb.utils.mkdirhier(modules_dir) | 330 | bb.utils.mkdirhier(versioned_modules_dir) |
| 317 | 331 | ||
| 318 | self._exec_shell_cmd(['depmodwrapper', '-a', '-b', self.image_rootfs, kernel_ver]) | 332 | self._exec_shell_cmd(['depmodwrapper', '-a', '-b', self.image_rootfs, kernel_ver]) |
| 319 | 333 | ||
