Patchwork coreutils: remove dependency on coreutils-native

login
register
mail settings
Submitter Jesse Zhang
Date Jan. 15, 2013, 7:16 a.m.
Message ID <1358234208-6177-2-git-send-email-sen.zhang@windriver.com>
Download mbox | patch
Permalink /patch/42619/
State Accepted
Commit 0ad5e6753796e050f2a9824d0516218896fe87e1
Headers show

Comments

Jesse Zhang - Jan. 15, 2013, 7:16 a.m.
If coreutils-native is built, it will replace the host commands and will
in parallel builds cause such errors:

     make[6]: execvp: rm: Text file busy

     libtool: ...tmp/sysroots/x86_64-linux//bin/mv: Text file busy

Remove the dependency and always use the host version.

Signed-off-by: Jesse Zhang <sen.zhang@windriver.com>
---
 meta/recipes-core/coreutils/coreutils_6.9.bb | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
Richard Purdie - Jan. 16, 2013, 11:59 a.m.
On Tue, 2013-01-15 at 15:16 +0800, Jesse Zhang wrote:
> If coreutils-native is built, it will replace the host commands and will
> in parallel builds cause such errors:
> 
>      make[6]: execvp: rm: Text file busy
> 
>      libtool: ...tmp/sysroots/x86_64-linux//bin/mv: Text file busy
> 
> Remove the dependency and always use the host version.
> 
> Signed-off-by: Jesse Zhang <sen.zhang@windriver.com>
> ---
>  meta/recipes-core/coreutils/coreutils_6.9.bb | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-core/coreutils/coreutils_6.9.bb b/meta/recipes-core/coreutils/coreutils_6.9.bb
> index 37d8dc9..c0778ba 100644
> --- a/meta/recipes-core/coreutils/coreutils_6.9.bb
> +++ b/meta/recipes-core/coreutils/coreutils_6.9.bb
> @@ -8,8 +8,7 @@ BUGTRACKER = "http://debbugs.gnu.org/coreutils"
>  LICENSE = "GPLv2+"
>  LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
>                      file://src/ls.c;beginline=4;endline=16;md5=15ed60f67b1db5fedd5dbc37cf8a9543"
> -PR = "r4"
> -DEPENDS = "coreutils-native-${PV}"
> +PR = "r5"
>  DEPENDS_class-native = "gettext-native"
>  
>  inherit autotools gettext

Two questions:

1) Why do we have this dependency here at all? Are we sure we don't need
it for some reasons?

2) Isn't the build of coreutils-native still broken? We should probably
hack it so it installs into some path prefix like
{python/perl/gzip/tar}-native or doesn't install the utils at all.

I've not taken the patch until we have some plans for the above issues.

Cheers,

Richard
Jesse Zhang - Jan. 17, 2013, 2:09 a.m.
On 01/16/2013 07:59 PM, Richard Purdie wrote:
> Two questions:
> 
> 1) Why do we have this dependency here at all? Are we sure we don't need
> it for some reasons?

It was introduced in this commit, Cc'ing Nitin.

commit 543577c25b5a4e89a3ab15ee28e754b71c2a43d5
Author: Nitin A Kamble <nitin.a.kamble@intel.com>
Date:   Thu Mar 17 10:25:04 2011 -0700

    coreutils-6.9: fix man page building for the gplv2 recipe

But the reason behind the dependency is not entirely clear. And we've
never seen such issue with the GPLv3 recipe. (And the GPLv2 recipe with
my fix has been building well here for some time).

> 2) Isn't the build of coreutils-native still broken? We should probably
> hack it so it installs into some path prefix like
> {python/perl/gzip/tar}-native or doesn't install the utils at all.

Yeah, the build would still be broken.

The main contents of coreutils are the several dozen commands. I'm not
sure how it can be useful if we install them into a not-in-$PATH dir.
Any suggestions? I'm willing to work out a fix.

jesse
Nitin A Kamble - Jan. 17, 2013, 5:37 a.m.
This is bit old (out of my cached memory), but looking at my commit (543577c25b5a4e89a3ab15ee28e754b71c2a43d5) the dependency on coreutils-native is needed if the build system does not have coreutils, or it is not compatible with the sources of the coreutils you are trying to build. And the commit log does show the errors it was hitting, which are solved by using the native version of the coreutils.

