From patchwork Tue Jul 21 16:26:42 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AshishKumar Mishra X-Patchwork-Id: 93057 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 76E32C4451C for ; Tue, 21 Jul 2026 16:27:37 +0000 (UTC) Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.27080.1784651250908481453 for ; Tue, 21 Jul 2026 09:27:30 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=Xr++xebw; spf=pass (domain: gmail.com, ip: 209.85.214.177, mailfrom: emailaddress.ashish@gmail.com) Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-2cc97653887so126109125ad.1 for ; Tue, 21 Jul 2026 09:27:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784651250; x=1785256050; darn=lists.openembedded.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=8Gk8rF9ez3UMk6D6592c2Q1/no+zqh+PMR+TAa4MOvc=; b=Xr++xebwWhK7XT7l7qrr/xa4Dk6AnBFpasnRvVqVxHQwnVxQ8UbuTwrHhDp7wJwqHW hDVFJ6WNQvgFlvLK84uU2JVg1F0DnkssdvO9ugkxTyeVPhL5I3g0XDH0y4A+6ZwbJmH0 DfJWrAr4dLjFQFashC2Tne08fyvQQUwr6U8h14DrBxPOXMuTFhZzIg8Zimj7VITXKz3w jnql1b45o+n7AVDb2RHT0xbzGZYR9d2jWaKBTKf5OScwMIDtKWyKnNysIGkYhUBMlFrr 5wcUU7h0G3XrLiClrkSA42wUp9kT23hRiL7M2nROpEz8YQZa/kF+zUTKmq2QJqPZqBuG px5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784651250; x=1785256050; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=8Gk8rF9ez3UMk6D6592c2Q1/no+zqh+PMR+TAa4MOvc=; b=CWXyxP/bysjEBOTKc0BBBaG45z3SWPX4IKik7fnfXMlk8HDszkVLxiewpqUFcjofUe mlw+8u/kDQ5pnynv2jsc0RQQ0QiubysVCChHXZCaEeXpkorZ/yGZAgsCLe/mXEvB1oJx 2DbAlWjsBwGzP67MD756XVnMcqknCTvBi16g+rwkCPhHkXditMFQy6HCaiaLUuAUdyzo H8wtRNzJISuXn4cr4FeN9CeOoyA4hRESi7wwdZqruNbxC4rE3S0YsQcau4eGVKVEH88B 4AjsFsfEN/vH7XglCYU9Tt4cd7Pr1Y9OseXOLuR5MwXEu74b6Aco6vgTkOUFKKAQ80+O sk+g== X-Gm-Message-State: AOJu0YwS9S+orHigYnU37RNo7xz7dYaBlyIlmUkr2ouS95JsTXIl3ql0 jF5NmucSS9KpM+PW+pNy7sMQS6NI70/KW08oezKgra7bNGsxVc85SPD4Ry7qNQ== X-Gm-Gg: AR+sD13QTle9FXVxxjk92aSMg00c9YiPs1gwEmt7B3zsQqeTP3w3CP8Z1seeLKpyKw0 VNaQzvIZCD1arnTBa6qYGs8FsF1Tgw3zXWEWZu77fvMj3z682keOM1wAWTvlImAyYK+gPEfFvr/ HppojsSB3U7zCS4lAC3j60b6ggchMbjeFQ3TXD7fmFPeYdUMqoxGUWp02h+1ehrptMBFDsg4jvZ GGHdcQ8+42r8KtIe94mSa8y5jeqS2VNrwAi18qmXGVVWv9bgcfCB41Tnz1cHzywWW5hK90hXxgD g1c5HtTsCq4q6Z04/VeQYwXsiqIbDofvLdjC6R0kDrECcbp7KcvInc9qCxP8FnafxDK7N2qfSQA JeZU1UrmMB0/U+EIYZqMf83BjMw8Jlmin9ZJPKGdgR8YhKpmoxMXjcSeqqXafy9d6dcHh2z3Y4i SFkiIopeY0l3OISAB72A== X-Received: by 2002:a17:903:3d0e:b0:2cf:6dba:b294 with SMTP id d9443c01a7336-2cf6dbab68emr86834815ad.22.1784651249982; Tue, 21 Jul 2026 09:27:29 -0700 (PDT) Received: from ashishkumar.. ([2406:7400:12b:e084:b7f2:160:d1f2:65e2]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-3147dc1b99esm479421eec.3.2026.07.21.09.27.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jul 2026 09:27:29 -0700 (PDT) From: AshishKumar Mishra To: openembedded-devel@lists.openembedded.org Cc: AshishKumar Mishra Subject: [meta-openembedded][PATCH v3 1/3] e2fsprogs-ext4sparse-native: compiles ext2simg.c using android-tools-native Date: Tue, 21 Jul 2026 21:56:42 +0530 Message-ID: <20260721162645.2056048-2-emailaddress.ashish@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260721162645.2056048-1-emailaddress.ashish@gmail.com> References: <20260721162645.2056048-1-emailaddress.ashish@gmail.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 21 Jul 2026 16:27:37 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/128354 Add a custom do_compile step to build the ext2simg_android utility (ext2simg) when building for the native class. This can be used to generate ext* based sparse image Signed-off-by: AshishKumar Mishra --- .../e2fsprogs-ext4sparse-native_1.47.4.bb | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 meta-oe/recipes-devtools/e2fsprogs-ext4sparse/e2fsprogs-ext4sparse-native_1.47.4.bb diff --git a/meta-oe/recipes-devtools/e2fsprogs-ext4sparse/e2fsprogs-ext4sparse-native_1.47.4.bb b/meta-oe/recipes-devtools/e2fsprogs-ext4sparse/e2fsprogs-ext4sparse-native_1.47.4.bb new file mode 100644 index 0000000000..04f9aaaf2b --- /dev/null +++ b/meta-oe/recipes-devtools/e2fsprogs-ext4sparse/e2fsprogs-ext4sparse-native_1.47.4.bb @@ -0,0 +1,32 @@ +SUMMARY = "Native ext sparse conversion utility from e2fsprogs" +DESCRIPTION = "Builds only ext2simg for host-side ext* sparse image conversion" +HOMEPAGE = "http://e2fsprogs.sourceforge.net/" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://contrib/android/ext2simg.c;beginline=1;endline=14;md5=fc8a826484cc82548adeaad2579adfca" + +DEPENDS = "e2fsprogs-native android-tools-native" + +SRC_URI = "git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git;branch=master;protocol=https" +SRCREV = "ece89fac4603e400155b7bbf6326284f8511bca9" + +inherit native + +do_compile() { + bbnote "Compiling ext2simg.c with native toolchain" + # Source directory for ext2simg.c in the e2fsprogs tree + SRC_EXT2SIMG="${S}/contrib/android" + + INCLUDES="-I${S}/lib -I${B}/lib -I${SRC_EXT2SIMG}/lib" + + # STAGING_LIBDIR_NATIVE: where android-tools-native installed libsparse + LIBS="-L${B}/lib -L${RECIPE_SYSROOT_NATIVE}${libdir} -L${RECIPE_SYSROOT_NATIVE}${libdir}/android -lsparse -lext2fs -lz -lcom_err" + + ${CC} ${CFLAGS} ${LDFLAGS} -o "${B}/ext2simg_android" "${SRC_EXT2SIMG}/ext2simg.c" ${INCLUDES} ${LIBS} + bbnote "ext2simg_android compilation finished" +} + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${B}/ext2simg_android ${D}${bindir}/ext2simg_android +} + From patchwork Tue Jul 21 16:26:43 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AshishKumar Mishra X-Patchwork-Id: 93058 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72DCBC4452B for ; Tue, 21 Jul 2026 16:27:37 +0000 (UTC) Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.27183.1784651253583416843 for ; Tue, 21 Jul 2026 09:27:33 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=rwtPJp/r; spf=pass (domain: gmail.com, ip: 209.85.214.181, mailfrom: emailaddress.ashish@gmail.com) Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2ce98cb8165so54390675ad.1 for ; Tue, 21 Jul 2026 09:27:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784651253; x=1785256053; darn=lists.openembedded.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=eBlZtMkun6sIu3vlUHseC3JQQAvmJMuFlusVUfZjEbg=; b=rwtPJp/rYSr1+kRD91Mu5E46pA3aYTKoBCDCAA1VI4YMlPxfx65Bg2UNs00BzFi6Cr e00NX5d+Q50yqxJb4qzT38rx/KLDgZxiNpZqCbAGtztXwzg8i7EK+62AtAAR61T7xwIm JUSutpGpnKWnQeLth8UOsK6tiI2FQBM8rGG0k+61KR4mH32IRULkU6abgu2nvlBVGynH /vxj6z2BovNpn7WFyoa1zOjOB1dWgJe1+GemdfSjRHBwP20AV0sMWm+/F+kSnbaTtAZc Pd1PQdEI6cw3Ztt2b6UcTKsQUg45+lIGCRQKG/qSEX3xXkiT6m6vkhmHWNXLSDEvTMbd JG0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784651253; x=1785256053; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=eBlZtMkun6sIu3vlUHseC3JQQAvmJMuFlusVUfZjEbg=; b=mpVx5zUC/i/TNigct3QevUqsjLnk1YwIlt/uDeW/nNPw1ai100vLuK4Au5eee+vkcu tePwInA+sNmxXKvOgtLjWfuIjVQe1gIARyWnqDkH+qe/Z66fbd+NpTxILociYqCsEk/F P9d61eBmHyxWbFftZsGtrlPYDF3yfa4YNCToEHZGGwSZM3KE0zvaX0z3//R2rJOcWeE8 HnhymZLhdCoAZQ5IQCLF38am5e0Mdz5t81YvowYDVmTl+vQGtvG+fSOIycH9dsYGC2/G PxYDpzHv5n+hvvlPII2KOdn7gedlfi0OeUCMRMRrxoPeAs88+LyL/MUuvfZFiBf+HOC2 F6WA== X-Gm-Message-State: AOJu0YxNCG5eI/Qnrvk2OsCb9jUugcCRYsN9PJyaTobo97YhlcAqrNOH 5DfkjdvJP6dASJ6BiqM5n46I5yrHVzzanl2kZWai2ADm8FV5OwOLBhE8Hv4i4w== X-Gm-Gg: AR+sD11rwszszS4OLgo3h4C97fp1QLHE4DgVPEtga0nMNGwuVyGtIojIUx2UeU4ZbsU 4oBX//h/N+M8DD5eWi/5I/GdQaHs/pmpX43jahlnfh3N6Ng2d9rSeQiEVqB28ykSr5rriwxIhfJ vAtDiNUtKYP0wRes+S63lBq/rwqWInbUfPTbTubXJTAa0GgSbE12w1rU+Pqtlo4vrHPmI9ZvMDo MgkUWOLeBrdOuPN/j9nICHLGpvhdd4vpTfbMczTdl2wzgK4Ni9TbgbsujZLLJpZC2P0WiXCai7P qwEf154YQnjOGoCZbR/pW+rWJ2ApuhW8kZoVsWECfBERzCa18NW8L5CB8JNA7BUG+iNM9R15sMm z2NXAumzxxRxOmXrUseexfzpZaoK8zBsD2TqJWuf+t0lfFpWFqkN/E1fk4ueL3JoPbcy0KX7uWF HJOXpsvbFHd6TKSfroLA== X-Received: by 2002:a17:903:4688:b0:2cf:461a:3863 with SMTP id d9443c01a7336-2cf8ddb8b0dmr3985445ad.22.1784651252896; Tue, 21 Jul 2026 09:27:32 -0700 (PDT) Received: from ashishkumar.. ([2406:7400:12b:e084:b7f2:160:d1f2:65e2]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-3147dc1b99esm479421eec.3.2026.07.21.09.27.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jul 2026 09:27:32 -0700 (PDT) From: AshishKumar Mishra To: openembedded-devel@lists.openembedded.org Cc: AshishKumar Mishra Subject: [meta-openembedded][PATCH v3 2/3] android-tools: export libsparse/libbase/liblog headers and libs to sysroot Date: Tue, 21 Jul 2026 21:56:43 +0530 Message-ID: <20260721162645.2056048-3-emailaddress.ashish@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260721162645.2056048-1-emailaddress.ashish@gmail.com> References: <20260721162645.2056048-1-emailaddress.ashish@gmail.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 21 Jul 2026 16:27:37 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/128355 Export libsparse, libbase, and liblog headers and libraries to the sysroot. Currently, these are often internal to the build. Reorganise header installation to ${includedir}/sparse to match the expected include paths for e2fsprogs contrib tools. Signed-off-by: AshishKumar Mishra --- .../android-tools/android-tools_%.bbappend | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 meta-oe/recipes-devtools/android-tools/android-tools_%.bbappend diff --git a/meta-oe/recipes-devtools/android-tools/android-tools_%.bbappend b/meta-oe/recipes-devtools/android-tools/android-tools_%.bbappend new file mode 100644 index 0000000000..50c54145b8 --- /dev/null +++ b/meta-oe/recipes-devtools/android-tools/android-tools_%.bbappend @@ -0,0 +1,54 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" + +# e2fsprogs expecting headers in sparse/ subdirectory +do_install:append:class-native() { + # to resolve the "Multiple shlib providers" conflict. + rm -f ${D}${libdir}/android/libsparse.so* + rm -f ${D}${libdir}/android/libbase.so* + rm -f ${D}${libdir}/android/liblog.so* + + if [ -d "${S}/system/core/libsparse/include/sparse" ]; then + install -d ${D}${includedir}/sparse + cp -r ${S}/system/core/libsparse/include/sparse/* ${D}${includedir}/sparse/ + else + bbfatal "Sparse headers not found in ${S}/system/core/libsparse/include/sparse" + fi + + install -d ${D}${libdir} + for lib in libsparse libbase liblog; do + if [ -f "${S}/debian/out/system/${lib}.so" ]; then + bbnote "Installing ${lib} from ${S}/debian/out/system/${lib}.so" + install -m 0755 ${S}/debian/out/system/${lib}.so ${D}${libdir}/${lib}.so.0 + ln -sf ${lib}.so.0 ${D}${libdir}/${lib}.so + elif [ -f "${S}/debian/out/system/${lib}.so.0" ]; then + bbnote "Installing ${lib} from ${S}/debian/out/system/${lib}.so.0" + install -m 0755 ${S}/debian/out/system/${lib}.so.0 ${D}${libdir}/${lib}.so.0 + ln -sf ${lib}.so.0 ${D}${libdir}/${lib}.so + else + bberror "${lib} not found in ${S}/debian/out/system" + fi + done + + install -d ${D}${libdir}/android + for lib in libsparse libbase liblog; do + if [ -f "${D}${libdir}/${lib}.so.0" ]; then + ln -sf ../${lib}.so.0 ${D}${libdir}/android/${lib}.so.0 + ln -sf ../${lib}.so ${D}${libdir}/android/${lib}.so + fi + done +} + +FILES:${PN}-dev += " \ + ${includedir}/sparse \ + ${libdir}/lib*.so \ + ${libdir}/android/lib*.so \ +" + +FILES:${PN} += " \ + ${libdir}/lib*.so.* \ + ${libdir}/android/lib*.so.* \ +" + +SYSROOT_DIRS:append:class-native = " ${includedir} ${libdir}" + +DEPENDS:append:class-native = " googletest-native" From patchwork Tue Jul 21 16:26:44 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: AshishKumar Mishra X-Patchwork-Id: 93059 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 70D76C4452B for ; Tue, 21 Jul 2026 16:27:47 +0000 (UTC) Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com [209.85.210.176]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.27186.1784651257327242749 for ; Tue, 21 Jul 2026 09:27:37 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=Qa49spw6; spf=pass (domain: gmail.com, ip: 209.85.210.176, mailfrom: emailaddress.ashish@gmail.com) Received: by mail-pf1-f176.google.com with SMTP id d2e1a72fcca58-84862b0d5f8so6614114b3a.3 for ; Tue, 21 Jul 2026 09:27:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784651257; x=1785256057; darn=lists.openembedded.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=AYZBRKyczPhYLQFdtNywcUsBTfsdosEdzwZS0FCboVg=; b=Qa49spw6wOuppfvSE8tf2g9XlPens82e1wwxvHc+VJzTcTe3QiYA2kgYUuiX5FyhBg dY0aAqlENc7L3GLejmIIPQFejWo+poWGqzLYwB1YufUVdG5YPcG1URu4bKZFciqxShVv 8XvCp48y6OnjLsSDYTVOFS8ZvutdUClLBFNc/0IFr4YijDjxxW+c1GhXvoSjCEzRJZQu 8ThKeLQc7zlPX3Ztzb43y83MCcBAGLiEhOltijck2Yp51fL2jSf/6bDVsDiawrnPyVSe YAF7Xu6GqbWxttI04qkYz0X6XkoPcSCoKhL+GpjFBuJXFcfaMJWWKzRUi67EqhnM9aOq qxsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784651257; x=1785256057; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=AYZBRKyczPhYLQFdtNywcUsBTfsdosEdzwZS0FCboVg=; b=RKU4teg6a57/QFXW2WylyeJ8lly2EwGOt78ztCw6Hu+bSQKkmyvHk5GxCjELPlWYio lFJQZlS30EVz78ctNRgE0/aSmRUq39+Nc5a5i6oJv4APKjECGRhhoG0GDUAS47rS4tMT 0aPKQVJuoysyxitUJTNpvYueGDHZGQZAXy+4aLykIb0LqEvbOP0XKkBype3cZpRJPamw lBQ6smjJp//kOolu9wXCfSx2ZBODKLTFuHbv0FhmH6ACJcT8y29wPxQ6+ylpOhUBecGA /aQwFZ9vQINCkvKNEPRoKJCnUuDkC7NzuQZC6QBx5sHfMRvkcB346cT6Di8Hj2pUCj0q uTgw== X-Gm-Message-State: AOJu0YwS3riD3JoC85cof3j4sVz8ZGC269cPmgN/ptCtmjCETJLNhFTn L0jImdeLaWO8Fa3PeeAJjpH9S1vzmhryKZbKCNDCLYVtwLCByzR83JA2NrHjdA== X-Gm-Gg: AfdE7cnX3SBrYrKLzbSh67FGeJMT3wx9ZoZdqlIN+Hj5g/KUwxRHbSPyK/OQfhYXLzP SsyrjqGWOBjcpXb6MTYw8VWsiXFIzAayLkySOT8hu0SVTh22qJAQO7PunZHnbHdtApLZHDquvHn zmWmU5FbWe4SIKQ4kPMpJGsf0UsnAdcu9WAnhzhqVWH14C8flDQi3LZfJsIKY/YwPcvvZqEIJe+ RUBjbDCmBCJvbAwzharVwEeZ0XCFsjS5s46ueBNa1CrvCq9AxjpFtvSXeo5g4qxoK7YVmKwfEEL C5/ixIWhSLR7OhneOtfa5mByTrb63oTr1rtVB3hRmza/8dl8zHxd2LE32UxU7GbvH65f9wPcJCn vmHX6x2PvmTaSV5JgNZa2yWpbmY9P8p6aCjwjuqgRohs9MFJwOZv+CPfSi7LUv0IZfxPtB/IOOq 3/ulAOrapnxHgQ2Kb2zg== X-Received: by 2002:a05:6a21:4a97:b0:3c3:8c88:7b20 with SMTP id adf61e73a8af0-3c3ada1eb3cmr19446683637.44.1784651256462; Tue, 21 Jul 2026 09:27:36 -0700 (PDT) Received: from ashishkumar.. ([2406:7400:12b:e084:b7f2:160:d1f2:65e2]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-3147dc1b99esm479421eec.3.2026.07.21.09.27.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Jul 2026 09:27:35 -0700 (PDT) From: AshishKumar Mishra To: openembedded-devel@lists.openembedded.org Cc: AshishKumar Mishra Subject: [meta-openembedded][PATCH v3 3/3] image_types_sparse: switch ext* conversion to ext2simg_android Date: Tue, 21 Jul 2026 21:56:44 +0530 Message-ID: <20260721162645.2056048-4-emailaddress.ashish@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260721162645.2056048-1-emailaddress.ashish@gmail.com> References: <20260721162645.2056048-1-emailaddress.ashish@gmail.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 21 Jul 2026 16:27:47 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/128356 We have RFC discussion at https://lists.openembedded.org/g/openembedded-devel/message/124499 https://lists.openembedded.org/g/openembedded-devel/message/125497 Move ext* sparse image generation from 'img2simg' to ' ext2simg_android' Signed-off-by: AshishKumar Mishra --- meta-oe/classes/image_types_sparse.bbclass | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/meta-oe/classes/image_types_sparse.bbclass b/meta-oe/classes/image_types_sparse.bbclass index 5416c2a019..5c1d92bd18 100644 --- a/meta-oe/classes/image_types_sparse.bbclass +++ b/meta-oe/classes/image_types_sparse.bbclass @@ -13,11 +13,21 @@ DELETE_RAWIMAGE_AFTER_SPARSE_CMD ??= "0" CONVERSION_CMD:sparse = " \ truncate --no-create --size=%${SPARSE_BLOCK_SIZE} "${IMAGE_NAME}.${type}"; \ - img2simg -s "${IMAGE_NAME}.${type}" "${IMAGE_NAME}.${type}.sparse" ${SPARSE_BLOCK_SIZE}; \ + case '${type}' in \ + ext*) \ + bbnote 'Running e2fsprogs-derived ext2simg_android..' ; \ + ext2simg_android '${IMAGE_NAME}.${type}' '${IMAGE_NAME}.${type}.simg' || bberror 'ext2simg_android failed' \ + ;; \ + *) \ + bbnote 'Generating sparse image for non-ext filesystem...'; \ + img2simg -s '${IMAGE_NAME}.${type}' '${IMAGE_NAME}.${type}.sparse' ${SPARSE_BLOCK_SIZE}; \ + ;; \ + esac; \ if [ "${DELETE_RAWIMAGE_AFTER_SPARSE_CMD}" = "1" ]; then \ rm -f ${IMAGE_NAME}.${type};\ - bbwarn "Raw file ${IMAGE_NAME}.${type} removed" ;\ + bbnote "Raw file ${IMAGE_NAME}.${type} removed" ;\ fi;\ " -CONVERSION_DEPENDS_sparse = "android-tools-native" +CONVERSION_DEPENDS_sparse = "android-tools-native e2fsprogs-ext4sparse-native" +do_image_ext4[depends] += "e2fsprogs-ext4sparse-native:do_populate_sysroot"