]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
selftest/incompatible_lic: Ensure create_sdpx isn't used with the tests
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 1 Jun 2023 21:36:27 +0000 (22:36 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 2 Jun 2023 14:58:33 +0000 (15:58 +0100)
The SPDX class doens't get on well with non-standard licenses. Disable it for
the purposes of this test to avoid errors.

Add a new helper function to the core test code to allow this to be done easily.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oeqa/selftest/case.py
meta/lib/oeqa/selftest/cases/incompatible_lic.py

index dcad4f76ecd6399ab1c2ed98ce7eab34020a6275..54d90c78ac56c06308e5e1d114e5d73386bedbe2 100644 (file)
@@ -249,6 +249,13 @@ class OESelftestTestCase(OETestCase):
         self.logger.debug("Writing to: %s\n%s\n" % (self.machineinc_path, data))
         ftools.write_file(self.machineinc_path, data)
 
+    def disable_class(self, classname):
+        destfile = "%s/classes/%s.bbclass" % (self.builddir, classname)
+        os.makedirs(os.path.dirname(destfile), exist_ok=True)
+        self.track_for_cleanup(destfile)
+        self.logger.debug("Creating empty class: %s\n" % (destfile))
+        ftools.write_file(destfile, "")
+
     # check does path exist
     def assertExists(self, expr, msg=None):
         if not os.path.exists(expr):
index 4edf60fc55f7631c714b2d4ba773ed1e59edc0e1..1597d30ab03c1a99d20ce3198ac05762a23b1190 100644 (file)
@@ -113,6 +113,7 @@ INCOMPATIBLE_LICENSE:pn-core-image-minimal = "GPL-3.0* LGPL-3.0*"
             raise AssertionError(result.output)
 
     def test_bash_and_license(self):
+        self.disable_class("create-spdx")
         self.write_config(self.default_config() + '\nLICENSE:append:pn-bash = " & SomeLicense"')
         error_msg = "ERROR: core-image-minimal-1.0-r0 do_rootfs: Package bash cannot be installed into the image because it has incompatible license(s): GPL-3.0-or-later"
 
@@ -121,6 +122,7 @@ INCOMPATIBLE_LICENSE:pn-core-image-minimal = "GPL-3.0* LGPL-3.0*"
             raise AssertionError(result.output)
 
     def test_bash_or_license(self):
+        self.disable_class("create-spdx")
         self.write_config(self.default_config() + '\nLICENSE:append:pn-bash = " | SomeLicense"')
 
         bitbake('core-image-minimal')