Nitin


> -----Original Message-----
> From: Jesse Zhang [mailto:sen.zhang@windriver.com]
> Sent: Wednesday, January 16, 2013 6:09 PM
> To: Richard Purdie; Kamble, Nitin A
> Cc: openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH] coreutils: remove dependency on coreutils-
> native
> 
> On 01/16/2013 07:59 PM, Richard Purdie wrote:
> > Two questions:
> >
> > 1) Why do we have this dependency here at all? Are we sure we don't
> > need it for some reasons?
> 
> It was introduced in this commit, Cc'ing Nitin.
> 
> commit 543577c25b5a4e89a3ab15ee28e754b71c2a43d5
> Author: Nitin A Kamble <nitin.a.kamble@intel.com>
> Date:   Thu Mar 17 10:25:04 2011 -0700
> 
>     coreutils-6.9: fix man page building for the gplv2 recipe
> 
> But the reason behind the dependency is not entirely clear. And we've never
> seen such issue with the GPLv3 recipe. (And the GPLv2 recipe with my fix has
> been building well here for some time).
> 
> > 2) Isn't the build of coreutils-native still broken? We should
> > probably hack it so it installs into some path prefix like
> > {python/perl/gzip/tar}-native or doesn't install the utils at all.
> 
> Yeah, the build would still be broken.
> 
> The main contents of coreutils are the several dozen commands. I'm not sure
> how it can be useful if we install them into a not-in-$PATH dir.
> Any suggestions? I'm willing to work out a fix.
> 
> jesse
Jesse Zhang - Jan. 17, 2013, 6:15 a.m.
On 01/17/2013 01:37 PM, Kamble, Nitin A wrote:
> This is bit old (out of my cached memory), but looking at my commit (543577c25b5a4e89a3ab15ee28e754b71c2a43d5) the dependency on coreutils-native is needed if the build system does not have coreutils, or it is not compatible with the sources of the coreutils you are trying to build. And the commit log does show the errors it was hitting, which are solved by using the native version of the coreutils.

Thanks Nitin. But I don't think there can be any system without
coreutils. And if there is some compatibility issue (which I haven't been
able to reproduce on our various hosts), we should be able to trace it
down to a specific command within coreutils.

Do you still have some notes on how to reproduce the error?

jesse
Richard Purdie - Jan. 17, 2013, 8:22 p.m.
On Thu, 2013-01-17 at 14:15 +0800, Jesse Zhang wrote:
> On 01/17/2013 01:37 PM, Kamble, Nitin A wrote:
> > This is bit old (out of my cached memory), but looking at my commit (543577c25b5a4e89a3ab15ee28e754b71c2a43d5) the dependency on coreutils-native is needed if the build system does not have coreutils, or it is not compatible with the sources of the coreutils you are trying to build. And the commit log does show the errors it was hitting, which are solved by using the native version of the coreutils.
> 
> Thanks Nitin. But I don't think there can be any system without
> coreutils. And if there is some compatibility issue (which I haven't been
> able to reproduce on our various hosts), we should be able to trace it
> down to a specific command within coreutils.
> 
> Do you still have some notes on how to reproduce the error?

Looks like its related to help2man. The native versions were being
generated so help2man could generate the man pages correctly. We should
just patch out the generation (or regeneration?) of the man pages...

Cheers,

Richard

Patch

diff --git a/meta/recipes-core/coreutils/coreutils_6.9.bb b/meta/recipes-core/coreutils/coreutils_6.9.bb
index 37d8dc9..c0778ba 100644
--- a/meta/recipes-core/coreutils/coreutils_6.9.bb
+++ b/meta/recipes-core/coreutils/coreutils_6.9.bb
@@ -8,8 +8,7 @@  BUGTRACKER = "http://debbugs.gnu.org/coreutils"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
                     file://src/ls.c;beginline=4;endline=16;md5=15ed60f67b1db5fedd5dbc37cf8a9543"
-PR = "r4"
-DEPENDS = "coreutils-native-${PV}"
+PR = "r5"
 DEPENDS_class-native = "gettext-native"
 
 inherit autotools gettext