Skip to contentSkip to conversation

xorg-lib: don't build libs unless requested by DISTRO_FEATURES

PATCH/RFC In review Andreas Oberritter 5 participants 9 messages Feb 10, 2012 – Feb 26, 2012

lore
Share & tools
lore
#0 lore raw

* If 'x11' is not set in DISTRO_FEATURES, then skip all recipes using xorg-lib-common.inc instead of only those using libx11.inc.

* One exception: pixman, which is not only used by xorg, but also by cairo.

---
 meta/recipes-graphics/xorg-lib/libx11.inc          |    5 -----
 meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    6 ++++++
 2 files changed, 6 insertions(+), 5 deletions(-)
meta/recipes-graphics/xorg-lib/libx11.inc +0 -5
index 748a48c..9057edc 100644
@@ -49,8 +49,3 @@ do_compile_prepend() {
 # Multiple libx11 derivatives from from this file and are selected by virtual/libx11
 # A world build should only build the correct version, not all of them.
 EXCLUDE_FROM_WORLD = "1"
-
-python () {
-       if not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
-       	  raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
-}
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +6 -0
index d106054..3d5d378 100644
@@ -14,3 +14,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"
 inherit autotools pkgconfig
 
 EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no --without-xmlto"
+
+python () {
+        whitelist = [ "pixman" ]
+        if not d.getVar('BPN', True) in whitelist and not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
+                raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
+}
Signature · 1 line
1.7.5.4
#1 lore raw

Op 10 feb. 2012, om 02:27 heeft Andreas Oberritter het volgende geschreven:

Quoted 34 lines

* If 'x11' is not set in DISTRO_FEATURES, then skip all recipes using xorg-lib-common.inc instead of only those using libx11.inc.

* One exception: pixman, which is not only used by xorg, but also by cairo.

---

meta/recipes-graphics/xorg-lib/libx11.inc          |    5 -----
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    6 ++++++
2 files changed, 6 insertions(+), 5 deletions(-)
meta/recipes-graphics/xorg-lib/libx11.inc +0 -0
index 748a48c..9057edc 100644
@@ -49,8 +49,3 @@ do_compile_prepend() {
 # Multiple libx11 derivatives from from this file and are selected by virtual/libx11
 # A world build should only build the correct version, not all of them.

EXCLUDE_FROM_WORLD = "1"

meta/recipes-graphics/xorg-lib/libx11.inc +0 -5
-
-python () {
-       if not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
-       	  raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
-}
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +0 -0
index d106054..3d5d378 100644
@@ -14,3 +14,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"

inherit autotools pkgconfig

EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no --without-xmlto"

meta/recipes-graphics/xorg-lib/xorg-lib-common.inc S = "${WORKDIR}/${XORG_PN}-${PV}" · line 21

Quoted 5 lines
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +5 -0
+
+python () {
+        whitelist = [ "pixman" ]
+        if not d.getVar('BPN', True) in whitelist and not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
+                raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")

I know you're just moving the error message around, but I would suggest changing it to "'x11' not in DISTRO_FEATURES".

regards,

Koen

#2 lore raw
Quoted 2 lines · On Friday 10 February 2012 09:38:59 Koen Kooi wrote:

I know you're just moving the error message around, but I would suggest changing it to "'x11' not in DISTRO_FEATURES".

You have to be careful with this, as it will pick up partial words e.g. assuming we had an "x11test" DISTRO_FEATURE then this would also be picked up by this statement; whereas oe.utils.contains() does a split to make it a list first and therefore does not have this issue. I'd suggest leaving it as-is, or if you really want to change it, do a split on the string first.

Cheers,
Paul

Signature · 2 lines
Paul Eggleton
Intel Open Source Technology Centre
#3 lore raw

PATCH v2 1/1 xorg-lib: don't build libs unless requested by DISTRO_FEATURES

Quoted 9 lines · Paul Eggleton
Quoted 2 lines · On Friday 10 February 2012 09:38:59 Koen Kooi wrote:

I know you're just moving the error message around, but I would suggest changing it to "'x11' not in DISTRO_FEATURES".

You have to be careful with this, as it will pick up partial words e.g. assuming we had an "x11test" DISTRO_FEATURE then this would also be picked up by this statement; whereas oe.utils.contains() does a split to make it a list first and therefore does not have this issue. I'd suggest leaving it as-is, or if you really want to change it, do a split on the string first.

I think Koen was referring to the error string, see below.

Regards,
Andreas

From 7d9633e0b1ccf85ec72f32d7d39952b467fa5cae Mon Sep 17 00:00:00 2001
From: Andreas Oberritter <[email protected]>
Date: Fri, 10 Feb 2012 02:10:15 +0100
Subject: [PATCH] xorg-lib: don't build libs unless requested by
DISTRO_FEATURES

* If 'x11' is not set in DISTRO_FEATURES, then skip all recipes using xorg-lib-common.inc instead of only those using libx11.inc.

* One exception: pixman, which is not only used by xorg, but also by cairo.

* Improve error message as suggested by Koen.

---
 meta/recipes-graphics/xorg-lib/libx11.inc          |    5 -----
 meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    6 ++++++
 2 files changed, 6 insertions(+), 5 deletions(-)
meta/recipes-graphics/xorg-lib/libx11.inc +0 -5
index 748a48c..9057edc 100644
@@ -49,8 +49,3 @@ do_compile_prepend() {
 # Multiple libx11 derivatives from from this file and are selected by virtual/libx11
 # A world build should only build the correct version, not all of them.
 EXCLUDE_FROM_WORLD = "1"
-
-python () {
-       if not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
-       	  raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
-}
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +6 -0
index d106054..73a4d1d 100644
@@ -14,3 +14,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"
 inherit autotools pkgconfig
 
 EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no --without-xmlto"
+
+python () {
+        whitelist = [ "pixman" ]
+        if not d.getVar('BPN', True) in whitelist and not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
+                raise bb.parse.SkipPackage("'x11' not in DISTRO_FEATURES")
+}
Signature · 1 line
1.7.5.4
#4 lore raw

Op 10 feb. 2012, om 13:26 heeft Andreas Oberritter het volgende geschreven:

Quoted 5 lines · Paul Eggleton
Quoted 4 lines · On Friday 10 February 2012 09:38:59 Koen Kooi wrote:
Quoted 2 lines

I know you're just moving the error message around, but I would suggest changing it to "'x11' not in DISTRO_FEATURES".

Quoted 7 lines
Quoted 5 lines

You have to be careful with this, as it will pick up partial words e.g. assuming we had an "x11test" DISTRO_FEATURE then this would also be picked up by this statement; whereas oe.utils.contains() does a split to make it a list first and therefore does not have this issue. I'd suggest leaving it as-is, or if you really want to change it, do a split on the string first.

I think Koen was referring to the error string, see below.

Indeed I was!

Quoted 61 lines

Regards,
Andreas

From 7d9633e0b1ccf85ec72f32d7d39952b467fa5cae Mon Sep 17 00:00:00 2001
From: Andreas Oberritter <[email protected]>
Date: Fri, 10 Feb 2012 02:10:15 +0100
Subject: [PATCH] xorg-lib: don't build libs unless requested by DISTRO_FEATURES

* If 'x11' is not set in DISTRO_FEATURES, then skip all recipes using xorg-lib-common.inc instead of only those using libx11.inc.

* One exception: pixman, which is not only used by xorg, but also by cairo.

* Improve error message as suggested by Koen.

---

meta/recipes-graphics/xorg-lib/libx11.inc          |    5 -----
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    6 ++++++
2 files changed, 6 insertions(+), 5 deletions(-)
meta/recipes-graphics/xorg-lib/libx11.inc +0 -0
index 748a48c..9057edc 100644
@@ -49,8 +49,3 @@ do_compile_prepend() {
 # Multiple libx11 derivatives from from this file and are selected by virtual/libx11
 # A world build should only build the correct version, not all of them.

EXCLUDE_FROM_WORLD = "1"

meta/recipes-graphics/xorg-lib/libx11.inc +0 -5
-
-python () {
-       if not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
-       	  raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
-}
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +0 -0
index d106054..73a4d1d 100644
@@ -14,3 +14,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"

inherit autotools pkgconfig

EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no --without-xmlto"

meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +6 -0
+
+python () {
+        whitelist = [ "pixman" ]
+        if not d.getVar('BPN', True) in whitelist and not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
+                raise bb.parse.SkipPackage("'x11' not in DISTRO_FEATURES")
+}
Signature · 8 lines
1.7.5.4



_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
#5 lore raw
In reply to Andreas Oberritter
Quoted 1 line · On Friday 10 February 2012 13:26:18 Andreas Oberritter wrote:

I think Koen was referring to the error string, see below.

Ah I see, please disregard my comments then :)

Cheers,
Paul

Signature · 2 lines
Paul Eggleton
Intel Open Source Technology Centre
Applied
#6 lore raw
In reply to Andreas Oberritter
Quoted 31 lines · Andreas Oberritter

* If 'x11' is not set in DISTRO_FEATURES, then skip all recipes using xorg-lib-common.inc instead of only those using libx11.inc.

* One exception: pixman, which is not only used by xorg, but also by cairo.

---
  meta/recipes-graphics/xorg-lib/libx11.inc          |    5 -----
  meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    6 ++++++
  2 files changed, 6 insertions(+), 5 deletions(-)
meta/recipes-graphics/xorg-lib/libx11.inc +0 -5
index 748a48c..9057edc 100644
@@ -49,8 +49,3 @@ do_compile_prepend() {
  # Multiple libx11 derivatives from from this file and are selected by virtual/libx11
  # A world build should only build the correct version, not all of them.
  EXCLUDE_FROM_WORLD = "1"
-
-python () {
-       if not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
-       	  raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
-}
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +0 -0
index d106054..3d5d378 100644

meta/recipes-graphics/xorg-lib/xorg-lib-common.inc S = "${WORKDIR}/${XORG_PN}-${PV}" · line 22

Quoted 9 lines
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +6 -0
@@ -14,3 +14,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"
  inherit autotools pkgconfig
 
  EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no --without-xmlto"
+
+python () {
+        whitelist = [ "pixman" ]
+        if not d.getVar('BPN', True) in whitelist and not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
+                raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
+}

Merged into OE-core

Thanks
Sau!

#7 lore raw
Quoted 52 lines · Saul Wold
Quoted 44 lines · Andreas Oberritter

* If 'x11' is not set in DISTRO_FEATURES, then skip all recipes using xorg-lib-common.inc instead of only those using libx11.inc.

* One exception: pixman, which is not only used by xorg, but also by cairo.

---
  meta/recipes-graphics/xorg-lib/libx11.inc          |    5 -----
  meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    6 ++++++
  2 files changed, 6 insertions(+), 5 deletions(-)
meta/recipes-graphics/xorg-lib/libx11.inc +0 -0
index 748a48c..9057edc 100644
@@ -49,8 +49,3 @@ do_compile_prepend() {
  # Multiple libx11 derivatives from from this file and are selected

by virtual/libx11
# A world build should only build the correct version, not all of them. EXCLUDE_FROM_WORLD = "1"

meta/recipes-graphics/xorg-lib/libx11.inc +0 -3
-
-python () {
-       if not oe.utils.contains ('DISTRO_FEATURES', 'x11', True,

False, d):
- raise bb.parse.SkipPackage("X11 not enabled for this
DISTRO")

meta/recipes-graphics/xorg-lib/libx11.inc +0 -1
-}
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +4 -1
index d106054..3d5d378 100644
@@ -14,3 +14,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}"
  inherit autotools pkgconfig
 
  EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no
--without-xmlto"
+
+python () {
+        whitelist = [ "pixman" ]
+        if not d.getVar('BPN', True) in whitelist and not
Quoted 4 lines

oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
+ raise bb.parse.SkipPackage("X11 not enabled for this
DISTRO")
+}

Merged into OE-core

Quoted 2 lines

Thanks
Sau!

Thanks! You've missed v2, though. See below for an incremental patch.

Regards,
Andreas

From ec3b779fdca465afade0f56140ab85ac4bfc9e61 Mon Sep 17 00:00:00 2001
From: Andreas Oberritter <[email protected]>
Date: Fri, 10 Feb 2012 02:10:15 +0100
Subject: [PATCH] xorg-lib: don't build libs unless requested by
DISTRO_FEATURES (fix up)

* Improve error message as suggested by Koen. (This got lost when v1 was committed instead of v2)

---
 meta/recipes-graphics/xorg-lib/xorg-lib-common.inc |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +1 -1
index 3d5d378..73a4d1d 100644
@@ -18,5 +18,5 @@ EXTRA_OECONF = "--enable-malloc0returnsnull --with-fop=no --without-xmlto"
 python () {
         whitelist = [ "pixman" ]
         if not d.getVar('BPN', True) in whitelist and not oe.utils.contains ('DISTRO_FEATURES', 'x11', True, False, d):
-                raise bb.parse.SkipPackage("X11 not enabled for this DISTRO")
+                raise bb.parse.SkipPackage("'x11' not in DISTRO_FEATURES")
 }
Signature · 1 line
1.7.5.4
#8 lore raw
Quoted 6 lines · Andreas Oberritter
Quoted 4 lines

Merged into OE-core

Thanks
Sau!

Thanks! You've missed v2, though. See below for an incremental patch.

I've merged the fixup, thanks.

Richard