aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild')
-rwxr-xr-xmesonbuild/msubprojects.py6
-rw-r--r--mesonbuild/wrap/wrap.py12
2 files changed, 3 insertions, 15 deletions
diff --git a/mesonbuild/msubprojects.py b/mesonbuild/msubprojects.py
index 9523dd3..d515389 100755
--- a/mesonbuild/msubprojects.py
+++ b/mesonbuild/msubprojects.py
@@ -268,7 +268,7 @@ def foreach(wrap, repo_dir, options):
def add_common_arguments(p):
p.add_argument('--sourcedir', default='.',
help='Path to source directory')
- p.add_argument('--types', default=ALL_TYPES_STRING,
+ p.add_argument('--types', default='',
help='Comma-separated list of subproject types. Supported types are: {} (default: all)'.format(ALL_TYPES_STRING))
def add_subprojects_argument(p):
@@ -328,13 +328,13 @@ def run(options):
wraps = [wrap for name, wrap in r.wraps.items() if name in options.subprojects]
else:
wraps = r.wraps.values()
- types = [t.strip() for t in options.types.split(',')]
+ types = [t.strip() for t in options.types.split(',')] if options.types else []
for t in types:
if t not in ALL_TYPES:
raise MesonException('Unknown subproject type {!r}, supported types are: {}'.format(t, ALL_TYPES_STRING))
failures = []
for wrap in wraps:
- if wrap.type not in types:
+ if types and wrap.type not in types:
continue
dirname = os.path.join(subprojects_dir, wrap.directory)
if not options.subprojects_func(wrap, dirname, options):
diff --git a/mesonbuild/wrap/wrap.py b/mesonbuild/wrap/wrap.py
index 98b30ee..774544a 100644
--- a/mesonbuild/wrap/wrap.py
+++ b/mesonbuild/wrap/wrap.py
@@ -103,24 +103,12 @@ class PackageDefinition:
self.provided_deps[self.name] = None
if fname.endswith('.wrap'):
self.parse_wrap(fname)
- else:
- self.guess_type();
self.directory = self.values.get('directory', self.name)
if os.path.dirname(self.directory):
raise WrapException('Directory key must be a name and not a path')
if self.type and self.type not in ALL_TYPES:
raise WrapException('Unknown wrap type {!r}'.format(self.type))
- def guess_type(self) -> None:
- if os.path.exists(os.path.join(self.filename, '.git')):
- # This is a git subproject without wrap file. Either the user cloned
- # it manually, or it's a git submodule. The revision is used in
- # msubprojects.py to update the git repo. If it's a submodule the repo
- # is likely detached and revision will be empty.
- res, stdout = quiet_git(['branch', '--show-current'], self.filename)
- self.values['revision'] = stdout.strip()
- self.type = 'git'
-
def parse_wrap(self, fname: str) -> None:
try:
self.config = configparser.ConfigParser(interpolation=None)