[oe-commits] [openembedded-core] 13/16: oeqa/sdk/galculator: rewrite to use new helpers
git at git.openembedded.org
git at git.openembedded.org
Sat Dec 8 10:48:45 UTC 2018
This is an automated email from the git hooks/post-receive script.
rpurdie pushed a commit to branch master-next
in repository openembedded-core.
commit 12a8e32dd5352747d39e669fc7c67086df3c673a
Author: Ross Burton <ross.burton at intel.com>
AuthorDate: Fri Dec 7 21:26:05 2018 +0000
oeqa/sdk/galculator: rewrite to use new helpers
---
meta/lib/oeqa/sdk/cases/buildgalculator.py | 47 +++++++++++++++++-------------
1 file changed, 27 insertions(+), 20 deletions(-)
diff --git a/meta/lib/oeqa/sdk/cases/buildgalculator.py b/meta/lib/oeqa/sdk/cases/buildgalculator.py
index 9e12b3a..7beb558 100644
--- a/meta/lib/oeqa/sdk/cases/buildgalculator.py
+++ b/meta/lib/oeqa/sdk/cases/buildgalculator.py
@@ -1,8 +1,16 @@
+import os
+import subprocess
+import tempfile
import unittest
+import bb
+
from oeqa.sdk.case import OESDKTestCase
from oeqa.sdk.utils.sdkbuildproject import SDKBuildProject
+from oeqa.utils.subprocesstweak import errors_have_output
+errors_have_output()
+
class GalculatorTest(OESDKTestCase):
td_vars = ['DATETIME']
@@ -14,23 +22,22 @@ class GalculatorTest(OESDKTestCase):
raise unittest.SkipTest("GalculatorTest class: SDK doesn't contain gettext")
def test_galculator(self):
- dl_dir = self.td.get('DL_DIR', None)
- project = None
- try:
- project = SDKBuildProject(self.tc.sdk_dir + "/galculator/",
- self.tc.sdk_env,
- "http://galculator.mnim.org/downloads/galculator-2.1.4.tar.bz2",
- self.tc.sdk_dir, self.td['DATETIME'], dl_dir=dl_dir)
-
- project.download_archive()
-
- # regenerate configure to get support for --with-libtool-sysroot
- legacy_preconf=("autoreconf -i -f -I ${OECORE_TARGET_SYSROOT}/usr/share/aclocal -I m4;")
-
- self.assertEqual(project.run_configure(extra_cmds=legacy_preconf),
- 0, msg="Running configure failed")
-
- self.assertEqual(project.run_make(), 0,
- msg="Running make failed")
- finally:
- project.clean()
+ with tempfile.TemporaryDirectory(prefix="galculator", dir=self.tc.sdk_dir) as testdir:
+ dl_dir = self.td.get('DL_DIR', None)
+ tarball = self.fetch(testdir, dl_dir, "http://galculator.mnim.org/downloads/galculator-2.1.4.tar.bz2")
+
+ dirs = {}
+ dirs["source"] = os.path.join(testdir, "galculator-2.1.4")
+ dirs["build"] = os.path.join(testdir, "build")
+ dirs["install"] = os.path.join(testdir, "install")
+
+ subprocess.check_output(["tar", "xf", tarball, "-C", testdir])
+ self.assertTrue(os.path.isdir(dirs["source"]))
+
+ bb.utils.mkdirhier(dirs["build"])
+ self._run("cd {source} && autoreconf -i -f -I $OECORE_TARGET_SYSROOT/usr/share/aclocal -I m4".format(**dirs))
+ self._run("cd {build} && {source}/configure $CONFIGURE_FLAGS".format(**dirs))
+ self._run("cd {build} && make -j".format(**dirs))
+ self._run("cd {build} && make install DESTDIR={install}".format(**dirs))
+
+ self.check_elf(os.path.join(dirs["install"], "usr", "local", "bin", "galculator"))
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list