summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ref-manual: edits to FILESPATH and FILESEXTRAPATHS variables.Scott Rifenbark2013-06-141-13/+20
| | | | | | | | | | | I updated some of the explanation to be more specific about the default paths the build system uses and just exactly how a user should use FILESEXTRAPATHS. (From yocto-docs rev: 5eba1437fb07300d0b42011eb82200215201c8ac) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ref-manual: Added variable description for OVERRIDES.Scott Rifenbark2013-06-141-0/+14
| | | | | | | (From yocto-docs rev: b8c9e66a825aeced8c50f800054e2a71ef119627) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual: Updated reference to where licenses are keptTrevor Woerner2013-06-141-1/+1
| | | | | | | | | | | After a build, the license data is found in ${TMPDIR}/deploy/licenses not ${TMPDIR}/deploy/images/licenses. Reported-by: Trevor Woerner <twoerner@gmail.com> (From yocto-docs rev: 7f9b3d842f0f68bd0c005a20d38f1b26aef11387) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: compat/server/utils: Jettison pre python 2.7.3 workaroundsRichard Purdie2013-06-144-1068/+15
| | | | | | | | | Now we've moved to require python 2.7.3, we can jettison the compatibility workarounds/hacks for older python versions. (Bitbake rev: a51c402304f2080a76720f9b31d6dfdbed393bba) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue: Improve handling of failing setscene tasks with hard ↵Richard Purdie2013-06-141-3/+7
| | | | | | | | | | | | | | | | | | | | | | | dependencies If a setscene task has a hard dependency on a task like pseudo-native, its expected that the setscene task will not run unless the dependency is met. This adds code to ensure that is the case, otherwise a bug would show up with a usecase like: bitbake gnome-common bitbake pseudo-native -c cleansstate bitbake gnome-common -c clean bitbake gnome-common With the double wrapper script environment, we'd not see issues like this as it would be masked. The problem theoretically affects code like useradd too as well as anything using a sstate postinstall. (Bitbake rev: c54e738e2b5dc0d8e6fd8e93b284ed96e7a83051) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* documentation.conf: Drop variables for class that no longer exists in OE-CoreRichard Purdie2013-06-141-22/+0
| | | | | | (From OE-Core rev: d2e0adc9720b66f56439c574520a1d58eaf0426f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: xmlrpc: removes the event servers controllerAlexandru DAMIAN2013-06-141-59/+0
| | | | | | | | | | | | | XMLRPC API ran a XMLRPC server at port+2 in order to provide endpoints to register an event server in which to dump the events. This is no longer used, so we remove it. (Bitbake rev: e171a363913a86e56266f4c9d107110c7f5221e3) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qt4: set QMAKE_COMPILER to gcc in mkspecJonathan Liu2013-06-141-0/+2
| | | | | | | | | | | This avoids the following warning when running qmake: Project WARNING: qmake spec does not announce the compiler family. Guessed gcc. (From OE-Core rev: 6c78f629323bea0be44181d60e3ce45be0416093) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qt4: disable gdb_dwarf_indexJonathan Liu2013-06-141-0/+3
| | | | | | | | | | | | | * qmake is trying to call native gdb and we don't depend on gdb-native (or even provide gdb-native) * fixes errors like this: /bin/sh: gdb: command not found /bin/sh: line 0: test: -gt: unary operator expected (From OE-Core rev: 6456b596a73232429e0d223089f32dc350ea20b0) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/conf: Add eventmasks for event handlersRichard Purdie2013-06-1419-115/+107
| | | | | | | | | | | Now that bitbake supports masking events for event handlers, lets use this so event handlers are only called for events they care about. This lets us simplify the code indentation a bit at least as well as mildly improving the event handling performance. (From OE-Core rev: bff73743280f9eafebe4591f7368ead91a4eb74d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/buildenv-internal/sanity: Update to python 2.7.3 as a minimumRichard Purdie2013-06-142-6/+5
| | | | | | | | | | | | We're finding bugs in python 2.6 and starting to require unittest functionality in python 2.7.x. Its time to bump the minimum version requirement. Anyone without python 2.7.x can use the buildtools-tarball out to install a standalone python/git/tar setup which will work with the system. (From OE-Core rev: 8b90f1becd40a7f857d2fbe30eaffe218a976419) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: Drop pseudo test, now unneededRichard Purdie2013-06-141-27/+0
| | | | | | (From OE-Core rev: 075278db6f7a4783c952c72eebddf51a12f76075) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/bitbake: Drop horrible double execution messRichard Purdie2013-06-141-125/+0
| | | | | | | | | There is no longer anything of value in the bitbake wrapper script since pseudo is handled by bitbake internally. We can therefore drop it (yay). (From OE-Core rev: d716d095751086e72fd789721005f0dc6d632997) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.conf: Update minimum bitbake version requirement to 1.19.1 for ↵Richard Purdie2013-06-141-1/+1
| | | | | | | | | | | bitbake-worker This is due to the need to rely on bitbake-worker being present going forwards. (From OE-Core rev: ccf4fe860096f4b2a56b51b612b2a1dcb3525e59) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/oe-buildenv-internal bitbake: Migrate python version checksRichard Purdie2013-06-142-20/+20
| | | | | | | | | | | In preparation for removal of the bitbake wrapper script, move the python version checks to the environment script. There are also checks within bitbake itself but these may not always function correctly on every version of python so this is really insurance. (From OE-Core rev: 07792e4a83ca4f1c8152c228813c7f795fa6a545) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/bitbake sanity.bbclass: Migrate tests for git and tar versionsRichard Purdie2013-06-142-41/+32
| | | | | | | | | | | Migrate tests for correct git and tar versions from the wrapper script to the sanity class. This sets the scene to allow us to remove the bitbake wrapper script. (From OE-Core rev: 7b370e23594da5dcb53cd5507ec289c3ef2d9fb5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: Add extra fakeroot parametersRichard Purdie2013-06-141-0/+2
| | | | | | | | | In order to correctly handle fakeroot at the bitbake level we need some extra information which we provide with these new variables. (From OE-Core rev: 003ea0fd1017dde50ced710179d0dc2e835d5185) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake: Add event mask flag supportBogdan Marinescu2013-06-143-8/+20
| | | | | | | | | | | | | | | Add a flag to event handlers which lists the events a given handler wishes to process. By default event handlers recieve all events but this means we can stop running code in many cases if we know it doesn't want the event. This is part of the fix for YOCTO #3812, but implements filtering only for class event handlers; the other part (events filter for UIs) will be the subject of a different patch. (Bitbake rev: 074003a4e7530a72863b9c685fc5c31b0f08c039) Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake: Update version to 1.19.1Richard Purdie2013-06-142-2/+2
| | | | | | (Bitbake rev: 6acd444a557bba977ae1772371fdadf5f510e3b6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake: Bump minimum python version to 2.7.3Richard Purdie2013-06-141-2/+2
| | | | | | (Bitbake rev: a01d153a8baac7136c2797c95357e74dd8872026) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: prserv: Adapt autostart to bitbake-workerRichard Purdie2013-06-144-3/+12
| | | | | | | | | | With the change to bitbake-worker we need to ensure the workers know how to contact the PR service, the magic 0 port and singleton is no longer enough. (Bitbake rev: c761751e259bb8e940552a28794b45887b5a72d9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue: Spawn a separate worker for fakeroot tasksRichard Purdie2013-06-141-17/+58
| | | | | | (Bitbake rev: 860ec42b220b7ed3f3bbe52c3546bba66644eac8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue: Abstract the start and teardown worker functionsRichard Purdie2013-06-141-17/+31
| | | | | | | | | We're going to need a fakeroot/pseudo version of the worker so abstract the code to start the worker process. (Bitbake rev: b5d0f12f9df3ab211700473ed145ee6fbd9ca8e9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue: Move the bitbake-worker execution to a higher levelRichard Purdie2013-06-141-59/+55
| | | | | | | | | | The worker was being executed by each execution queue so would get constructed twice for each build. This is wasteful so move execution to the main runqueue so we only have to start the worker once. (Bitbake rev: 8117f8480125b121b2b5ac0afc31b108d9e670ae) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue: Split runqueue to use bitbake-workerRichard Purdie2013-06-146-190/+492
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a pretty fundamental change to the way bitbake operates. It splits out the task execution part of runqueue into a completely separately exec'd process called bitbake-worker. This means that the separate process has to build its own datastore and that configuration needs to be passed from the cooker over to the bitbake worker process. Known issues: * Hob is broken with this patch since it writes to the configuration and that configuration isn't preserved in bitbake-worker. * We create a worker for setscene, then a new worker for the main task execution. This is wasteful but shouldn't be hard to fix. * We probably send too much data over to bitbake-worker, need to see if we can streamline it. These are issues which will be followed up in subsequent patches. This patch sets the groundwork for the removal of the double bitbake execution for psuedo which will be in a follow on patch. (Bitbake rev: b2e26f1db28d74f2dd9df8ab4ed3b472503b9a5c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Fix AUTOINC handlingRichard Purdie2013-06-142-4/+4
| | | | | | | | | | | | | AUTOINC was meant to appear once at the start of the version string. The list of names may not be sorted meaning it could get inserted in the middle. This patch simplifies the code and ensures it appears at the start. Include cache version bump to ensure the cache picks up these changes. (Bitbake rev: ad8bf10d873abb94d987860a3f6d06b134fb8a99) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildtools-tarball: Add nativesdk-ncurses-terminfo-baseRichard Purdie2013-06-141-0/+1
| | | | | | | | | | | | We've been seeing issues where some TERM values don't work well with the tarball. These show up as escape codes coming from simple python calls such as printing the python version. Adding the terminfo goes part way to addressing the problem, the remainder is ensuring the relocation code correctly searches the right path for it (which will be in a follow on patch). (From OE-Core rev: 697e64c98affc4e0d8aa4828e74331c918b23a0e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: -Wformat is needed by gcc 4.8Khem Raj2013-06-142-0/+21
| | | | | | | | | | | | | | | | | | | This fixes errors in packages using python( build with gcc 4.8) | /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm/usr/include/python2.7/modsupport.h:27:1: error: 'PyArg_ParseTuple' is an unrecognized format function type [-Werror=format=] | PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...) Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3); | ^ | cc1: all warnings being treated as errors | cc1: all warnings being treated as errors (From OE-Core rev: 5745a482a85c064a1eec960aff104cf8ce588e30) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: introduce gallium-llvmpipe PACKAGECONFIGMartin Jansa2013-06-145-0/+117
| | | | | | | (From OE-Core rev: d9f840725f3ea67fbd28d0903c99b729df5b1377) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: use PACKAGESPLITFUNCSMartin Jansa2013-06-141-1/+3
| | | | | | | (From OE-Core rev: ce127b8d20c9e812f2486405b080ab73d163e8de) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: introduce openvg PACKAGECONFIGMartin Jansa2013-06-141-0/+6
| | | | | | | (From OE-Core rev: 33d7c8a2e5087f84fb365e57e2555edb96f5fba5) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: introduce gallium PACKAGECONFIGMartin Jansa2013-06-141-2/+10
| | | | | | | (From OE-Core rev: 26276a215d7e09856d5e418edacab63197508050) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: remove more .la filesMartin Jansa2013-06-141-0/+3
| | | | | | | (From OE-Core rev: 5eea21b86ca2ca09d4eb03aa9fcdb4564bdccb5d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: merge mesa-git.inc to mesa_git.bbMartin Jansa2013-06-142-12/+11
| | | | | | (From OE-Core rev: fb595d8a1181f30daa1c80938a335f9d249de913) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: move LIC_FILES_CHKSUM to .incMartin Jansa2013-06-143-6/+3
| | | | | | | | | * we can also include .inc as first statement in recipe like most recipes (From OE-Core rev: add5a0c17647a6b44461dd8181a412dac2ef263a) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: use PACKAGECONFIG instead of DISTRO_FEATURES to define EGL_PLATFORMSMartin Jansa2013-06-141-2/+2
| | | | | | | | | | * it makes it easier to change PACKAGECONFIG in .bbappend and get consistent EGL_PLATFORMS (From OE-Core rev: 50dcfeab2b18422f3ab067893a0b68b17706d6e2) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: introduce PACKAGECONFIG for driMartin Jansa2013-06-141-4/+4
| | | | | | | | | | * move DEPENDS which were originally applied only for mesa-dri to dri PACKAGECONFIG (From OE-Core rev: f780ec28cbaade55361390a04ac70574bde426de) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: merge mesa-common.inc to mesa.incMartin Jansa2013-06-144-111/+105
| | | | | | | (From OE-Core rev: 72afb46920202588948e256738ee80d585519974) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cogl: make cogl be able to build on ARM archRoy.Li2013-06-143-0/+56
| | | | | | | | | | 1. Fix asm() register constraints in cogl when building for ARM. 2. Fix cogl to handle Thumb builds. (From OE-Core rev: cdfea71ff1c4f80ff3a0ade1d7514cbf3c22abde) Signed-off-by: Roy.Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: update install-quotaon-once.patchRoss Burton2013-06-141-15/+17
| | | | | | | | | | This patch has been merged upstream now, so refresh the patch with a backport (the patch was changed before being merged). (From OE-Core rev: cdad18589d08fdf592a50685f3b5fed32f4f4c76) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/qmake_base: allow parallel makeJonathan Liu2013-06-131-1/+1
| | | | | | | | | | Remove MAKEFLAGS= from EXTRA_OEMAKE to allow parallel make. (From OE-Core rev: 1aeecaeee9bb1eee779973fce7f15cc7fad269a0) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qt: update qmake2 class to export qconfig.pri mkspecFelipe F. Tonello2013-06-131-0/+1
| | | | | | | | | | | | This is necessary when Qt applications want to know variables such as QT_MAJOR_VERSION, QT_VERSION, QT_MINOR_VERSION, GCC version, etc. (From OE-Core rev: dcaa40e65d986587fa7c44f4285bbd0883478cc3) Signed-off-by: Felipe F. Tonello <eu@felipetonello.com> Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gnome-doc-utils: drop the usage of create_wrapperRoss Burton2013-06-131-1/+1
| | | | | | | | | | | | | | | create_wrapper was previously abused to invoke the Python interpretter directly instead of relying on #! parsing, which is read into a 128 byte buffer so breaks with deep build directories. However now that we already install a "nativepython" binary into the native sysroot, use sed to change the #! line to /usr/bin/env nativepython. (From OE-Core rev: 470a67d9047ccabe3b624238f31c0381793404be) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* createrepo: drop the usage of create_wrapperRoss Burton2013-06-131-1/+1
| | | | | | | | | | | | | | | create_wrapper was previously abused to invoke the Python interpretter directly instead of relying on #! parsing, which is read into a 128 byte buffer so breaks with deep build directories. However now that we already install a "nativepython" binary into the native sysroot, use sed to change the #! line to /usr/bin/env nativepython. (From OE-Core rev: 7d91b44e00d6c50b7b5fbef17f2bae8e3a983a4c) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python-native: add nativepython symlinkRoss Burton2013-06-131-0/+6
| | | | | | | | | | | | | | | | Add a symlink to the native Python so that scripts can just invoke "nativepython" and get the right one without needing absolute paths (these often end up too long for the #! parser in the kernel as the buffer is 128 bytes long). The name "nativepython" was chosen to match the existing "nativeperl" which serves the same purpose. (From OE-Core rev: d99dac66e3e121e96c4d8a29aee846d4b8f38622) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dpkg: drop the usage of create_wrapperRoss Burton2013-06-131-9/+1
| | | | | | | | | | | | | | | create_wrapper was previously abused to invoke the Perl interpretter directly instead of relying on #! parsing, which is read into a 128 byte buffer so breaks with deep build directories. However we already install a "nativeperl" binary into the native sysroot, so use sed to change the #! line to /usr/bin/env nativeperl. (From OE-Core rev: c4f987239fe78783d732df673a5e592bb05a877d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib/build-perf-test.sh: fix passing argumentsStefan Stanacar2013-06-131-17/+19
| | | | | | | | | | | | Don't pass arguments to bitbake as a single one, because this will break when the bitbake double-exec is removed. (From OE-Core rev: db13f10d233873148156880ab709ec76f8d3c329) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib/build-perf-test.sh: add branch name and sizes to resultsStefan Stanacar2013-06-131-7/+17
| | | | | | | | | | | | | Be more descriptive about the revision we are running on in the global results file: add branch:commit and git describe fields. Also add the sizes for tmp dir not only times. (previously these were only available in the output.log) (From OE-Core rev: 769a2c8ce797ee3afa39ab0fe9d9206a60cc4ba1) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* site: add more alignment values for at-spi2-coreRoss Burton2013-06-135-2/+32
| | | | | | | | | | | | x86 and x86_64 values were added in 8c46ec. The x86-64 values were missing an entry, add MIPS and PowerPC values from myself in qemu, and ARM values from Martin Jansa. (From OE-Core rev: a6a12ef5cad0dbb2d773bdccc340f1f767c5a782) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu: when tunctl can't be found, say what package builds itRoss Burton2013-06-131-1/+1
| | | | | | | | | | | | | If runqemu is used without actually building any qemu images (i.e. you downloaded the images) it's likely that qemu-helper-native hasn't been built. Instead of just saying what command can't be found, tell the user how to solve their problem. (From OE-Core rev: 1498c431a161e8b3ddebefb5f03f4f11d5796c1d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>