[OE-core] [PATCH 4/4] gtk-icon-cache.bbclass: Depends on gtk+3

Robert Yang liezhi.yang at windriver.com
Thu Jun 20 08:46:16 UTC 2019



On 6/20/19 4:28 PM, Adrian Bunk wrote:
> On Thu, Jun 20, 2019 at 04:15:26PM +0800, Robert Yang wrote:
>> The gtk-update-icon-cache and gdk-pixbuf-query-loaders are provided by gtk+3.
> 
> gdk-pixbuf-query-loaders is provided by gdk-pixbuf,
> which is not tied to a specific GTK version.
> 
> gtk-update-icon-cache is provided by both GTK 2 and GTK 3,
> I haven't checked whether it will also be in GTK 4.

Thanks, I will update it.

> 
>> ...
>> --- a/meta/classes/gtk-icon-cache.bbclass
>> +++ b/meta/classes/gtk-icon-cache.bbclass
>> @@ -4,6 +4,11 @@ DEPENDS +=" ${@['hicolor-icon-theme', '']['${BPN}' == 'hicolor-icon-theme']} gtk
>>   
>>   PACKAGE_WRITE_DEPS += "gtk+3-native gdk-pixbuf-native"
>>   
>> +inherit distro_features_check
>> +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
>> +
>> +DEPENDS += "gtk+3"
>> ...
> 
> This looks OK.
> 
>> @@ -45,10 +50,11 @@ python populate_packages_append () {
>>           if not os.path.exists(icon_dir):
>>               continue
>>   
>> -        bb.note("adding hicolor-icon-theme dependency to %s" % pkg)
>> -        rdepends = ' ' + d.getVar('MLPREFIX', False) + "hicolor-icon-theme"
>> -        d.appendVar('RDEPENDS_%s' % pkg, rdepends)
>> -
>> +        for dep in ('hicolor-icon-theme', 'gtk+3'):
>> +            bb.note("Adding %s dependency to %s" % (dep, pkg))
>> +            rdepends = ' ' + d.getVar('MLPREFIX', False) + dep
>> +            d.appendVar('RDEPENDS_%s' % pkg, rdepends)
>> ...
> 
> Why is this necessary?

Otherwise, gtk+3 won't be installed.

> 
> I would expect there to always be a generated RDEPENDS on either
> gtk+ or gtk+3 (or soon gtk4) that already covers this.
> Anything I miss here?

gtk2/3/4 is a problem, I checked DEPENDS in oe-core's recipes, most
of them depend on gtk+3, only one depends on gtk+:

meta/recipes-gnome/gnome/gnome-themes-standard_3.22.3.bb

Maybe gtk+2 is out of date? Since gtk+4 is on the way, so I think that we
need something like virtual/gtk to fix these problems totally?

// Robert

> 
> cu
> Adrian
> 


More information about the Openembedded-core mailing list