* [PATCH 0/1] Split task-core to reduce build time
@ 2011-09-14 16:43 Paul Eggleton
2011-09-14 16:43 ` [PATCH 1/1] task-core: split into task-core-console and task-core-x11 Paul Eggleton
2011-09-14 18:00 ` [PATCH 0/1] Split task-core to reduce build time Paul Eggleton
0 siblings, 2 replies; 5+ messages in thread
From: Paul Eggleton @ 2011-09-14 16:43 UTC (permalink / raw)
To: openembedded-core
This patch makes a significant reduction in the build time for
console-only images that use task-core-apps-console (from ~4000 down to
~2700 in my tests) by avoiding building X11 applications unnecessarily.
The following changes since commit 8df322abfd3fa8c460fd73c83c1ef0b5e419dc11:
core-image-minimal: Add missing POKY_EXTRA_IMAGE variable (2011-09-14 01:27:08 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib paule/task-core-split
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/task-core-split
Paul Eggleton (1):
task-core: split into task-core-console and task-core-x11
.../conf/distro/include/distro_tracking_fields.inc | 10 +++++--
meta/conf/multilib.conf | 3 +-
meta/recipes-core/tasks/task-core-console.bb | 28 ++++++++++++++++++++
.../tasks/{task-core.bb => task-core-x11.bb} | 15 +---------
4 files changed, 39 insertions(+), 17 deletions(-)
create mode 100644 meta/recipes-core/tasks/task-core-console.bb
rename meta/recipes-sato/tasks/{task-core.bb => task-core-x11.bb} (82%)
--
1.7.4.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1] task-core: split into task-core-console and task-core-x11
2011-09-14 16:43 [PATCH 0/1] Split task-core to reduce build time Paul Eggleton
@ 2011-09-14 16:43 ` Paul Eggleton
2011-09-14 18:00 ` [PATCH 0/1] Split task-core to reduce build time Paul Eggleton
1 sibling, 0 replies; 5+ messages in thread
From: Paul Eggleton @ 2011-09-14 16:43 UTC (permalink / raw)
To: openembedded-core
Since tasks are referred to almost exclusively via RDEPENDS, and bitbake
will build an entire task recipe when only one of its task packages are
actually needed, building a console-only image that uses
task-core-apps-console (or less directly, has apps-console in its
IMAGE_FEATURES) will cause a build of a whole list of X11 applications
that aren't needed. Splitting the task-core recipe into X11 and console
portions prevents this issue.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
.../conf/distro/include/distro_tracking_fields.inc | 10 +++++--
meta/conf/multilib.conf | 3 +-
meta/recipes-core/tasks/task-core-console.bb | 28 ++++++++++++++++++++
.../tasks/{task-core.bb => task-core-x11.bb} | 15 +---------
4 files changed, 39 insertions(+), 17 deletions(-)
create mode 100644 meta/recipes-core/tasks/task-core-console.bb
rename meta/recipes-sato/tasks/{task-core.bb => task-core-x11.bb} (82%)
diff --git a/meta/conf/distro/include/distro_tracking_fields.inc b/meta/conf/distro/include/distro_tracking_fields.inc
index 6f1a462..1a1e110 100644
--- a/meta/conf/distro/include/distro_tracking_fields.inc
+++ b/meta/conf/distro/include/distro_tracking_fields.inc
@@ -2459,9 +2459,13 @@ RECIPE_LATEST_VERSION_pn-core-image-sato-sdk = "1.0"
RECIPE_MAINTAINER_pn-core-image-sato-sdk = "Dongxiao Xu <dongxiao.xu@intel.com>"
DISTRO_PN_ALIAS_pn-core-image-sdk = "OE-Core"
-RECIPE_STATUS_pn-task-core = "green"
-RECIPE_LATEST_VERSION_pn-task-core = "1.0"
-RECIPE_MAINTAINER_pn-task-core = "Dongxiao Xu <dongxiao.xu@intel.com>"
+RECIPE_STATUS_pn-task-core-console = "green"
+RECIPE_LATEST_VERSION_pn-task-core-console = "1.0"
+RECIPE_MAINTAINER_pn-task-core-console = "Dongxiao Xu <dongxiao.xu@intel.com>"
+
+RECIPE_STATUS_pn-task-core-x11 = "green"
+RECIPE_LATEST_VERSION_pn-task-core-x11 = "1.0"
+RECIPE_MAINTAINER_pn-task-core-x11 = "Dongxiao Xu <dongxiao.xu@intel.com>"
RECIPE_STATUS_pn-task-core-basic = "green"
RECIPE_LATEST_VERSION_pn-task-core-basic = "1.0"
diff --git a/meta/conf/multilib.conf b/meta/conf/multilib.conf
index 16db375..3133bf1 100644
--- a/meta/conf/multilib.conf
+++ b/meta/conf/multilib.conf
@@ -368,12 +368,13 @@ BBCLASSEXTEND_append_pn-task-base = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-apps-x11-pimlico = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-basic = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-boot = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-console = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-lsb = " ${MULTILIBS}"
-BBCLASSEXTEND_append_pn-task-core = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-nfs = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-ssh-dropbear = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-ssh-openssh = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-tools = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-x11 = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-x11-sato = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-tasks = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-tcf-agent = " ${MULTILIBS}"
diff --git a/meta/recipes-core/tasks/task-core-console.bb b/meta/recipes-core/tasks/task-core-console.bb
new file mode 100644
index 0000000..3c839c9
--- /dev/null
+++ b/meta/recipes-core/tasks/task-core-console.bb
@@ -0,0 +1,28 @@
+#
+# Copyright (C) 2007-2008 OpenedHand Ltd.
+#
+
+DESCRIPTION = "Tasks for core console applications"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+ file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+PR = "r35"
+
+PACKAGES = "\
+ task-core-apps-console \
+ task-core-apps-console-dbg \
+ task-core-apps-console-dev \
+ "
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+ALLOW_EMPTY = "1"
+
+SPLASH ?= "psplash"
+
+RDEPENDS_task-core-apps-console = "\
+ avahi-daemon \
+ dbus \
+ portmap \
+ ${SPLASH}"
+
diff --git a/meta/recipes-sato/tasks/task-core.bb b/meta/recipes-sato/tasks/task-core-x11.bb
similarity index 82%
rename from meta/recipes-sato/tasks/task-core.bb
rename to meta/recipes-sato/tasks/task-core-x11.bb
index a595ad7..112a499 100644
--- a/meta/recipes-sato/tasks/task-core.bb
+++ b/meta/recipes-sato/tasks/task-core-x11.bb
@@ -2,16 +2,13 @@
# Copyright (C) 2007-2008 OpenedHand Ltd.
#
-DESCRIPTION = "Tasks for OpenedHand Poky"
+DESCRIPTION = "Tasks for core X11 applications"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r34"
+PR = "r35"
PACKAGES = "\
- task-core-apps-console \
- task-core-apps-console-dbg \
- task-core-apps-console-dev \
task-core-apps-x11-core \
task-core-apps-x11-core-dbg \
task-core-apps-x11-core-dev \
@@ -29,18 +26,10 @@ XSERVER ?= "xserver-kdrive-fbdev"
ALLOW_EMPTY = "1"
-SPLASH ?= "psplash"
-
# pcmanfm doesn't work on mips/powerpc
FILEMANAGER ?= "pcmanfm"
FILEMANAGER_mips ?= ""
-RDEPENDS_task-core-apps-console = "\
- avahi-daemon \
- dbus \
- portmap \
- ${SPLASH}"
-
RDEPENDS_task-core-x11-base = "\
dbus \
--
1.7.4.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 0/1] Split task-core to reduce build time
2011-09-14 16:43 [PATCH 0/1] Split task-core to reduce build time Paul Eggleton
2011-09-14 16:43 ` [PATCH 1/1] task-core: split into task-core-console and task-core-x11 Paul Eggleton
@ 2011-09-14 18:00 ` Paul Eggleton
1 sibling, 0 replies; 5+ messages in thread
From: Paul Eggleton @ 2011-09-14 18:00 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
Oops, missed something... ignore this, v2 on its way.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1] task-core: split into task-core-console and task-core-x11
2011-09-14 18:13 [PATCH 0/1] Split task-core to reduce build time v2 Paul Eggleton
@ 2011-09-14 18:13 ` Paul Eggleton
2011-09-14 18:29 ` Joshua Lock
0 siblings, 1 reply; 5+ messages in thread
From: Paul Eggleton @ 2011-09-14 18:13 UTC (permalink / raw)
To: openembedded-core
[YOCTO #1481]
Since tasks are referred to almost exclusively via RDEPENDS, and bitbake
will build an entire task recipe when only one of its task packages are
actually needed, building a console-only image that uses
task-core-apps-console (or less directly, has apps-console in its
IMAGE_FEATURES) will cause a build of a whole list of X11 applications
that aren't needed. Splitting the task-core recipe into X11 and console
portions prevents this issue.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
.../conf/distro/include/distro_tracking_fields.inc | 10 +++++--
meta/conf/multilib.conf | 3 +-
meta/recipes-core/tasks/task-core-console.bb | 28 ++++++++++++++++++++
.../tasks/{task-core.bb => task-core-x11.bb} | 17 ++----------
4 files changed, 40 insertions(+), 18 deletions(-)
create mode 100644 meta/recipes-core/tasks/task-core-console.bb
rename meta/recipes-sato/tasks/{task-core.bb => task-core-x11.bb} (79%)
diff --git a/meta/conf/distro/include/distro_tracking_fields.inc b/meta/conf/distro/include/distro_tracking_fields.inc
index 6f1a462..1a1e110 100644
--- a/meta/conf/distro/include/distro_tracking_fields.inc
+++ b/meta/conf/distro/include/distro_tracking_fields.inc
@@ -2459,9 +2459,13 @@ RECIPE_LATEST_VERSION_pn-core-image-sato-sdk = "1.0"
RECIPE_MAINTAINER_pn-core-image-sato-sdk = "Dongxiao Xu <dongxiao.xu@intel.com>"
DISTRO_PN_ALIAS_pn-core-image-sdk = "OE-Core"
-RECIPE_STATUS_pn-task-core = "green"
-RECIPE_LATEST_VERSION_pn-task-core = "1.0"
-RECIPE_MAINTAINER_pn-task-core = "Dongxiao Xu <dongxiao.xu@intel.com>"
+RECIPE_STATUS_pn-task-core-console = "green"
+RECIPE_LATEST_VERSION_pn-task-core-console = "1.0"
+RECIPE_MAINTAINER_pn-task-core-console = "Dongxiao Xu <dongxiao.xu@intel.com>"
+
+RECIPE_STATUS_pn-task-core-x11 = "green"
+RECIPE_LATEST_VERSION_pn-task-core-x11 = "1.0"
+RECIPE_MAINTAINER_pn-task-core-x11 = "Dongxiao Xu <dongxiao.xu@intel.com>"
RECIPE_STATUS_pn-task-core-basic = "green"
RECIPE_LATEST_VERSION_pn-task-core-basic = "1.0"
diff --git a/meta/conf/multilib.conf b/meta/conf/multilib.conf
index 16db375..3133bf1 100644
--- a/meta/conf/multilib.conf
+++ b/meta/conf/multilib.conf
@@ -368,12 +368,13 @@ BBCLASSEXTEND_append_pn-task-base = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-apps-x11-pimlico = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-basic = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-boot = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-console = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-lsb = " ${MULTILIBS}"
-BBCLASSEXTEND_append_pn-task-core = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-nfs = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-ssh-dropbear = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-ssh-openssh = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-tools = " ${MULTILIBS}"
+BBCLASSEXTEND_append_pn-task-core-x11 = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-task-core-x11-sato = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-tasks = " ${MULTILIBS}"
BBCLASSEXTEND_append_pn-tcf-agent = " ${MULTILIBS}"
diff --git a/meta/recipes-core/tasks/task-core-console.bb b/meta/recipes-core/tasks/task-core-console.bb
new file mode 100644
index 0000000..cb22732
--- /dev/null
+++ b/meta/recipes-core/tasks/task-core-console.bb
@@ -0,0 +1,28 @@
+#
+# Copyright (C) 2011 Intel Corporation
+#
+
+DESCRIPTION = "Tasks for core console applications"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+ file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+PR = "r35"
+
+PACKAGES = "\
+ task-core-apps-console \
+ task-core-apps-console-dbg \
+ task-core-apps-console-dev \
+ "
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+ALLOW_EMPTY = "1"
+
+SPLASH ?= "psplash"
+
+RDEPENDS_task-core-apps-console = "\
+ avahi-daemon \
+ dbus \
+ portmap \
+ ${SPLASH}"
+
diff --git a/meta/recipes-sato/tasks/task-core.bb b/meta/recipes-sato/tasks/task-core-x11.bb
similarity index 79%
rename from meta/recipes-sato/tasks/task-core.bb
rename to meta/recipes-sato/tasks/task-core-x11.bb
index a595ad7..26d550a 100644
--- a/meta/recipes-sato/tasks/task-core.bb
+++ b/meta/recipes-sato/tasks/task-core-x11.bb
@@ -1,17 +1,14 @@
#
-# Copyright (C) 2007-2008 OpenedHand Ltd.
+# Copyright (C) 2011 Intel Corporation
#
-DESCRIPTION = "Tasks for OpenedHand Poky"
+DESCRIPTION = "Tasks for core X11 applications"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r34"
+PR = "r35"
PACKAGES = "\
- task-core-apps-console \
- task-core-apps-console-dbg \
- task-core-apps-console-dev \
task-core-apps-x11-core \
task-core-apps-x11-core-dbg \
task-core-apps-x11-core-dev \
@@ -29,18 +26,10 @@ XSERVER ?= "xserver-kdrive-fbdev"
ALLOW_EMPTY = "1"
-SPLASH ?= "psplash"
-
# pcmanfm doesn't work on mips/powerpc
FILEMANAGER ?= "pcmanfm"
FILEMANAGER_mips ?= ""
-RDEPENDS_task-core-apps-console = "\
- avahi-daemon \
- dbus \
- portmap \
- ${SPLASH}"
-
RDEPENDS_task-core-x11-base = "\
dbus \
--
1.7.4.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] task-core: split into task-core-console and task-core-x11
2011-09-14 18:13 ` [PATCH 1/1] task-core: split into task-core-console and task-core-x11 Paul Eggleton
@ 2011-09-14 18:29 ` Joshua Lock
0 siblings, 0 replies; 5+ messages in thread
From: Joshua Lock @ 2011-09-14 18:29 UTC (permalink / raw)
To: openembedded-core
On Wed, 2011-09-14 at 19:13 +0100, Paul Eggleton wrote:
> [YOCTO #1481]
>
> Since tasks are referred to almost exclusively via RDEPENDS, and bitbake
> will build an entire task recipe when only one of its task packages are
> actually needed, building a console-only image that uses
> task-core-apps-console (or less directly, has apps-console in its
> IMAGE_FEATURES) will cause a build of a whole list of X11 applications
> that aren't needed. Splitting the task-core recipe into X11 and console
> portions prevents this issue.
>
> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Joshua Lock <josh@linux.intel.com>
<snip>
> -RECIPE_STATUS_pn-task-core = "green"
> -RECIPE_LATEST_VERSION_pn-task-core = "1.0"
> -RECIPE_MAINTAINER_pn-task-core = "Dongxiao Xu <dongxiao.xu@intel.com>"
> +RECIPE_STATUS_pn-task-core-console = "green"
> +RECIPE_LATEST_VERSION_pn-task-core-console = "1.0"
> +RECIPE_MAINTAINER_pn-task-core-console = "Dongxiao Xu <dongxiao.xu@intel.com>"
> +
> +RECIPE_STATUS_pn-task-core-x11 = "green"
> +RECIPE_LATEST_VERSION_pn-task-core-x11 = "1.0"
> +RECIPE_MAINTAINER_pn-task-core-x11 = "Dongxiao Xu <dongxiao.xu@intel.com>"
What ever happened to "you change it, you own it"? ;-)
Joshua
--
Joshua Lock
Yocto Project "Johannes factotum"
Intel Open Source Technology Centre
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2011-09-14 18:34 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-14 16:43 [PATCH 0/1] Split task-core to reduce build time Paul Eggleton
2011-09-14 16:43 ` [PATCH 1/1] task-core: split into task-core-console and task-core-x11 Paul Eggleton
2011-09-14 18:00 ` [PATCH 0/1] Split task-core to reduce build time Paul Eggleton
-- strict thread matches above, loose matches on Subject: below --
2011-09-14 18:13 [PATCH 0/1] Split task-core to reduce build time v2 Paul Eggleton
2011-09-14 18:13 ` [PATCH 1/1] task-core: split into task-core-console and task-core-x11 Paul Eggleton
2011-09-14 18:29 ` Joshua Lock
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox