summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/native.bbclass23
-rw-r--r--meta/recipes-devtools/python/python3-setuptools_51.0.0.bb5
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb1
-rw-r--r--meta/recipes-graphics/mesa/mesa.inc14
-rw-r--r--meta/recipes-support/boost/boost.inc3
5 files changed, 22 insertions, 24 deletions
diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass
index 08106e345c..a0838e41b9 100644
--- a/meta/classes/native.bbclass
+++ b/meta/classes/native.bbclass
@@ -5,20 +5,12 @@ inherit relocatable
5# no need for them to be a direct target of 'world' 5# no need for them to be a direct target of 'world'
6EXCLUDE_FROM_WORLD = "1" 6EXCLUDE_FROM_WORLD = "1"
7 7
8PACKAGES = ""
9PACKAGES_class-native = ""
10PACKAGES_DYNAMIC = ""
11PACKAGES_DYNAMIC_class-native = ""
12PACKAGE_ARCH = "${BUILD_ARCH}" 8PACKAGE_ARCH = "${BUILD_ARCH}"
13 9
14# used by cmake class 10# used by cmake class
15OECMAKE_RPATH = "${libdir}" 11OECMAKE_RPATH = "${libdir}"
16OECMAKE_RPATH_class-native = "${libdir}" 12OECMAKE_RPATH_class-native = "${libdir}"
17 13
18# When this class has packaging enabled, setting
19# RPROVIDES becomes unnecessary.
20RPROVIDES = "${PN}"
21
22TARGET_ARCH = "${BUILD_ARCH}" 14TARGET_ARCH = "${BUILD_ARCH}"
23TARGET_OS = "${BUILD_OS}" 15TARGET_OS = "${BUILD_OS}"
24TARGET_VENDOR = "${BUILD_VENDOR}" 16TARGET_VENDOR = "${BUILD_VENDOR}"
@@ -138,7 +130,7 @@ python native_virtclass_handler () {
138 if "native" not in classextend: 130 if "native" not in classextend:
139 return 131 return
140 132
141 def map_dependencies(varname, d, suffix = ""): 133 def map_dependencies(varname, d, suffix = "", selfref=True):
142 if suffix: 134 if suffix:
143 varname = varname + "_" + suffix 135 varname = varname + "_" + suffix
144 deps = d.getVar(varname) 136 deps = d.getVar(varname)
@@ -148,22 +140,25 @@ python native_virtclass_handler () {
148 newdeps = [] 140 newdeps = []
149 for dep in deps: 141 for dep in deps:
150 if dep == pn: 142 if dep == pn:
151 continue 143 if not selfref:
144 continue
145 newdeps.append(dep)
152 elif "-cross-" in dep: 146 elif "-cross-" in dep:
153 newdeps.append(dep.replace("-cross", "-native")) 147 newdeps.append(dep.replace("-cross", "-native"))
154 elif not dep.endswith("-native"): 148 elif not dep.endswith("-native"):
155 newdeps.append(dep + "-native") 149 newdeps.append(dep.replace("-native", "") + "-native")
156 else: 150 else:
157 newdeps.append(dep) 151 newdeps.append(dep)
158 d.setVar(varname, " ".join(newdeps)) 152 d.setVar(varname, " ".join(newdeps), parsing=True)
159 153
160 map_dependencies("DEPENDS", e.data) 154 map_dependencies("DEPENDS", e.data, selfref=False)
161 for pkg in [e.data.getVar("PN"), "", "${PN}"]: 155 for pkg in e.data.getVar("PACKAGES", False).split():
162 map_dependencies("RDEPENDS", e.data, pkg) 156 map_dependencies("RDEPENDS", e.data, pkg)
163 map_dependencies("RRECOMMENDS", e.data, pkg) 157 map_dependencies("RRECOMMENDS", e.data, pkg)
164 map_dependencies("RSUGGESTS", e.data, pkg) 158 map_dependencies("RSUGGESTS", e.data, pkg)
165 map_dependencies("RPROVIDES", e.data, pkg) 159 map_dependencies("RPROVIDES", e.data, pkg)
166 map_dependencies("RREPLACES", e.data, pkg) 160 map_dependencies("RREPLACES", e.data, pkg)
161 map_dependencies("PACKAGES", e.data)
167 162
168 provides = e.data.getVar("PROVIDES") 163 provides = e.data.getVar("PROVIDES")
169 nprovides = [] 164 nprovides = []
diff --git a/meta/recipes-devtools/python/python3-setuptools_51.0.0.bb b/meta/recipes-devtools/python/python3-setuptools_51.0.0.bb
index 6ee935f8f7..db336bfa13 100644
--- a/meta/recipes-devtools/python/python3-setuptools_51.0.0.bb
+++ b/meta/recipes-devtools/python/python3-setuptools_51.0.0.bb
@@ -58,8 +58,3 @@ RDEPENDS_${PYTHON_PN}-pkg-resources = "\
58 ${PYTHON_PN}-plistlib \ 58 ${PYTHON_PN}-plistlib \
59 ${PYTHON_PN}-pprint \ 59 ${PYTHON_PN}-pprint \
60" 60"
61# Due to the way OE-Core implemented native recipes, the native class cannot
62# have a dependency on something that is not a recipe name. Work around that by
63# manually setting RPROVIDES.
64RDEPENDS_${PN}_append = " ${PYTHON_PN}-pkg-resources"
65RPROVIDES_append_class-native = " ${PYTHON_PN}-pkg-resources-native"
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb
index 16708fd581..226e1c7b89 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.40.0.bb
@@ -13,6 +13,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
13SECTION = "libs" 13SECTION = "libs"
14 14
15DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info" 15DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info"
16DEPENDS_remove_class-native = "gdk-pixbuf-native"
16 17
17MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" 18MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
18 19
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index efb12e573f..cb075a8b89 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -218,6 +218,9 @@ do_install_append () {
218# RPROVIDEs/RCONFLICTs on the generic libgl name. 218# RPROVIDEs/RCONFLICTs on the generic libgl name.
219python __anonymous() { 219python __anonymous() {
220 pkgconfig = (d.getVar('PACKAGECONFIG') or "").split() 220 pkgconfig = (d.getVar('PACKAGECONFIG') or "").split()
221 suffix = ""
222 if "-native" in d.getVar("PN"):
223 suffix = "-native"
221 for p in (("egl", "libegl", "libegl1"), 224 for p in (("egl", "libegl", "libegl1"),
222 ("dri", "libgl", "libgl1"), 225 ("dri", "libgl", "libgl1"),
223 ("gles", "libgles1", "libglesv1-cm1"), 226 ("gles", "libgles1", "libglesv1-cm1"),
@@ -226,19 +229,19 @@ python __anonymous() {
226 if not p[0] in pkgconfig: 229 if not p[0] in pkgconfig:
227 continue 230 continue
228 mlprefix = d.getVar("MLPREFIX") 231 mlprefix = d.getVar("MLPREFIX")
229 fullp = mlprefix + p[1] + "-mesa" 232 fullp = mlprefix + p[1] + "-mesa" + suffix
230 mlprefix = d.getVar("MLPREFIX") 233 mlprefix = d.getVar("MLPREFIX")
231 pkgs = " ".join(mlprefix + x for x in p[1:]) 234 pkgs = " ".join(mlprefix + x + suffix for x in p[1:])
232 d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") 235 d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
233 d.appendVar("RREPLACES_" + fullp, pkgs) 236 d.appendVar("RREPLACES_" + fullp, pkgs)
234 d.appendVar("RPROVIDES_" + fullp, pkgs) 237 d.appendVar("RPROVIDES_" + fullp, pkgs)
235 d.appendVar("RCONFLICTS_" + fullp, pkgs) 238 d.appendVar("RCONFLICTS_" + fullp, pkgs)
236 239
237 d.appendVar("RRECOMMENDS_" + fullp, " ${MLPREFIX}mesa-megadriver") 240 d.appendVar("RRECOMMENDS_" + fullp, " ${MLPREFIX}mesa-megadriver" + suffix)
238 241
239 # For -dev, the first element is both the Debian and original name 242 # For -dev, the first element is both the Debian and original name
240 fullp += "-dev" 243 fullp = mlprefix + p[1] + "-mesa-dev" + suffix
241 pkgs = mlprefix + p[1] + "-dev" 244 pkgs = mlprefix + p[1] + "-dev" + suffix
242 d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") 245 d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
243 d.appendVar("RREPLACES_" + fullp, pkgs) 246 d.appendVar("RREPLACES_" + fullp, pkgs)
244 d.appendVar("RPROVIDES_" + fullp, pkgs) 247 d.appendVar("RPROVIDES_" + fullp, pkgs)
@@ -272,6 +275,7 @@ python mesa_populate_packages() {
272PACKAGESPLITFUNCS_prepend = "mesa_populate_packages " 275PACKAGESPLITFUNCS_prepend = "mesa_populate_packages "
273 276
274PACKAGES_DYNAMIC += "^mesa-driver-.*" 277PACKAGES_DYNAMIC += "^mesa-driver-.*"
278PACKAGES_DYNAMIC_class-native = "^mesa-driver-.*-native"
275 279
276FILES_mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d/00-mesa-defaults.conf" 280FILES_mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d/00-mesa-defaults.conf"
277FILES_mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan" 281FILES_mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan"
diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index cbf9cad707..c9bb178541 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -59,10 +59,13 @@ PACKAGES = "${PN}-dbg ${BOOST_PACKAGES}"
59python __anonymous () { 59python __anonymous () {
60 packages = [] 60 packages = []
61 extras = [] 61 extras = []
62 pn = d.getVar("PN")
62 mlprefix = d.getVar("MLPREFIX") 63 mlprefix = d.getVar("MLPREFIX")
63 for lib in d.getVar('BOOST_LIBS').split(): 64 for lib in d.getVar('BOOST_LIBS').split():
64 extras.append("--with-%s" % lib) 65 extras.append("--with-%s" % lib)
65 pkg = "boost-%s" % (lib.replace("_", "-")) 66 pkg = "boost-%s" % (lib.replace("_", "-"))
67 if "-native" in pn:
68 pkg = pkg + "-native"
66 packages.append(mlprefix + pkg) 69 packages.append(mlprefix + pkg)
67 if not d.getVar("FILES_%s" % pkg): 70 if not d.getVar("FILES_%s" % pkg):
68 d.setVar("FILES_%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib) 71 d.setVar("FILES_%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib)