diff options
-rw-r--r-- | mesonbuild/backend/ninjabackend.py | 4 | ||||
-rw-r--r-- | mesonbuild/interpreter/interpreter.py | 7 |
2 files changed, 7 insertions, 4 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index c6f82e3..5c77dc2 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -442,10 +442,10 @@ class NinjaBackend(backends.Backend): 'benchmark', etc, and also for RunTargets. https://github.com/mesonbuild/meson/issues/1644 ''' - if dummy_outfile.startswith('meson-'): + if dummy_outfile.startswith('meson-internal__'): raise AssertionError(f'Invalid usage of create_phony_target with {dummy_outfile!r}') - to_name = f'meson-{dummy_outfile}' + to_name = f'meson-internal__{dummy_outfile}' elem = NinjaBuildElement(all_outputs, dummy_outfile, 'phony', to_name) self.add_build(elem) diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py index af83c0e54..53e819b 100644 --- a/mesonbuild/interpreter/interpreter.py +++ b/mesonbuild/interpreter/interpreter.py @@ -2927,9 +2927,12 @@ Try setting b_lundef to false instead.'''.format(self.coredata.options[OptionKey To define a target that builds in that directory you must define it in the meson.build file in that directory. ''')) - if name.startswith('meson-'): - raise InvalidArguments("Target names starting with 'meson-' are reserved " + if name.startswith('meson-internal__'): + raise InvalidArguments("Target names starting with 'meson-internal__' are reserved " "for Meson's internal use. Please rename.") + if name.startswith('meson-') and '.' not in name: + raise InvalidArguments("Target names starting with 'meson-' and without a file extension " + "are reserved for Meson's internal use. Please rename.") if name in coredata.FORBIDDEN_TARGET_NAMES: raise InvalidArguments(f"Target name '{name}' is reserved for Meson's " "internal use. Please rename.") |