From: Ulf Samuelsson <ulf_samuelsson@telia.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: How best replace /etc/init.d files with debugging versions right before jffs2 file is generated?
Date: Sat, 29 Oct 2011 18:01:06 +0200 [thread overview]
Message-ID: <4EAC2342.1090401@telia.com> (raw)
In-Reply-To: <13765A18-0776-47BA-9517-B88FA62900B6@chargestorm.se>
2011-10-29 17:00, Anders Darander skrev:
> On 29 okt 2011, at 16:22, "Ulf Samuelsson"<ulf_samuelsson@telia.com> wrote:
>
>> 2011-10-29 15:52, Ulf Samuelsson skrev:
>>> Having some problems booting a rootfs generated by openembedded,
>>>
>>> "hwclock can't find /dev/misc/rtc"
>>>
>>> and I would like to emit some debug information by replacing some files
>>> in the /etc/init.d directory before the rootfs is finalized.
>>>
>>> If I try to "install" from another package, I will get a conflict.
>>>
>>> I guess I could loop mount the file system and then copy.
>>> Any other suggestions?
>>>
>> Just discovered that loop mounting jffs2 isn't that easy.
>> Need to find the blkmtd driver somewhere, recompile kernel?
> Yes, loop mounting filesystems designed for raw flash requires quite some extra steps. It's generally doable, but...
>
>> I can of course add some files to tmp/rootfs and regenerate the jffs2.
>>
>> Other ideas (allowing automation) appreciated.
> Well, you could always use a bbappend to the recipe in question, and override/replace the files that way. Or, if it's just temporarily, just modify the scripts directly in the oe tree, or if the file is taken from a tarball, modify it in the build directory and force a re-install and packaging.
>
> Cheers,
> Anders
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
One would think that it was possible to do something with the rootfs,
just before the mkfs.jffs2 was started.
Key seems to be redefining "IMAGE_CMD_jffs2"
This is set in conf/bitbake.conf:
IMAGE_CMD_jffs2 = "mkfs.jffs2 -x lzo --root=${IMAGE_ROOTFS} --faketime
--output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 ${EXTRA_IMAGECMD}"
It is possible to add something either in this file, or override in
"local.conf"
PREPROCESS_JFFS2 = "tar -jxvf <myfile>.tar.bz2 -C ${IMAGE_ROOTFS}"
IMAGE_CMD_jffs2 = "${PREPROCESS_JFFS2} ; mkfs.jffs2 -x lzo
--root=${IMAGE_ROOTFS} --faketime
--output=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 ${EXTRA_IMAGECMD}"
If it is added to bitbake.conf, then PREPROCESS_JFFS2 needs to be set to
something harmless.
PREPROCESS_JFFS2 ?= "touch ${IMAGE_ROOTFS}"
BTW: Why not run sumtool on the final result? This should speed up the load.
----------------------------------------
This works for me without making a kludge of the openembedded tree.
--
Best Regards
Ulf Samuelsson
next prev parent reply other threads:[~2011-10-29 16:07 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-29 13:52 How best replace /etc/init.d files with debugging versions right before jffs2 file is generated? Ulf Samuelsson
2011-10-29 14:21 ` Ulf Samuelsson
2011-10-29 15:00 ` Anders Darander
2011-10-29 16:01 ` Ulf Samuelsson [this message]
2011-10-31 7:08 ` Anders Darander
2011-10-31 9:27 ` Paul Eggleton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EAC2342.1090401@telia.com \
--to=ulf_samuelsson@telia.com \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox