All of lore.kernel.org
 help / color / mirror / Atom feed
* Fix: stage hidden files as well
@ 2010-04-26 16:24 Mike Westerhof
  2010-04-28 21:49 ` Tom Rini
  0 siblings, 1 reply; 4+ messages in thread
From: Mike Westerhof @ 2010-04-26 16:24 UTC (permalink / raw)
  To: openembedded-devel

The following patch is a proposed patch to fix the problem where hidden
files are sometimes missed during staging.  A specific example is that
the symbolic link ".config" is not copied to the kernel staging area,
which causes madwifi-ng to fail to build.

diff --git a/classes/staging.bbclass b/classes/staging.bbclass
index 32038a5..cb19cb9 100644
--- a/classes/staging.bbclass
+++ b/classes/staging.bbclass
@@ -35,6 +35,13 @@ sysroot_stage_dir() {
        if [ -d "$src" ]; then
                mkdir -p "$dest"
                cp -fpPR "$src"/* "$dest"
+               # Get hidden files as well, but carefully
+               for i in "$src"/.*
+               do
+                       if [ "$i" != "$src"/. -a "$i" != "$src"/.. ]; then
+                              cp -fpPR "$i" "$dest"
+                       fi
+               done
        fi
 }

If anyone has a better way to address the copy operations above, that
would be great.

-Mike (mwester)




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

* Re: Fix: stage hidden files as well
  2010-04-26 16:24 Fix: stage hidden files as well Mike Westerhof
@ 2010-04-28 21:49 ` Tom Rini
  2010-04-28 23:52   ` Chris Larson
  0 siblings, 1 reply; 4+ messages in thread
From: Tom Rini @ 2010-04-28 21:49 UTC (permalink / raw)
  To: openembedded-devel

On Mon, 2010-04-26 at 11:24 -0500, Mike Westerhof wrote:
> The following patch is a proposed patch to fix the problem where hidden
> files are sometimes missed during staging.  A specific example is that
> the symbolic link ".config" is not copied to the kernel staging area,
> which causes madwifi-ng to fail to build.
> 
> diff --git a/classes/staging.bbclass b/classes/staging.bbclass
> index 32038a5..cb19cb9 100644
> --- a/classes/staging.bbclass
> +++ b/classes/staging.bbclass
> @@ -35,6 +35,13 @@ sysroot_stage_dir() {
>         if [ -d "$src" ]; then
>                 mkdir -p "$dest"
>                 cp -fpPR "$src"/* "$dest"
> +               # Get hidden files as well, but carefully
> +               for i in "$src"/.*
> +               do
> +                       if [ "$i" != "$src"/. -a "$i" != "$src"/.. ]; then
> +                              cp -fpPR "$i" "$dest"
> +                       fi
> +               done
>         fi
>  }
> 
> If anyone has a better way to address the copy operations above, that
> would be great.

So, I said this on IRC, but more formally, how about just for i in
"$src"/.??* do as this lets us know we don't have '.' or '..', and if we
skip out on '.a' or something being installed, that reeks of a bug in
the program in question that should be fixed anyways (and would
catch .config and others).

-- 
Tom Rini <tom_rini@mentor.com>
Mentor Graphics Corporation



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

* Re: Fix: stage hidden files as well
  2010-04-28 21:49 ` Tom Rini
@ 2010-04-28 23:52   ` Chris Larson
  2010-04-29  7:05     ` Koen Kooi
  0 siblings, 1 reply; 4+ messages in thread
From: Chris Larson @ 2010-04-28 23:52 UTC (permalink / raw)
  To: openembedded-devel

On Wed, Apr 28, 2010 at 2:49 PM, Tom Rini <tom_rini@mentor.com> wrote:

