diff options
author | Joshua Lock <josh@linux.intel.com> | 2012-01-24 14:10:30 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-01-26 20:48:01 +0000 |
commit | 494a5000325325ad855fdea9d83ace2d6b1d6997 (patch) | |
tree | 80d1b9d3163f93d09e90894e9012ed9ac64892bd /meta | |
parent | 3a9e5682a9d74fe4f78cd4399927bad1942d0153 (diff) | |
download | poky-494a5000325325ad855fdea9d83ace2d6b1d6997.tar.gz |
linux-tools: don't build perf when GPLv3 in INCOMPATIBLE_LICENSE
As binutils is required by perf to build and is GPLv3 licensed adding
GPLv3 to INCOMPATIBLE_LICENSE will cause linux-yocto to be skipped.
Long term we should look at moving perf to a separate recipe but as a
short term solution this patch will ensure that when GPLv3 is in
INCOMPATIBLE_LICENSE perf is not built and it's dependencies are not
added to build.
Fixes [YOCTO #1879]
(From OE-Core rev: ce61f9031b54067bffa304dab90c31278631dcdf)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-kernel/linux/linux-tools.inc | 25 | ||||
-rw-r--r-- | meta/recipes-kernel/linux/linux-yocto_2.6.37.bb | 2 | ||||
-rw-r--r-- | meta/recipes-kernel/linux/linux-yocto_3.0.bb | 2 |
3 files changed, 20 insertions, 9 deletions
diff --git a/meta/recipes-kernel/linux/linux-tools.inc b/meta/recipes-kernel/linux/linux-tools.inc index aa45dba306..b667421fb1 100644 --- a/meta/recipes-kernel/linux/linux-tools.inc +++ b/meta/recipes-kernel/linux/linux-tools.inc | |||
@@ -1,17 +1,27 @@ | |||
1 | # included by kernel recipes if they want to build/provide | 1 | # included by kernel recipes if they want to build/provide |
2 | # perf functionality from their tree. | 2 | # perf functionality from their tree. |
3 | do_compile_perf_libc-uclibc () { | 3 | |
4 | : | 4 | BUILDPERF = "yes" |
5 | } | 5 | BUILDPERF_libc-uclibc = "no" |
6 | do_install_perf_libc-uclibc () { | 6 | # perf requires binutils which is GPLv3 licensed, don't prevent the entire kernel |
7 | : | 7 | # being built if GPLv3 is in INCOMPATIBLE_LICENSE |
8 | python () { | ||
9 | if ((d.getVar("INCOMPATIBLE_LICENSE", True) or "").find("GPLv3") != -1): | ||
10 | # GPLv3, drop perf | ||
11 | d.setVar("BUILDPERF", "no") | ||
12 | d.setVar("PERFDEPENDS", "") | ||
8 | } | 13 | } |
9 | do_compile_perf() { | 14 | |
15 | do_compile_perf () { | ||
16 | if [ "${BUILDPERF}" = "yes" ]; then | ||
10 | oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1 | 17 | oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1 |
18 | fi | ||
11 | } | 19 | } |
12 | 20 | ||
13 | fakeroot do_install_perf() { | 21 | fakeroot do_install_perf () { |
22 | if [ "${BUILDPERF}" = "yes" ]; then | ||
14 | oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} DESTDIR=${D} install NO_NEWT=1 NO_DWARF=1 | 23 | oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} DESTDIR=${D} install NO_NEWT=1 NO_DWARF=1 |
24 | fi | ||
15 | } | 25 | } |
16 | 26 | ||
17 | 27 | ||
@@ -26,5 +36,6 @@ PERFDEPENDS = "virtual/${MLPREFIX}libc:do_populate_sysroot ${MLPREFIX}elfutils:d | |||
26 | PERFDEPENDS_libc-uclibc = "" | 36 | PERFDEPENDS_libc-uclibc = "" |
27 | PERFRDEPENDS = "python perl elfutils" | 37 | PERFRDEPENDS = "python perl elfutils" |
28 | PERFRDEPENDS_libc-uclibc = "" | 38 | PERFRDEPENDS_libc-uclibc = "" |
39 | |||
29 | do_compile_perf[depends] = "${PERFDEPENDS}" | 40 | do_compile_perf[depends] = "${PERFDEPENDS}" |
30 | RDEPENDS_perf += "${PERFRDEPENDS}" | 41 | RDEPENDS_perf += "${PERFRDEPENDS}" |
diff --git a/meta/recipes-kernel/linux/linux-yocto_2.6.37.bb b/meta/recipes-kernel/linux/linux-yocto_2.6.37.bb index 34e563cffd..ce7139352c 100644 --- a/meta/recipes-kernel/linux/linux-yocto_2.6.37.bb +++ b/meta/recipes-kernel/linux/linux-yocto_2.6.37.bb | |||
@@ -20,7 +20,7 @@ SRCREV_machine_qemux86-64 = "af2bfbe5f757361b5b027a24d67a93bfdfaaf33c" | |||
20 | SRCREV_machine = "4ae8f8605c81c39b959948e23f7123294a5dfb3f" | 20 | SRCREV_machine = "4ae8f8605c81c39b959948e23f7123294a5dfb3f" |
21 | SRCREV_meta = "aeea99683c7283f1f3320bf2ee7085ee252d4e7e" | 21 | SRCREV_meta = "aeea99683c7283f1f3320bf2ee7085ee252d4e7e" |
22 | 22 | ||
23 | PR = "r21" | 23 | PR = "r22" |
24 | PV = "${LINUX_VERSION}+git${SRCPV}" | 24 | PV = "${LINUX_VERSION}+git${SRCPV}" |
25 | 25 | ||
26 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-2.6.37;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta" | 26 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-2.6.37;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta" |
diff --git a/meta/recipes-kernel/linux/linux-yocto_3.0.bb b/meta/recipes-kernel/linux/linux-yocto_3.0.bb index 10859e7066..9d51bd017c 100644 --- a/meta/recipes-kernel/linux/linux-yocto_3.0.bb +++ b/meta/recipes-kernel/linux/linux-yocto_3.0.bb | |||
@@ -21,7 +21,7 @@ SRCREV_machine_qemux86-64 ?= "3551fd0412965b1f6b0b2f6ba35f7fecdaddb58a" | |||
21 | SRCREV_machine ?= "6f5b11830deba4a6262c8c4abf67e608924f649e" | 21 | SRCREV_machine ?= "6f5b11830deba4a6262c8c4abf67e608924f649e" |
22 | SRCREV_meta ?= "665fea1c249b4f335cb1c9a46a9f2c138d611f1a" | 22 | SRCREV_meta ?= "665fea1c249b4f335cb1c9a46a9f2c138d611f1a" |
23 | 23 | ||
24 | PR = "r2" | 24 | PR = "r3" |
25 | PV = "${LINUX_VERSION}+git${SRCPV}" | 25 | PV = "${LINUX_VERSION}+git${SRCPV}" |
26 | 26 | ||
27 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.0;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta" | 27 | SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.0;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta" |