aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mintro.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/mintro.py')
-rw-r--r--mesonbuild/mintro.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/mesonbuild/mintro.py b/mesonbuild/mintro.py
index 48ec20f..3bcacfb 100644
--- a/mesonbuild/mintro.py
+++ b/mesonbuild/mintro.py
@@ -51,17 +51,21 @@ def add_arguments(parser):
parser.add_argument('builddir', nargs='?', default='.', help='The build directory')
def determine_installed_path(target, installdata):
- install_target = None
- for i in installdata.targets:
- if os.path.basename(i.fname) == target.get_filename(): # FIXME, might clash due to subprojects.
- install_target = i
- break
- if install_target is None:
+ install_targets = []
+ for i in target.outputs:
+ for j in installdata.targets:
+ if os.path.basename(j.fname) == i: # FIXME, might clash due to subprojects.
+ install_targets += [j]
+ break
+ if len(install_targets) == 0:
raise RuntimeError('Something weird happened. File a bug.')
- outname = os.path.join(installdata.prefix, i.outdir, os.path.basename(i.fname))
+
# Normalize the path by using os.path.sep consistently, etc.
# Does not change the effective path.
- return str(pathlib.PurePath(outname))
+ install_targets = list(map(lambda x: os.path.join(installdata.prefix, x.outdir, os.path.basename(x.fname)), install_targets))
+ install_targets = list(map(lambda x: str(pathlib.PurePath(x)), install_targets))
+
+ return install_targets
def list_installed(installdata):