> On Mon, 2010-04-26 at 11:24 -0500, Mike Westerhof wrote:
> > The following patch is a proposed patch to fix the problem where hidden
> > files are sometimes missed during staging.  A specific example is that
> > the symbolic link ".config" is not copied to the kernel staging area,
> > which causes madwifi-ng to fail to build.
> >
> > diff --git a/classes/staging.bbclass b/classes/staging.bbclass
> > index 32038a5..cb19cb9 100644
> > --- a/classes/staging.bbclass
> > +++ b/classes/staging.bbclass
> > @@ -35,6 +35,13 @@ sysroot_stage_dir() {
> >         if [ -d "$src" ]; then
> >                 mkdir -p "$dest"
> >                 cp -fpPR "$src"/* "$dest"
> > +               # Get hidden files as well, but carefully
> > +               for i in "$src"/.*
> > +               do
> > +                       if [ "$i" != "$src"/. -a "$i" != "$src"/.. ];
> then
> > +                              cp -fpPR "$i" "$dest"
> > +                       fi
> > +               done
> >         fi
> >  }
> >
> > If anyone has a better way to address the copy operations above, that
> > would be great.
>
> So, I said this on IRC, but more formally, how about just for i in
> "$src"/.??* do as this lets us know we don't have '.' or '..', and if we
> skip out on '.a' or something being installed, that reeks of a bug in
> the program in question that should be fixed anyways (and would
> catch .config and others).


Alternatively, could for i in "$src".[a-zA-Z]*, I doubt we care about
dotfiles starting with a number.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics


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

* Re: Fix: stage hidden files as well
  2010-04-28 23:52   ` Chris Larson
@ 2010-04-29  7:05     ` Koen Kooi
  0 siblings, 0 replies; 4+ messages in thread
From: Koen Kooi @ 2010-04-29  7:05 UTC (permalink / raw)
  To: openembedded-devel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 29-04-10 01:52, Chris Larson wrote:
> On Wed, Apr 28, 2010 at 2:49 PM, Tom Rini <tom_rini@mentor.com> wrote:
> 
>> On Mon, 2010-04-26 at 11:24 -0500, Mike Westerhof wrote:
>>> The following patch is a proposed patch to fix the problem where hidden
>>> files are sometimes missed during staging.  A specific example is that
>>> the symbolic link ".config" is not copied to the kernel staging area,
>>> which causes madwifi-ng to fail to build.
>>>
>>> diff --git a/classes/staging.bbclass b/classes/staging.bbclass
>>> index 32038a5..cb19cb9 100644
>>> --- a/classes/staging.bbclass
>>> +++ b/classes/staging.bbclass
>>> @@ -35,6 +35,13 @@ sysroot_stage_dir() {
>>>         if [ -d "$src" ]; then
>>>                 mkdir -p "$dest"
>>>                 cp -fpPR "$src"/* "$dest"
>>> +               # Get hidden files as well, but carefully
>>> +               for i in "$src"/.*
>>> +               do
>>> +                       if [ "$i" != "$src"/. -a "$i" != "$src"/.. ];
>> then
>>> +                              cp -fpPR "$i" "$dest"
>>> +                       fi
>>> +               done
>>>         fi
>>>  }
>>>
>>> If anyone has a better way to address the copy operations above, that
>>> would be great.
>>
>> So, I said this on IRC, but more formally, how about just for i in
>> "$src"/.??* do as this lets us know we don't have '.' or '..', and if we
>> skip out on '.a' or something being installed, that reeks of a bug in
>> the program in question that should be fixed anyways (and would
>> catch .config and others).
> 
> 
> Alternatively, could for i in "$src".[a-zA-Z]*, I doubt we care about
> dotfiles starting with a number.

rm_work needs a similar fix. In webkit gtk we set S to WORKDIR and
rm_work skips the 2 gigabyte .libs directory.

regards,

Koen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFL2S+6MkyGM64RGpERAgmlAJ4yDKxJ/JDNf71meEOkVK+iUHPXpQCgt1ex
U3fzV/UiLdmSYklkcU1seMw=
=bpD4
-----END PGP SIGNATURE-----




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

end of thread, other threads:[~2010-04-29  7:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-26 16:24 Fix: stage hidden files as well Mike Westerhof
2010-04-28 21:49 ` Tom Rini
2010-04-28 23:52   ` Chris Larson
2010-04-29  7:05     ` Koen Kooi

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.