Patchwork [PATCHv2,2/3] distcc_2.18.3.bb: Fix compilation on uclibc

login
register
mail settings
Submitter Khem Raj
Date May 20, 2011, 12:02 a.m.
Message ID <d95f77d22bbe7bf5718516f667b3e1433757c861.1305849572.git.raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/4517/
State New, archived
Headers show

Comments

Khem Raj - May 20, 2011, 12:02 a.m.
We enable gtk/gnome in distcc that code uses loadavg()
a function unimplemented in uclibc. Therefore for uclibc
we disable gnome and gtk+ features in distcc

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/distcc/distcc_2.18.3.bb |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)
Phil Blundell - May 20, 2011, 7:03 a.m.
On Thu, 2011-05-19 at 17:02 -0700, Khem Raj wrote:
> -DEPENDS = "avahi gtk+"
> +DEPENDS = "avahi"
> +DEPENDS_append-libc-glibc = " gtk+ "

If uclibc is alone in not having this function then it would be better
as:

gtkdepends = "gtk+"
gtkdepends_libc-uclibc = ""
DEPENDS = "avahi ${gtkdepends}"

or some such.

p.
Richard Purdie - May 20, 2011, 11:50 a.m.
On Thu, 2011-05-19 at 17:02 -0700, Khem Raj wrote:
> We enable gtk/gnome in distcc that code uses loadavg()
> a function unimplemented in uclibc. Therefore for uclibc
> we disable gnome and gtk+ features in distcc
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-devtools/distcc/distcc_2.18.3.bb |   15 ++++++++++-----
>  1 files changed, 10 insertions(+), 5 deletions(-)

As Phil mentions, uclibc should probably be the exception here, not
glibc. I've therefore not taken it yet to see if we can come up with
anything better...

Cheers,

Richard

> diff --git a/meta/recipes-devtools/distcc/distcc_2.18.3.bb b/meta/recipes-devtools/distcc/distcc_2.18.3.bb
> index 1f5c2af..e73ce16 100644
> --- a/meta/recipes-devtools/distcc/distcc_2.18.3.bb
> +++ b/meta/recipes-devtools/distcc/distcc_2.18.3.bb
> @@ -6,7 +6,8 @@ LICENSE = "GPLv2"
>  LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
>  PR = "r6"
>  
> -DEPENDS = "avahi gtk+"
> +DEPENDS = "avahi"
> +DEPENDS_append-libc-glibc = " gtk+ "
>  RRECOMMENDS_${PN} = "avahi-daemon"
>  
>  # Upstream change this patch periodically so store locally
> @@ -24,17 +25,21 @@ inherit autotools pkgconfig update-rc.d
>  
>  INITSCRIPT_NAME = "distcc"
>  
> -EXTRA_OECONF = " --with-gtk "
> -
> +EXTRA_OECONF_libc-glibc = " --with-gtk "
> +EXTRA_OECONF_libc-uclibc = " --without-gtk --without-gnome "
>  do_install_append() {
>      install -d ${D}${sysconfdir}/init.d/
>      install -d ${D}${sysconfdir}/default
>      install -m 0755 ${WORKDIR}/distcc ${D}${sysconfdir}/init.d/
>      install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/distcc
> +    ${DESKTOPINSTALL}
> +}
> +DESKTOPINSTALL = ""
> +DESKTOPINSTALL_libc-glibc () {
> +    install -d ${D}${datadir}/distcc/
>      install -m 0644 ${WORKDIR}/distccmon-gnome.desktop ${D}${datadir}/distcc/
>  }
> -
> -PACKAGES += "distcc-distmon-gnome"
> +PACKAGES_append_libc-glibc = " distcc-distmon-gnome"
>  
>  FILES_${PN} = " ${sysconfdir} \
>  		${bindir}/distcc \

Patch

diff --git a/meta/recipes-devtools/distcc/distcc_2.18.3.bb b/meta/recipes-devtools/distcc/distcc_2.18.3.bb
index 1f5c2af..e73ce16 100644
--- a/meta/recipes-devtools/distcc/distcc_2.18.3.bb
+++ b/meta/recipes-devtools/distcc/distcc_2.18.3.bb
@@ -6,7 +6,8 @@  LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 PR = "r6"
 
-DEPENDS = "avahi gtk+"
+DEPENDS = "avahi"
+DEPENDS_append-libc-glibc = " gtk+ "
 RRECOMMENDS_${PN} = "avahi-daemon"
 
 # Upstream change this patch periodically so store locally
@@ -24,17 +25,21 @@  inherit autotools pkgconfig update-rc.d
 
 INITSCRIPT_NAME = "distcc"
 
-EXTRA_OECONF = " --with-gtk "
-
+EXTRA_OECONF_libc-glibc = " --with-gtk "
+EXTRA_OECONF_libc-uclibc = " --without-gtk --without-gnome "
 do_install_append() {
     install -d ${D}${sysconfdir}/init.d/
     install -d ${D}${sysconfdir}/default
     install -m 0755 ${WORKDIR}/distcc ${D}${sysconfdir}/init.d/
     install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/distcc
+    ${DESKTOPINSTALL}
+}
+DESKTOPINSTALL = ""
+DESKTOPINSTALL_libc-glibc () {
+    install -d ${D}${datadir}/distcc/
     install -m 0644 ${WORKDIR}/distccmon-gnome.desktop ${D}${datadir}/distcc/
 }
-
-PACKAGES += "distcc-distmon-gnome"
+PACKAGES_append_libc-glibc = " distcc-distmon-gnome"
 
 FILES_${PN} = " ${sysconfdir} \
 		${bindir}/distcc \