All of lore.kernel.org
 help / color / mirror / Atom feed
From: richard.purdie@linuxfoundation.org
Subject: Re: [PATCH] perl: fix re-execution of task
Date: Fri, 13 Apr 2012 16:29:36 +0100	[thread overview]
Message-ID: <1334330976.7309.77.camel@ted> (raw)

> ---
 a/meta/recipes-devtools/perl/perl_5.14.2.bb
> +++
 b/meta/recipes-devtools/perl/perl_5.14.2.bb
> @@ -164,8 +164,12 @@
 do_configure() {
>  	esac
>          # These are strewn all over the source
 tree
>          for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/*
 -r | cut -f 1 -d ":"` ; do
> -            echo Fixing: $foo
> -           
 sed -e "s%/usr/include/%${STAGING_INCDIR}/%g" -i $foo
> +		# D2194:Fixing
 the issue "patch file link is replaced with modified file"
> +		# Ignore if
 file is a link, as actual file will also get caught during grep 
> +		if [
 ! -h $foo ]; then
> +			echo Fixing: $foo
> +			sed -e
 "s%/usr/include/%${STAGING_INCDIR}/%g" -i $foo
> +	    	fi
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Venkata ramana gollamudi <ramana.gollamudi@huawei.com>
Cc: "'openembedded-core@lists.openembedded.org'"
 <openembedded-core@lists.openembedded.org>, Sanil kumar
 <sanil.kumar@huawei.com>
Date: Fri, 13 Apr 2012 16:29:36 +0100
In-Reply-To: <36ED13F3654AE54CA763E6821D93A5711043A0F7@szxeml534-mbs.china.huawei.com>
References: 
	<36ED13F3654AE54CA763E6821D93A5711043A0F7@szxeml534-mbs.china.huawei.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.2.2- 
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0

On Fri, 2012-04-13 at 11:46 +0000, Venkata ramana gollamudi wrote:
> perl package do_configure is changing "/perl-5.14.2/patches/h2ph-multiarch.diff"
>  from link to normal file in the process of correcting the paths.
> So when patch task is re-executed after complete package building, giving error.
> 
> This path correction is not required for links as the link target file
>  will be also be modified individually.
> Fix done to ignore the path correction during do_configure,
>  if file is a link.
> 
> [Yocto #2194]
> 
> Signed-off-by: Venkata Ramana Gollamudi <ramana.gollamudi@huawei.com>
> ---
>  meta/recipes-devtools/perl/perl_5.14.2.bb |    8 ++++++--
>  1 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-devtools/perl/perl_5.14.2.bb b/meta/recipes-devtools/perl/perl_5.14.2.bb
> index 92ca9b8..414aa22 100644
> --- a/meta/recipes-devtools/perl/perl_5.14.2.bb
> +++ b/meta/recipes-devtools/perl/perl_5.14.2.bb
> @@ -164,8 +164,12 @@ do_configure() {
>  	esac
>          # These are strewn all over the source tree
>          for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":"` ; do
> -            echo Fixing: $foo
> -            sed -e "s%/usr/include/%${STAGING_INCDIR}/%g" -i $foo
> +		# D2194:Fixing the issue "patch file link is replaced with modified file"
> +		# Ignore if file is a link, as actual file will also get caught during grep 
> +		if [ ! -h $foo ]; then
> +			echo Fixing: $foo
> +			sed -e "s%/usr/include/%${STAGING_INCDIR}/%g" -i $foo
> +	    	fi
>          done
>  
>          rm -f config

I think its a bad idea to assume patches are symlinks. Could we add
something like --exclude=patches to the grep command?

Secondly, the above will still cause problems if ${STAGING_INCDIR}
contains /usr/include which it usually will, for example if:

STAGING_INCDIR=/foo/usr/include

then you can end up with:

/foo/foo/foo/foo/usr/include

after a few runs. This fix therefore still needs some work.

Cheers,

Richard








             reply	other threads:[~2012-04-13 15:39 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-13 15:29 richard.purdie [this message]
  -- strict thread matches above, loose matches on Subject: below --
2012-04-13 11:46 [PATCH] perl: fix re-execution of task Venkata ramana gollamudi
2012-04-13 18:02 ` Khem Raj

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=1334330976.7309.77.camel@ted \
    --to=richard.purdie@linuxfoundation.org \
    --cc=openembedded-core@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 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.