[OE-core] [PATCH V2 1/1] perf: fix issue about package splitting

Richard Purdie rpurdie at rpsys.net
Wed Sep 3 10:42:39 UTC 2014


On Wed, 2014-09-03 at 17:05 +0800, Chong Lu wrote:
> Currently, perf can't split to perf-archive, perf-tests, perf-python and
> perf-perl. All files are included in perf package. Change the files paths to
> make split successfully and add PACKAGECONFIG to make main pkg depends on sub
> pkgs as default.
> 
> Signed-off-by: Chong Lu <Chong.Lu at windriver.com>
> ---
>  meta/recipes-kernel/perf/perf.bb | 17 ++++++++++++-----
>  1 file changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
> index bfd210c..baf0077 100644
> --- a/meta/recipes-kernel/perf/perf.bb
> +++ b/meta/recipes-kernel/perf/perf.bb
> @@ -149,20 +149,27 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
>  
>  PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python"
>  
> +PACKAGECONFIG ??= "archive perl python tests"
> +PACKAGECONFIG[archive] = ",,, ${PN}-archive"
> +PACKAGECONFIG[perl] = ",,, ${PN}-perl"
> +PACKAGECONFIG[python] = ",,, ${PN}-python"
> +PACKAGECONFIG[tests] = ",,, ${PN}-tests"
> +
>  RDEPENDS_${PN} += "elfutils"
>  RDEPENDS_${PN}-archive =+ "bash"
>  RDEPENDS_${PN}-python =+ "bash python"
>  RDEPENDS_${PN}-perl =+ "bash perl perl-modules"
> +RDEPENDS_${PN}-tests =+ "python"

I now realise the trick you're playing with PACKAGECONFIG here. Instead
can we just define a package (say ${PN}-all but I'll accept a better
name) which has dependencies on archive perl python tests so then the
user can choose ${PN}, ${PN}-all or some other combination depending on
their needs?
 
>  RSUGGESTS_SCRIPTING = "${@perf_feature_enabled('perf-scripting', '${PN}-perl ${PN}-python', '',d)}"
>  RSUGGESTS_${PN} += "${PN}-archive ${PN}-tests ${RSUGGESTS_SCRIPTING}"
>  
> -FILES_${PN} += "${libexecdir}/perf-core ${exec_prefix}/libexec/perf-core ${libdir}/traceevent"
> +FILES_${PN} += "${libdir}/traceevent"
>  FILES_${PN}-dbg += "${libdir}/python*/site-packages/.debug"
> -FILES_${PN}-archive = "${libdir}/perf/perf-core/perf-archive"
> -FILES_${PN}-tests = "${libdir}/perf/perf-core/tests"
> -FILES_${PN}-python = "${libdir}/python*/site-packages ${libdir}/perf/perf-core/scripts/python"
> -FILES_${PN}-perl = "${libdir}/perf/perf-core/scripts/perl"
> +FILES_${PN}-archive = "${exec_prefix}/libexec/perf-core/perf-archive"
> +FILES_${PN}-tests = "${exec_prefix}/libexec/perf-core/tests"
> +FILES_${PN}-python = "${exec_prefix}/libexec/perf-core/scripts/python"
> +FILES_${PN}-perl = "${exec_prefix}/libexec/perf-core/scripts/perl"

Can we use ${libexecdir} here please rather than hardcode it?

Cheers,

Richard





More information about the Openembedded-core mailing list