All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/1] Workaround for do_populate_sysroot failure
@ 2019-08-20  9:05 kai.kang
  2019-08-20  9:05 ` [PATCH 1/1] adwaita-icon-theme: workaround " kai.kang
  0 siblings, 1 reply; 5+ messages in thread
From: kai.kang @ 2019-08-20  9:05 UTC (permalink / raw)
  To: openembedded-core

From: Kai Kang <kai.kang@windriver.com>

Hi,

The script caused the issue install-sh is identical with the file from
libtool and automake. Its function should be stable. And I didn't find
out the root cause, so remove the temporary files explictly as workaround.

Kai Kang (1):
  adwaita-icon-theme: workaround for do_populate_sysroot failure

 meta/recipes-gnome/gnome/adwaita-icon-theme_3.32.0.bb | 5 +++++
 1 file changed, 5 insertions(+)

-- 
2.20.0



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/1] adwaita-icon-theme: workaround for do_populate_sysroot failure
  2019-08-20  9:05 [PATCH 0/1] Workaround for do_populate_sysroot failure kai.kang
@ 2019-08-20  9:05 ` kai.kang
  2019-08-20 18:41   ` Ross Burton
  0 siblings, 1 reply; 5+ messages in thread
From: kai.kang @ 2019-08-20  9:05 UTC (permalink / raw)
  To: openembedded-core

From: Kai Kang <kai.kang@windriver.com>

It fails to run task do_populate_sysroot of adwaita-icon-theme rarely:

| DEBUG: Executing shell function sysroot_stage_all
| cpio: ./icons/Adwaita/16x16/legacy/_inst.21134_: Cannot stat: No such
  file or directory

In script ${S}/install-sh, temporary files _inst.* are created and will be
removed by shell builtin command trap when the script exits:

    # Make a couple of temp file names in the proper directory.
    dsttmp=${dstdirslash}_inst.$$_
    rmtmp=${dstdirslash}_rm.$$_

    # Trap to clean up those temp files at exit.
    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0

The temporary files should be deleted already after task do_install. But
somehow they are still exist until the gap between commands find and
cpio in populate_sysroot function sysroot_stage_dir().

Remove the temporary files explicitly to avoid such issues.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
 meta/recipes-gnome/gnome/adwaita-icon-theme_3.32.0.bb | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.32.0.bb b/meta/recipes-gnome/gnome/adwaita-icon-theme_3.32.0.bb
index 02676f4401..2f999222dc 100644
--- a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.32.0.bb
+++ b/meta/recipes-gnome/gnome/adwaita-icon-theme_3.32.0.bb
@@ -19,6 +19,11 @@ SRC_URI[sha256sum] = "698db6e407bb987baec736c6a30216dfc0317e3ca2403c7adf3a5aa46c
 
 DEPENDS += "librsvg-native"
 
+do_install_append () {
+    # remove temp files explicitly
+    find ${D} \( -name _inst.* -o -name _rm.* \) -delete
+}
+
 PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}"
 
 RREPLACES_${PN} = "gnome-icon-theme"
-- 
2.20.0



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] adwaita-icon-theme: workaround for do_populate_sysroot failure
  2019-08-20  9:05 ` [PATCH 1/1] adwaita-icon-theme: workaround " kai.kang
@ 2019-08-20 18:41   ` Ross Burton
  2019-08-20 19:19     ` Alexander Kanavin
  0 siblings, 1 reply; 5+ messages in thread
From: Ross Burton @ 2019-08-20 18:41 UTC (permalink / raw)
  To: openembedded-core

On 20/08/2019 10:05, kai.kang@windriver.com wrote:
> From: Kai Kang <kai.kang@windriver.com>
> 
> It fails to run task do_populate_sysroot of adwaita-icon-theme rarely:
> 
> | DEBUG: Executing shell function sysroot_stage_all
> | cpio: ./icons/Adwaita/16x16/legacy/_inst.21134_: Cannot stat: No such
>    file or directory
> 
> In script ${S}/install-sh, temporary files _inst.* are created and will be
> removed by shell builtin command trap when the script exits:
> 
>      # Make a couple of temp file names in the proper directory.
>      dsttmp=${dstdirslash}_inst.$$_
>      rmtmp=${dstdirslash}_rm.$$_
> 
>      # Trap to clean up those temp files at exit.
>      trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
> 
> The temporary files should be deleted already after task do_install. But
> somehow they are still exist until the gap between commands find and
> cpio in populate_sysroot function sysroot_stage_dir().

