aboutsummaryrefslogtreecommitdiff
path: root/run_unittests.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-09-30 16:34:30 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2017-09-30 16:34:30 +0300
commitac79eebc2f4564642ae2ddedf05c4abb45f69634 (patch)
treed55747c91562d874ecdc6c764e7caebbf5523759 /run_unittests.py
parentb9c4fc728c6e34cedb387d6844f21456c38ad269 (diff)
downloadmeson-ac79eebc2f4564642ae2ddedf05c4abb45f69634.zip
meson-ac79eebc2f4564642ae2ddedf05c4abb45f69634.tar.gz
meson-ac79eebc2f4564642ae2ddedf05c4abb45f69634.tar.bz2
Moved prebuilt static library under unit tests.
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-xrun_unittests.py24
1 files changed, 23 insertions, 1 deletions
diff --git a/run_unittests.py b/run_unittests.py
index e307626..e821152 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -1324,7 +1324,7 @@ int main(int argc, char **argv) {
def test_prebuilt_object(self):
- (compiler, object_suffix, static_suffix) = self.detect_prebuild_env()
+ (compiler, object_suffix, _) = self.detect_prebuild_env()
tdir = os.path.join(self.unit_test_dir, '14 prebuilt object')
source = os.path.join(tdir, 'source.c')
objectfile = os.path.join(tdir, 'prebuilt.' + object_suffix)
@@ -1336,6 +1336,28 @@ int main(int argc, char **argv) {
finally:
os.unlink(objectfile)
+ def test_prebuilt_static_lib(self):
+ (compiler, object_suffix, static_suffix) = self.detect_prebuild_env()
+ tdir = os.path.join(self.unit_test_dir, '15 prebuilt static')
+ source = os.path.join(tdir, 'libdir/best.c')
+ objectfile = os.path.join(tdir, 'libdir/best.' + object_suffix)
+ stlibfile = os.path.join(tdir, 'libdir/libbest.' + static_suffix)
+ if compiler == 'cl':
+ link_cmd = ['lib', '/NOLOGO', '/OUT:' + stlibfile, objectfile]
+ else:
+ link_cmd = ['ar', 'csr', stlibfile, objectfile]
+ self.pbcompile(compiler, source, objectfile)
+ try:
+ subprocess.check_call(link_cmd)
+ finally:
+ os.unlink(objectfile)
+ try:
+ self.init(tdir)
+ self.build()
+ self.run_tests()
+ finally:
+ os.unlink(stlibfile)
+
class FailureTests(BasePlatformTests):
'''
Tests that test failure conditions. Build files here should be dynamically