initramfs-framework_1.0.bb 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. SUMMARY = "Modular initramfs system"
  2. LICENSE = "MIT"
  3. LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
  4. RDEPENDS:${PN} += "${VIRTUAL-RUNTIME_base-utils}"
  5. RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
  6. inherit allarch
  7. SRC_URI = "file://init \
  8. file://exec \
  9. file://nfsrootfs \
  10. file://rootfs \
  11. file://finish \
  12. file://mdev \
  13. file://udev \
  14. file://e2fs \
  15. file://debug \
  16. file://lvm \
  17. file://overlayroot \
  18. "
  19. S = "${WORKDIR}/sources"
  20. UNPACKDIR = "${S}"
  21. do_install() {
  22. install -d ${D}/init.d
  23. # base
  24. install -m 0755 ${S}/init ${D}/init
  25. install -m 0755 ${S}/nfsrootfs ${D}/init.d/85-nfsrootfs
  26. install -m 0755 ${S}/rootfs ${D}/init.d/90-rootfs
  27. install -m 0755 ${S}/finish ${D}/init.d/99-finish
  28. # exec
  29. install -m 0755 ${S}/exec ${D}/init.d/89-exec
  30. # mdev
  31. install -m 0755 ${S}/mdev ${D}/init.d/01-mdev
  32. # udev
  33. install -m 0755 ${S}/udev ${D}/init.d/01-udev
  34. # e2fs
  35. install -m 0755 ${S}/e2fs ${D}/init.d/10-e2fs
  36. # debug
  37. install -m 0755 ${S}/debug ${D}/init.d/00-debug
  38. # lvm
  39. install -m 0755 ${S}/lvm ${D}/init.d/09-lvm
  40. # overlayroot needs to run after rootfs module but before finish
  41. install -m 0755 ${S}/overlayroot ${D}/init.d/91-overlayroot
  42. # Create device nodes expected by some kernels in initramfs
  43. # before even executing /init.
  44. install -d ${D}/dev
  45. mknod -m 622 ${D}/dev/console c 5 1
  46. }
  47. PACKAGES = "${PN}-base \
  48. initramfs-module-exec \
  49. initramfs-module-mdev \
  50. initramfs-module-udev \
  51. initramfs-module-e2fs \
  52. initramfs-module-nfsrootfs \
  53. initramfs-module-rootfs \
  54. initramfs-module-debug \
  55. initramfs-module-lvm \
  56. initramfs-module-overlayroot \
  57. "
  58. FILES:${PN}-base = "/init /init.d/99-finish /dev"
  59. # 99-finish in base depends on some other module which mounts
  60. # the rootfs, like 90-rootfs. To replace that default, use
  61. # BAD_RECOMMENDATIONS += "initramfs-module-rootfs" in your
  62. # initramfs recipe and install something else, or install
  63. # something that runs earlier (for example, a 89-my-rootfs)
  64. # and mounts the rootfs. Then 90-rootfs will proceed immediately.
  65. RRECOMMENDS:${PN}-base += "initramfs-module-rootfs"
  66. SUMMARY:initramfs-module-exec = "initramfs support for easy execution of applications"
  67. RDEPENDS:initramfs-module-exec = "${PN}-base"
  68. FILES:initramfs-module-exec = "/init.d/89-exec"
  69. SUMMARY:initramfs-module-mdev = "initramfs support for mdev"
  70. RDEPENDS:initramfs-module-mdev = "${PN}-base busybox-mdev"
  71. FILES:initramfs-module-mdev = "/init.d/01-mdev"
  72. SUMMARY:initramfs-module-udev = "initramfs support for udev"
  73. RDEPENDS:initramfs-module-udev = "${PN}-base udev"
  74. FILES:initramfs-module-udev = "/init.d/01-udev"
  75. SUMMARY:initramfs-module-e2fs = "initramfs support for ext4/ext3/ext2 filesystems"
  76. RDEPENDS:initramfs-module-e2fs = "${PN}-base"
  77. FILES:initramfs-module-e2fs = "/init.d/10-e2fs"
  78. SUMMARY:initramfs-module-nfsrootfs = "initramfs support for locating and mounting the root partition via nfs"
  79. RDEPENDS:initramfs-module-nfsrootfs = "${PN}-base"
  80. FILES:initramfs-module-nfsrootfs = "/init.d/85-nfsrootfs"
  81. SUMMARY:initramfs-module-rootfs = "initramfs support for locating and mounting the root partition"
  82. RDEPENDS:initramfs-module-rootfs = "${PN}-base"
  83. FILES:initramfs-module-rootfs = "/init.d/90-rootfs"
  84. SUMMARY:initramfs-module-debug = "initramfs dynamic debug support"
  85. RDEPENDS:initramfs-module-debug = "${PN}-base"
  86. FILES:initramfs-module-debug = "/init.d/00-debug"
  87. SUMMARY:initramfs-module-lvm = "initramfs lvm rootfs support"
  88. RDEPENDS:initramfs-module-lvm = "${PN}-base"
  89. FILES:initramfs-module-lvm = "/init.d/09-lvm"
  90. SUMMARY:initramfs-module-overlayroot = "initramfs support for mounting a RW overlay on top of a RO root filesystem"
  91. RDEPENDS:initramfs-module-overlayroot = "${PN}-base initramfs-module-rootfs"
  92. FILES:initramfs-module-overlayroot = "/init.d/91-overlayroot"