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

Chong Lu Chong.Lu at windriver.com
Thu Sep 4 08:06:31 UTC 2014


On 09/04/2014 03:27 PM, Chong Lu wrote:
>
> On 09/03/2014 06:42 PM, Richard Purdie wrote:
>> 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?
>
> OK, I will put archive perl python and tests in ${PN}-full.

Sorry, I don't think we should use a pkg include four sub pkgs.
We have perf_feature_enabled to control whether enable perl and python, 
so it is hard to use feature if we put four sub pkgs in one pkg.

Best Regards
Chong
>
>>>   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?
>
> I checked environment, the variable libexecdir is "/usr/lib/perf". If 
> I use this variable, package can't be split successfully.
>
> Best Regards
> Chong
>
>>
>> Cheers,
>>
>> Richard
>>
>>
>>
>>
>




More information about the Openembedded-core mailing list