So does this only happen to adwaita-icon-theme?  Is it a bug in 
install-sh, so impacts almost every automake-using package?  Or is it a 
bug in how adwaita-icon-theme is using install-sh?

Ross


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] adwaita-icon-theme: workaround for do_populate_sysroot failure
  2019-08-20 18:41   ` Ross Burton
@ 2019-08-20 19:19     ` Alexander Kanavin
  2019-08-21  1:41       ` Kang Kai
  0 siblings, 1 reply; 5+ messages in thread
From: Alexander Kanavin @ 2019-08-20 19:19 UTC (permalink / raw)
  To: Ross Burton; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1466 bytes --]

On Tue, 20 Aug 2019 at 20:42, Ross Burton <ross.burton@intel.com> wrote:

> > It fails to run task do_populate_sysroot of adwaita-icon-theme rarely:
> >
> > | DEBUG: Executing shell function sysroot_stage_all
> > | cpio: ./icons/Adwaita/16x16/legacy/_inst.21134_: Cannot stat: No such
> >    file or directory
> >
> > In script ${S}/install-sh, temporary files _inst.* are created and will
> be
> > removed by shell builtin command trap when the script exits:
> >
> >      # Make a couple of temp file names in the proper directory.
> >      dsttmp=${dstdirslash}_inst.$$_
> >      rmtmp=${dstdirslash}_rm.$$_
> >
> >      # Trap to clean up those temp files at exit.
> >      trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
> >
> > The temporary files should be deleted already after task do_install. But
> > somehow they are still exist until the gap between commands find and
> > cpio in populate_sysroot function sysroot_stage_dir().
>
> So does this only happen to adwaita-icon-theme?  Is it a bug in
> install-sh, so impacts almost every automake-using package?  Or is it a
> bug in how adwaita-icon-theme is using install-sh?
>

This might actually be caused by my glorious hack:
https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch?h=master-next

There is a 'wait' after every '&', so not sure what goes wrong here.

Alex

[-- Attachment #2: Type: text/html, Size: 2218 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] adwaita-icon-theme: workaround for do_populate_sysroot failure
  2019-08-20 19:19     ` Alexander Kanavin
@ 2019-08-21  1:41       ` Kang Kai
  0 siblings, 0 replies; 5+ messages in thread
From: Kang Kai @ 2019-08-21  1:41 UTC (permalink / raw)
  To: Alexander Kanavin, Ross Burton; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1870 bytes --]

On 2019/8/21 上午3:19, Alexander Kanavin wrote:
> On Tue, 20 Aug 2019 at 20:42, Ross Burton <ross.burton@intel.com 
> <mailto:ross.burton@intel.com>> wrote:
>
>     > It fails to run task do_populate_sysroot of adwaita-icon-theme
>     rarely:
>     >
>     > | DEBUG: Executing shell function sysroot_stage_all
>     > | cpio: ./icons/Adwaita/16x16/legacy/_inst.21134_: Cannot stat:
>     No such
>     >    file or directory
>     >
>     > In script ${S}/install-sh, temporary files _inst.* are created
>     and will be
>     > removed by shell builtin command trap when the script exits:
>     >
>     >      # Make a couple of temp file names in the proper directory.
>     >      dsttmp=${dstdirslash}_inst.$$_
>     >      rmtmp=${dstdirslash}_rm.$$_
>     >
>     >      # Trap to clean up those temp files at exit.
>     >      trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
>     >
>     > The temporary files should be deleted already after task
>     do_install. But
>     > somehow they are still exist until the gap between commands find and
>     > cpio in populate_sysroot function sysroot_stage_dir().
>
>     So does this only happen to adwaita-icon-theme?  Is it a bug in
>     install-sh, so impacts almost every automake-using package?  Or is
>     it a
>     bug in how adwaita-icon-theme is using install-sh?
>
>
> This might actually be caused by my glorious hack:
> https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch?h=master-next
>
> There is a 'wait' after every '&', so not sure what goes wrong here.

Hi Alex,

Thanks. I'll revert this commit locally. And if it is the root cause, 
I'll try to figure out what's going on here.

Kai


>
> Alex
>

-- 
Kai Kang


[-- Attachment #2: Type: text/html, Size: 4115 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-08-21  1:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-20  9:05 [PATCH 0/1] Workaround for do_populate_sysroot failure kai.kang
2019-08-20  9:05 ` [PATCH 1/1] adwaita-icon-theme: workaround " kai.kang
2019-08-20 18:41   ` Ross Burton
2019-08-20 19:19     ` Alexander Kanavin
2019-08-21  1:41       ` Kang Kai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.