]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
package_deb.bbclass: Allow to override Multi-Arch flag; change default for kernel...
authorAndreas Oberritter <obi@opendreambox.org>
Tue, 26 Feb 2019 17:23:55 +0000 (18:23 +0100)
committerAndreas Oberritter <obi@opendreambox.org>
Mon, 8 Apr 2019 11:49:57 +0000 (13:49 +0200)
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
meta/classes/package.bbclass
meta/classes/package_deb.bbclass

index 732aeff92ee03d17d5c6e3c75cdf25413b8b6fa8..f3cbe2452c2171fc760c68c2c248a91a4fe29174 100644 (file)
@@ -1392,6 +1392,7 @@ python emit_pkgdata() {
         write_if_exists(sf, pkg, 'PACKAGE_ADD_METADATA_DEB')
         write_if_exists(sf, pkg, 'PACKAGE_ADD_METADATA_IPK')
         write_if_exists(sf, pkg, 'PACKAGE_ADD_METADATA_RPM')
+        write_if_exists(sf, pkg, 'MULTI_ARCH')
         for dfile in (d.getVar('FILERPROVIDESFLIST_' + pkg) or "").split():
             write_if_exists(sf, pkg, 'FILERPROVIDES_' + dfile)
 
index eb879e48a6e81355945081362203e7e468dd68a5..69363db7f4453b03af84af8b2bfe6a7fdd24df50 100644 (file)
@@ -162,9 +162,21 @@ python do_package_deb () {
                 l2.append(data)
             return l2
 
+
+        def multi_arch_flag(d):
+            flag = d.getVar('MULTI_ARCH')
+            if flag:
+                return flag
+            if d.getVar('PACKAGE_ARCH') == "all":
+                return 'foreign'
+            if bb.data.inherits_class('kernel', d) or bb.data.inherits_class('module-base', d):
+                return 'foreign'
+            return 'no'
+
+
         ctrlfile.write("Package: %s\n" % pkgname)
-        if d.getVar('PACKAGE_ARCH') == "all":
-            ctrlfile.write("Multi-Arch: foreign\n")
+        ctrlfile.write("Multi-Arch: %s\n" % multi_arch_flag(localdata))
+
         # check for required fields
         for (c, fs) in fields:
             # Special behavior for description...