Gentoo Logo
Gentoo Spaceship




Note: Due to technical difficulties, the Archives are currently not up to date. GMANE provides an alternative service for most mailing lists.
c.f. bug 424647
List Archive: gentoo-desktop
Navigation:
Lists: gentoo-desktop: < Prev By Thread Next > < Prev By Date Next >
Headers:
To: gentoo-desktop@g.o
From: Martin von Gagern <Martin.vGagern@...>
Subject: Re: kde-sunset: Calling base_src_prepare from kde.eclass
Date: Sat, 20 Feb 2010 11:02:03 +0100
Hi there!

On 19.02.2010 22:23, Ladislav Laska wrote:
> Hello again,
> 
> I have decided to continue discussion in new thread. This discussion
> was started in thread "kde-sunset: kdepim-kresources broken".
> 
> I have replaced my code with what I originally intended (the code in
> git is wrong, since I made a mistake editing it - here is what I
> intended):
> 
>         # Check for PATCHES in EAPI=0|1
>         case ${EAPI:-0} in
>             0|1)
>                 if [[ -n ${PATCHES} ]] && [[ -d "${KDE_S}" ]]; then
>                     base_src_prepare
>                 fi
>             ;;
>         esac
> 
> Look, for example, at kde-base/ark ebuild. There is a patch, but it's
> not applied correctly without my code.

media-gfx/gwenview-1.4.2-r3, on the other hand, would try applying
patches twice /with/ your code.

> What I'm worried about is the check  [[ -d "${KDE_S}" ]] makes sure,
> that this code is called if
> 
> [[ -d "${KDE_S}" ]] || base_src_unpack unpack
> 
> did not called base-src_unpack and therefore did not applied patches.
> 
> There are two problems with EAPI=0|1
> 
> 1) It depends on file naming and will not work if base_src_unpack
> unpacks into $KDE_S

You mean kde-meta_src_unpack does unpack into $KDE_S, right?

I just had a look. For kde-base/ark, kde-meta_src_unpack does unpack
part of the tarball, therefore kde_src_unpack won't call
base_src_unpack, therefore base_src_prepare won't get called either.

> 2) Even if base_src_unpack calls base_src_prepare, we're adding
> patches automatically after this call, but they will not be applied.

You're right, there is code collecting additional patches from $PATCHDIR
into the $PATCHES array. So we need to call base_src_prepare /after/
that, while the current base_src_unpack call comes before that, and
unpacking has to come before that as $PATCHDIR is unpacked as well.

As base_src_unpack calls base_src_prepare unconditionally for recent
incarnations of base.eclass, I feel we cannot call base_src_unpack at
all. Instead we should simply call "unpack ${A}" directly, and
base_src_prepare later on.

I feel that this code collecting and applying $PATCHES would be better
suited to a kde_src_prepare than kde_src_unpack, but I'm not sure it's
worth refactoring kde.eclass.

> Since I can't think of correct check, please let me know if you have
> an idea. Also, let me know if I'm wrong about something and it's not
> needed at all. (but I doubt that, because ark, as mentioned above, is
> counterexample)

No, you are correct in diagnosing the problem. I just had another stab
at a solution. Have a look at 5979aefafa6e200a09d5dd7b3a6e99b3e0a9d74e
and see if you find any package where that approach doesn't work.

Greetings,
 Martin

Attachment:
signature.asc (OpenPGP digital signature)
Replies:
Re: kde-sunset: Calling base_src_prepare from kde.eclass
-- Ladislav Laska
References:
kde-sunset: Calling base_src_prepare from kde.eclass
-- Ladislav Laska
Navigation:
Lists: gentoo-desktop: < Prev By Thread Next > < Prev By Date Next >
Previous by thread:
kde-sunset: Calling base_src_prepare from kde.eclass
Next by thread:
Re: kde-sunset: Calling base_src_prepare from kde.eclass
Previous by date:
Re: kde-sunset: kdepim-kresources broken
Next by date:
Re: Gentoo KDE meeting


Updated Jun 28, 2012

Summary: Archive of the gentoo-desktop mailing list.

Donate to support our development efforts.

Copyright 2001-2013 Gentoo Foundation, Inc. Questions, Comments? Contact us.