mirror of
https://git.yoctoproject.org/poky
synced 2026-07-16 15:57:04 +00:00
6736b91b2b
Redirect stderr to stdout when running subcommands while doing the SDK tests. The tests will show stdout when CalledProcessError is raised, but any output to stderr was lost. (From OE-Core rev: 7cb4e9ab8c1596281060e94a216966060103956e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
42 lines
1.6 KiB
Python
42 lines
1.6 KiB
Python
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
import os
|
|
import subprocess
|
|
import tempfile
|
|
import unittest
|
|
|
|
from oeqa.sdk.case import OESDKTestCase
|
|
from oeqa.utils.subprocesstweak import errors_have_output
|
|
errors_have_output()
|
|
|
|
class EpoxyTest(OESDKTestCase):
|
|
"""
|
|
Test that Meson builds correctly.
|
|
"""
|
|
def setUp(self):
|
|
if not (self.tc.hasHostPackage("nativesdk-meson")):
|
|
raise unittest.SkipTest("GalculatorTest class: SDK doesn't contain Meson")
|
|
|
|
def test_epoxy(self):
|
|
with tempfile.TemporaryDirectory(prefix="epoxy", dir=self.tc.sdk_dir) as testdir:
|
|
tarball = self.fetch(testdir, self.td["DL_DIR"], "https://github.com/anholt/libepoxy/releases/download/1.5.3/libepoxy-1.5.3.tar.xz")
|
|
|
|
dirs = {}
|
|
dirs["source"] = os.path.join(testdir, "libepoxy-1.5.3")
|
|
dirs["build"] = os.path.join(testdir, "build")
|
|
dirs["install"] = os.path.join(testdir, "install")
|
|
|
|
subprocess.check_output(["tar", "xf", tarball, "-C", testdir], stderr=subprocess.STDOUT)
|
|
self.assertTrue(os.path.isdir(dirs["source"]))
|
|
os.makedirs(dirs["build"])
|
|
|
|
log = self._run("meson -Degl=no -Dglx=no -Dx11=false {build} {source}".format(**dirs))
|
|
# Check that Meson thinks we're doing a cross build and not a native
|
|
self.assertIn("Build type: cross build", log)
|
|
self._run("ninja -C {build} -v".format(**dirs))
|
|
self._run("DESTDIR={install} ninja -C {build} -v install".format(**dirs))
|
|
|
|
self.check_elf(os.path.join(dirs["install"], "usr", "local", "lib", "libepoxy.so"))
|