aboutsummaryrefslogtreecommitdiff
path: root/run_unittests.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2018-03-17 00:37:05 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2018-03-17 00:44:56 +0200
commitc385f7973777e0e7b7e4694d69d6584e2ceae69f (patch)
tree3df52287253b853741d04350c39e836af3069e5c /run_unittests.py
parentd532650b0d7fb8bb062d852a8fdecd10be00ce21 (diff)
downloadmeson-c385f7973777e0e7b7e4694d69d6584e2ceae69f.zip
meson-c385f7973777e0e7b7e4694d69d6584e2ceae69f.tar.gz
meson-c385f7973777e0e7b7e4694d69d6584e2ceae69f.tar.bz2
Do not leak out private dependencies for shared libraries.
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-xrun_unittests.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py
index 1e8bec4..44d5c9d 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -2726,6 +2726,13 @@ endian = 'little'
self.assertTrue(os.path.exists(os.path.join(pkg_dir, 'libpkgdep.pc')))
lib_dir = os.path.join(tempdirname, 'lib')
os.environ['PKG_CONFIG_PATH'] = pkg_dir
+ # Private internal libraries must not leak out.
+ pkg_out = subprocess.check_output(['pkg-config', '--static', '--libs', 'libpkgdep'])
+ self.assertFalse(b'libpkgdep-int' in pkg_out, 'Internal library leaked out.')
+ # Dependencies must not leak to cflags when building only a shared library.
+ pkg_out = subprocess.check_output(['pkg-config', '--cflags', 'libpkgdep'])
+ self.assertFalse(b'glib' in pkg_out, 'Internal dependency leaked to headers.')
+ # Test that the result is usable.
self.init(testdir2)
self.build()
myenv = os.environ.copy()