Sfoglia il codice sorgente

support/testing/tests: switch python-cryptography related tests to glibc

In a follow-up commit, we are about to bump python-cryptography to a
new version, which has the interesting charateristic of using Rust
code. This means python-cryptography will now only be available on
platforms supported by Rust, which for now excludes uclibc-based
configurations (none of the Rust Tier1/Tier2 platforms use uClibc,
there is some uClibc support in Tier3 platforms but they have not been
added to Buildroot for now).

So in preparation for this bump, we switch the few test cases of
Python packages that directly or indirectly use python-cryptography to
use a glibc toolchain. Another impacted test case is the
docker-compose test case, but it already uses a glibc toolchain;

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Thomas Petazzoni 3 anni fa
parent
commit
e5ead094e1

+ 9 - 1
support/testing/tests/package/test_python_autobahn.py

@@ -3,9 +3,17 @@ from tests.package.test_python import TestPythonPackageBase
 
 
 class TestPythonPy3Autobahn(TestPythonPackageBase):
 class TestPythonPy3Autobahn(TestPythonPackageBase):
     __test__ = True
     __test__ = True
-    config = TestPythonPackageBase.config + \
+    # Need to use a different toolchain than the default due to
+    # python-cryptography using Rust (not available with uclibc)
+    config = \
         """
         """
+        BR2_arm=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_AUTOBAHN=y
         BR2_PACKAGE_PYTHON_AUTOBAHN=y
+        BR2_TARGET_ROOTFS_CPIO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
         """
         """
     sample_scripts = ["tests/package/sample_python_autobahn.py"]
     sample_scripts = ["tests/package/sample_python_autobahn.py"]

+ 9 - 1
support/testing/tests/package/test_python_crossbar.py

@@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase
 
 
 class TestPythonPy3Crossbar(TestPythonPackageBase):
 class TestPythonPy3Crossbar(TestPythonPackageBase):
     __test__ = True
     __test__ = True
-    config = TestPythonPackageBase.config + \
+    # Need to use a different toolchain than the default due to
+    # python-cryptography using Rust (not available with uclibc)
+    config = \
         """
         """
+        BR2_arm=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_CROSSBAR=y
         BR2_PACKAGE_PYTHON_CROSSBAR=y
+        BR2_TARGET_ROOTFS_CPIO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
         """
         """
     sample_scripts = ["tests/package/sample_python_crossbar.py"]
     sample_scripts = ["tests/package/sample_python_crossbar.py"]
     timeout = 60
     timeout = 60

+ 9 - 1
support/testing/tests/package/test_python_cryptography.py

@@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase
 
 
 class TestPythonPy3Cryptography(TestPythonPackageBase):
 class TestPythonPy3Cryptography(TestPythonPackageBase):
     __test__ = True
     __test__ = True
-    config = TestPythonPackageBase.config + \
+    # Need to use a different toolchain than the default due to
+    # python-cryptography using Rust (not available with uclibc)
+    config = \
         """
         """
+        BR2_arm=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y
         BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y
+        BR2_TARGET_ROOTFS_CPIO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
         """
         """
     sample_scripts = ["tests/package/sample_python_cryptography.py"]
     sample_scripts = ["tests/package/sample_python_cryptography.py"]
     timeout = 40
     timeout = 40

+ 9 - 1
support/testing/tests/package/test_python_service_identity.py

@@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase
 
 
 class TestPythonPy3ServiceIdentity(TestPythonPackageBase):
 class TestPythonPy3ServiceIdentity(TestPythonPackageBase):
     __test__ = True
     __test__ = True
-    config = TestPythonPackageBase.config + \
+    # Need to use a different toolchain than the default due to
+    # python-cryptography using Rust (not available with uclibc)
+    config = \
         """
         """
+        BR2_arm=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y
         BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y
+        BR2_TARGET_ROOTFS_CPIO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
         """
         """
     sample_scripts = ["tests/package/sample_python_service_identity.py"]
     sample_scripts = ["tests/package/sample_python_service_identity.py"]
     timeout = 30
     timeout = 30

+ 9 - 1
support/testing/tests/package/test_python_treq.py

@@ -14,8 +14,16 @@ class TestPythonTreq(TestPythonPackageBase):
 
 
 class TestPythonPy3Treq(TestPythonTreq):
 class TestPythonPy3Treq(TestPythonTreq):
     __test__ = True
     __test__ = True
-    config = TestPythonTreq.config + \
+    # Need to use a different toolchain than the default due to
+    # python-cryptography using Rust (not available with uclibc)
+    config = \
         """
         """
+        BR2_arm=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_TREQ=y
         BR2_PACKAGE_PYTHON_TREQ=y
+        BR2_TARGET_ROOTFS_CPIO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
         """
         """

+ 9 - 1
support/testing/tests/package/test_python_txtorcon.py

@@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase
 
 
 class TestPythonPy3Txtorcon(TestPythonPackageBase):
 class TestPythonPy3Txtorcon(TestPythonPackageBase):
     __test__ = True
     __test__ = True
-    config = TestPythonPackageBase.config + \
+    # Need to use a different toolchain than the default due to
+    # python-cryptography using Rust (not available with uclibc)
+    config = \
         """
         """
+        BR2_arm=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
+        BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON3=y
         BR2_PACKAGE_PYTHON_TXTORCON=y
         BR2_PACKAGE_PYTHON_TXTORCON=y
+        BR2_TARGET_ROOTFS_CPIO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
         """
         """
     sample_scripts = ["tests/package/sample_python_txtorcon.py"]
     sample_scripts = ["tests/package/sample_python_txtorcon.py"]
     timeout = 30
     timeout = 30