Patchwork [meta-oe] giflib: don't depend on libsm if x11 is unavailable

login
register
mail settings
Submitter Andreas Oberritter
Date Feb. 2, 2012, 2:03 p.m.
Message ID <4F2A97B7.2080709@opendreambox.org>
Download mbox | patch
Permalink /patch/20561/
State New, archived
Headers show

Comments

Andreas Oberritter - Feb. 2, 2012, 2:03 p.m.
If DISTRO_FEATURES doesn't contain x11, libsm is not available.
As libsm is optional, the dependency is changed to be conditional.
There's no need to alter configure flags, because without x11,
libsm cannot be picked up accidentially. Because this just fixes
a missing dependency failure without x11, no PR bump is required
either.

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
---
 meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Andreas Oberritter - Feb. 8, 2012, 6:11 p.m.
Ping.

Patchwork URL: http://patches.openembedded.org/patch/20561/

On 02.02.2012 15:03, Andreas Oberritter wrote:
> If DISTRO_FEATURES doesn't contain x11, libsm is not available.
> As libsm is optional, the dependency is changed to be conditional.
> There's no need to alter configure flags, because without x11,
> libsm cannot be picked up accidentially. Because this just fixes
> a missing dependency failure without x11, no PR bump is required
> either.
> 
> Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
> ---
>  meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb b/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb
> index bd7b495..4e782e2 100644
> --- a/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb
> +++ b/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb
> @@ -8,7 +8,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/giflib/${BP}.tar.bz2"
>  
>  inherit autotools
>  
> -DEPENDS = "libsm"
> +DEPENDS = "${@base_contains('DISTRO_FEATURES', 'x11', 'libsm', '', d)}"
>  
>  PACKAGES += "${PN}-utils"
>  FILES_${PN} = "${libdir}/libgif.so.*"
Otavio Salvador - Feb. 8, 2012, 6:41 p.m.
On Thu, Feb 2, 2012 at 12:03, Andreas Oberritter <obi@opendreambox.org>wrote:

> There's no need to alter configure flags, because without x11,
> libsm cannot be picked up accidentially. Because this just fixes
> a missing dependency failure without x11, no PR bump is required
> either.
>

I do prefer a clear configure option depending on if it is going to use or
not libsm otherwise if user has built it, it is going to be taken. Also,
please PR bump in any case since it can help spot other possible failures
that we'd not catch otherwise.
Andreas Oberritter - Feb. 8, 2012, 7:35 p.m.
On 08.02.2012 19:41, Otavio Salvador wrote:
> On Thu, Feb 2, 2012 at 12:03, Andreas Oberritter <obi@opendreambox.org>wrote:
> 
>> There's no need to alter configure flags, because without x11,
>> libsm cannot be picked up accidentially. Because this just fixes
>> a missing dependency failure without x11, no PR bump is required
>> either.
>>
> 
> I do prefer a clear configure option depending on if it is going to use or
> not libsm otherwise if user has built it, it is going to be taken.

Currently, there are two possibilities:

1.) x11 is in DISTRO_FEATURES
    -> libsm is built, giflib is built with libsm
2.) x11 is not in DISTRO_FEATURES
    -> giflib build is broken, because libsm does not exist in this
configuration

Therefore, the scenario you're describing cannot happen.

> Also,
> please PR bump in any case since it can help spot other possible failures
> that we'd not catch otherwise.

I already explained in the commit message, why a PR bump is not needed.
Can you please explain which other possible failures you're expecting,
so I can learn why my reasoning may be wrong?

This patch only fixes an unavailable build dependency at bitbake level,
nothing more.

Regards,
Andreas
Otavio Salvador - Feb. 8, 2012, 7:48 p.m.
On Wed, Feb 8, 2012 at 17:35, Andreas Oberritter <obi@opendreambox.org>wrote:

> I already explained in the commit message, why a PR bump is not needed.
> Can you please explain which other possible failures you're expecting,
> so I can learn why my reasoning may be wrong?
>
> This patch only fixes an unavailable build dependency at bitbake level,
> nothing more.
>

Can the user call:

bitbake libsm

and then build giflib? in case of positive, we need to enforce have or not
it linked.
Andreas Oberritter - Feb. 9, 2012, 12:54 a.m.
On 08.02.2012 20:48, Otavio Salvador wrote:
> On Wed, Feb 8, 2012 at 17:35, Andreas Oberritter <obi@opendreambox.org>wrote:
> 
>> I already explained in the commit message, why a PR bump is not needed.
>> Can you please explain which other possible failures you're expecting,
>> so I can learn why my reasoning may be wrong?
>>
>> This patch only fixes an unavailable build dependency at bitbake level,
>> nothing more.
>>
> 
> Can the user call:
> 
> bitbake libsm
> 
> and then build giflib? in case of positive, we need to enforce have or not
> it linked.

At the time I created the patch, the user couldn't run bitbake libsm
(for the same reason that it wouldn't be built automatically through
giflib's DEPENDS).

That said, I updated the repos after your mail and ran bitbake libsm in
order to get the error message again, but the error vanished.
Apparently, an indirect dependency on libx11 was dropped during the last
few weeks. I searched the logs, but didn't find the change. Strange.
Now, many x11 packages got built even though x11 still wasn't listed in
my DISTRO_FEATURES.

Anyway, please consider this patch obsolete. I'll probably resend an
updated version together with other patches to disable some more x11
libraries on demand.

Regards,
Andreas

Patch

diff --git a/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb b/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb
index bd7b495..4e782e2 100644
--- a/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb
+++ b/meta-oe/recipes-devtools/giflib/giflib_4.1.6.bb
@@ -8,7 +8,7 @@  SRC_URI = "${SOURCEFORGE_MIRROR}/giflib/${BP}.tar.bz2"
 
 inherit autotools
 
-DEPENDS = "libsm"
+DEPENDS = "${@base_contains('DISTRO_FEATURES', 'x11', 'libsm', '', d)}"
 
 PACKAGES += "${PN}-utils"
 FILES_${PN} = "${libdir}/libgif.so.*"