| Submitter | Mark Hatle |
|---|---|
| Date | June 29, 2011, 1:46 a.m. |
| Message ID | <d0bbe06e703f6f9b7d0f38ffc372f3bb1425483a.1309311935.git.mark.hatle@windriver.com> |
| Download | mbox | patch |
| Permalink | /patch/6643/ |
| State | New, archived |
| Headers | show |
Comments
Mark Hatle wrote: > [V2 - fix a small typo in the comment] > > If image-prelink is being used, the system will automatically prelink > the target image. This avoids the need to run the postinst prelink > script at first boot. However, if the user has not enabled image > prelinking -- then we do enable the script to run on first boot. > > # The cron script attempts to re-prelink the system daily -- on > @@ -58,11 +58,13 @@ do_install_append () { > install -m 0644 ${WORKDIR}/macros.prelink > ${D}${sysconfdir}/rpm/macros.prelink } > > +# If we're using image-prelink, we want to skip this on the host side > +# but still do it if the package is installed on the target... > pkg_postinst_prelink() { > #!/bin/sh > > if [ "x$D" != "x" ]; then > - exit 1 > + ${@base_contains('USER_CLASSES', 'image-prelink', 'exit 0', 'exit > 1', d)} fi > > prelink -a Even if without the patch, we still skip this on the host side -- previously we skipped with "exit 1", and with the patch now we skip with "exit 1" or "exit 0". So IMHO looks the patch doesn't actually help? :-) Thanks, -- Dexuan
On Wed, 2011-06-29 at 22:39 +0800, Cui, Dexuan wrote: > Even if without the patch, we still skip this on the host side -- previously we skipped with "exit 1", and with the patch now we skip with "exit 1" or "exit 0". > So IMHO looks the patch doesn't actually help? :-) If the script exits with 0 in offline mode then it won't get rerun at first boot on the target. If it exits with 1 then it will. p.
On 6/29/11 9:42 AM, Phil Blundell wrote: > On Wed, 2011-06-29 at 22:39 +0800, Cui, Dexuan wrote: >> Even if without the patch, we still skip this on the host side -- previously we skipped with "exit 1", and with the patch now we skip with "exit 1" or "exit 0". >> So IMHO looks the patch doesn't actually help? :-) > > If the script exits with 0 in offline mode then it won't get rerun at > first boot on the target. If it exits with 1 then it will. Yes. Since we've already run the equivalent of the script in the image-prelink, we can safely exit with a '0' telling the "image" preinst code that this was successfully run and to ignore it at first boot. --Mark > p. > > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Mark Hatle wrote: > On 6/29/11 9:42 AM, Phil Blundell wrote: >> On Wed, 2011-06-29 at 22:39 +0800, Cui, Dexuan wrote: >>> Even if without the patch, we still skip this on the host side -- >>> previously we skipped with "exit 1", and with the patch now we skip >>> with "exit 1" or "exit 0". So IMHO looks the patch doesn't actually >>> help? :-) >> >> If the script exits with 0 in offline mode then it won't get rerun at >> first boot on the target. If it exits with 1 then it will. > > Yes. Since we've already run the equivalent of the script in the > image-prelink, we can safely exit with a '0' telling the "image" > preinst code that this was successfully run and to ignore it at first > boot. > Ok, got it! Thanks very much for the explanation! Thanks, -- Dexuan
Patch
diff --git a/meta/recipes-devtools/prelink/prelink_git.bb b/meta/recipes-devtools/prelink/prelink_git.bb index b57c145..c653d4d 100644 --- a/meta/recipes-devtools/prelink/prelink_git.bb +++ b/meta/recipes-devtools/prelink/prelink_git.bb @@ -10,7 +10,7 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b" SRCREV = "ac461e73b17253a4da25c5aafeac7193b553156c" PV = "1.0+git${SRCPV}" -PR = "r3" +PR = "r4" # # The cron script attempts to re-prelink the system daily -- on @@ -58,11 +58,13 @@ do_install_append () { install -m 0644 ${WORKDIR}/macros.prelink ${D}${sysconfdir}/rpm/macros.prelink } +# If we're using image-prelink, we want to skip this on the host side +# but still do it if the package is installed on the target... pkg_postinst_prelink() { #!/bin/sh if [ "x$D" != "x" ]; then - exit 1 + ${@base_contains('USER_CLASSES', 'image-prelink', 'exit 0', 'exit 1', d)} fi prelink -a
[V2 - fix a small typo in the comment] If image-prelink is being used, the system will automatically prelink the target image. This avoids the need to run the postinst prelink script at first boot. However, if the user has not enabled image prelinking -- then we do enable the script to run on first boot. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> --- meta/recipes-devtools/prelink/prelink_git.bb | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)