aboutsummaryrefslogtreecommitdiff
path: root/run_unittests.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-06-11 21:45:12 +0300
committerNirbheek Chauhan <nirbheek@centricular.com>2017-06-12 22:26:10 +0530
commit8244f4c6a6436a7ddf585592c184714f803cfef8 (patch)
treeb52e9eec27f754cb4f393467f6dd829d5978c7d5 /run_unittests.py
parentd23e6b34c77f1e6bee8ab475ab05e3f5250949e7 (diff)
downloadmeson-8244f4c6a6436a7ddf585592c184714f803cfef8.zip
meson-8244f4c6a6436a7ddf585592c184714f803cfef8.tar.gz
meson-8244f4c6a6436a7ddf585592c184714f803cfef8.tar.bz2
Created unit test to ensure linker arguments from consecutive dependencies are kept in order.
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-xrun_unittests.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py
index 9f39890..ab41f54 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -1755,6 +1755,22 @@ class LinuxlikeTests(BasePlatformTests):
env['LD_LIBRARY_PATH'] = installed_libdir
self.assertEqual(subprocess.call(installed_exe, env=env), 0)
+ def test_order_of_l_arguments(self):
+ testdir = os.path.join(self.unit_test_dir, '8 L order')
+ os.environ['PKG_CONFIG_PATH'] = testdir
+ self.init(testdir)
+ expected_order = ['-L/me/first', '-L/me/second', '-L/me/third', '-L/me/fourth']
+ with open(os.path.join(self.builddir, 'build.ninja')) as ifile:
+ for line in ifile:
+ if expected_order[0] in line:
+ previous_index = line.index(expected_order[0])
+ for entry in expected_order[1:]:
+ current_index = line.index(entry)
+ self.assertLess(previous_index, current_index)
+ previous_index = current_index
+ return
+ raise RuntimeError('Linker entries not found in the Ninja file.')
+
class LinuxArmCrossCompileTests(BasePlatformTests):
'''
Tests that verify cross-compilation to Linux/ARM