mirror of
https://git.yoctoproject.org/poky
synced 2026-02-09 10:13:03 +01:00
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) (From OE-Core rev: 8c1a2fa) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
42 lines
1.3 KiB
PHP
42 lines
1.3 KiB
PHP
# included by kernel recipes if they want to build/provide
|
|
# perf functionality from their tree.
|
|
|
|
BUILDPERF = "yes"
|
|
BUILDPERF_libc-uclibc = "no"
|
|
# perf requires binutils which is GPLv3 licensed, don't prevent the entire kernel
|
|
# being built if GPLv3 is in INCOMPATIBLE_LICENSE
|
|
python () {
|
|
if ((d.getVar("INCOMPATIBLE_LICENSE", True) or "").find("GPLv3") != -1):
|
|
# GPLv3, drop perf
|
|
d.setVar("BUILDPERF", "no")
|
|
d.setVar("PERFDEPENDS", "")
|
|
}
|
|
|
|
do_compile_perf () {
|
|
if [ "${BUILDPERF}" = "yes" ]; then
|
|
oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
|
|
fi
|
|
}
|
|
|
|
fakeroot do_install_perf () {
|
|
if [ "${BUILDPERF}" = "yes" ]; then
|
|
oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} DESTDIR=${D} install NO_NEWT=1 NO_DWARF=1
|
|
fi
|
|
}
|
|
|
|
|
|
# perf tasks
|
|
addtask compile_perf after do_compile before do_install
|
|
addtask install_perf after do_install before do_package
|
|
|
|
do_compile_perf[umask] = 022
|
|
do_install_perf[umask] = 022
|
|
|
|
PERFDEPENDS = "virtual/${MLPREFIX}libc:do_populate_sysroot ${MLPREFIX}elfutils:do_populate_sysroot ${MLPREFIX}binutils:do_populate_sysroot"
|
|
PERFDEPENDS_libc-uclibc = ""
|
|
PERFRDEPENDS = "python perl elfutils"
|
|
PERFRDEPENDS_libc-uclibc = ""
|
|
|
|
do_compile_perf[depends] = "${PERFDEPENDS}"
|
|
RDEPENDS_perf += "${PERFRDEPENDS}"
|