[OE-core] [PATCH v3] initramfs-framework: split setup-live and install-efi into separate recipes

California Sullivan california.l.sullivan at intel.com
Fri Sep 8 22:12:21 UTC 2017


Having these the initramfs-framework recipe forced initramfs-framework
users to build several tools they didn't need, and made it more
difficult to declare the recipe as allarch.

Fixes [YOCTO #12024].

v2 changes:
  * fix SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS in layer.conf
  * bump PR of initramfs-framework
  * add allarch to setup-live and install-efi modules, as they're just
    shell scripts

v3 changes:
  * set PR of new recipes to 4, as the name of the packages they build
    is the same as when they were part of the main recipe.

Signed-off-by: California Sullivan <california.l.sullivan at intel.com>
---
 meta/conf/layer.conf                               |  8 ++++----
 .../initrdscripts/initramfs-framework_1.0.bb       | 22 +++-------------------
 .../initramfs-module-install-efi_1.0.bb            | 20 ++++++++++++++++++++
 .../initramfs-module-setup-live_1.0.bb             | 20 ++++++++++++++++++++
 4 files changed, 47 insertions(+), 23 deletions(-)
 create mode 100644 meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
 create mode 100644 meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb

diff --git a/meta/conf/layer.conf b/meta/conf/layer.conf
index 04aa730..df457c2 100644
--- a/meta/conf/layer.conf
+++ b/meta/conf/layer.conf
@@ -50,12 +50,12 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
   docbook-xsl-stylesheets->perl \
   ca-certificates->openssl \
   initramfs-framework->${VIRTUAL-RUNTIME_base-utils} \
-  initramfs-framework->dosfstools \
-  initramfs-framework->e2fsprogs \
   initramfs-framework->eudev \
-  initramfs-framework->parted \
   initramfs-framework->systemd \
-  initramfs-framework->util-linux \
+  initramfs-module-install-efi->dosfstools \
+  initramfs-module-install-efi->e2fsprogs \
+  initramfs-module-install-efi->parted \
+  initramfs-module-install-efi->util-linux \
   liberation-fonts->fontconfig \
   cantarell-fonts->fontconfig \
   gnome-icon-theme->librsvg \
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
index 77b2ff8..2afc37e 100644
--- a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
@@ -3,7 +3,7 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 RDEPENDS_${PN} += "${VIRTUAL-RUNTIME_base-utils}"
 
-PR = "r3"
+PR = "r4"
 
 inherit allarch
 
@@ -14,8 +14,7 @@ SRC_URI = "file://init \
            file://udev \
            file://e2fs \
            file://debug \
-           file://setup-live \
-           file://install-efi.sh"
+          "
 
 S = "${WORKDIR}"
 
@@ -27,9 +26,6 @@ do_install() {
     install -m 0755 ${WORKDIR}/rootfs ${D}/init.d/90-rootfs
     install -m 0755 ${WORKDIR}/finish ${D}/init.d/99-finish
 
-    # setup-live
-    install -m 0755 ${WORKDIR}/setup-live ${D}/init.d/80-setup-live
-
     # mdev
     install -m 0755 ${WORKDIR}/mdev ${D}/init.d/01-mdev
 
@@ -42,9 +38,6 @@ do_install() {
     # debug
     install -m 0755 ${WORKDIR}/debug ${D}/init.d/00-debug
 
-    # install-efi
-    install -m 0755 ${WORKDIR}/install-efi.sh ${D}/init.d/install-efi.sh
-
     # Create device nodes expected by some kernels in initramfs
     # before even executing /init.
     install -d ${D}/dev
@@ -57,8 +50,7 @@ PACKAGES = "${PN}-base \
             initramfs-module-e2fs \
             initramfs-module-rootfs \
             initramfs-module-debug \
-            initramfs-module-setup-live \
-            initramfs-module-install-efi"
+           "
 
 FILES_${PN}-base = "/init /init.d/99-finish /dev"
 
@@ -78,10 +70,6 @@ SUMMARY_initramfs-module-udev = "initramfs support for udev"
 RDEPENDS_initramfs-module-udev = "${PN}-base udev"
 FILES_initramfs-module-udev = "/init.d/01-udev"
 
-SUMMARY_initramfs-module-setup-live = "initramfs support for setup live"
-RDEPENDS_initramfs-module-setup-live = "${PN}-base udev-extraconf"
-FILES_initramfs-module-setup-live = "/init.d/80-setup-live"
-
 SUMMARY_initramfs-module-e2fs = "initramfs support for ext4/ext3/ext2 filesystems"
 RDEPENDS_initramfs-module-e2fs = "${PN}-base"
 FILES_initramfs-module-e2fs = "/init.d/10-e2fs"
@@ -93,7 +81,3 @@ FILES_initramfs-module-rootfs = "/init.d/90-rootfs"
 SUMMARY_initramfs-module-debug = "initramfs dynamic debug support"
 RDEPENDS_initramfs-module-debug = "${PN}-base"
 FILES_initramfs-module-debug = "/init.d/00-debug"
-
-SUMMARY_initramfs-module-install-efi = "initramfs support for installation option"
-RDEPENDS_initramfs-module-install-efi = "${PN}-base parted e2fsprogs-mke2fs dosfstools util-linux-blkid"
-FILES_initramfs-module-install-efi = "/init.d/install-efi.sh"
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
new file mode 100644
index 0000000..2270441
--- /dev/null
+++ b/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
@@ -0,0 +1,20 @@
+SUMMARY = "initramfs-framework module for installation option"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+RDEPENDS_${PN} = "initramfs-framework-base parted e2fsprogs-mke2fs dosfstools util-linux-blkid"
+
+PR = "r4"
+
+inherit allarch
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/initramfs-framework:"
+SRC_URI = "file://install-efi.sh"
+
+S = "${WORKDIR}"
+
+do_install() {
+    install -d ${D}/init.d
+    install -m 0755 ${WORKDIR}/install-efi.sh ${D}/init.d/install-efi.sh
+}
+
+FILES_${PN} = "/init.d/install-efi.sh"
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
new file mode 100644
index 0000000..4d2fe9d
--- /dev/null
+++ b/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
@@ -0,0 +1,20 @@
+SUMMARY = "initramfs-framework module for live booting"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+RDEPENDS_${PN} = "initramfs-framework-base udev-extraconf"
+
+PR = "r4"
+
+inherit allarch
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/initramfs-framework:"
+SRC_URI = "file://setup-live"
+
+S = "${WORKDIR}"
+
+do_install() {
+    install -d ${D}/init.d
+    install -m 0755 ${WORKDIR}/setup-live ${D}/init.d/80-setup-live
+}
+
+FILES_${PN} = "/init.d/80-setup-live"
-- 
2.9.5




More information about the Openembedded-core mailing list