aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2021-10-07 09:39:31 +0200
committerNirbheek Chauhan <nirbheek.chauhan@gmail.com>2021-11-23 18:10:15 +0530
commit8581a2b1226bdeb69063d41d46fbc2a8fdc1c2fb (patch)
tree9f12fcfa27cd4c199df8f53d3bac558b85be8977
parent47ba919b2146c956c4a7221f4f078804122a6990 (diff)
downloadmeson-8581a2b1226bdeb69063d41d46fbc2a8fdc1c2fb.zip
meson-8581a2b1226bdeb69063d41d46fbc2a8fdc1c2fb.tar.gz
meson-8581a2b1226bdeb69063d41d46fbc2a8fdc1c2fb.tar.bz2
interpreter: extract_objects provides a valid source
This ensures that there is no warnings when running meson on test cases/common/22 object extraction. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--mesonbuild/interpreter/interpreter.py9
-rw-r--r--unittests/allplatformstests.py6
2 files changed, 11 insertions, 4 deletions
diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py
index 5b108c7..5421343 100644
--- a/mesonbuild/interpreter/interpreter.py
+++ b/mesonbuild/interpreter/interpreter.py
@@ -90,11 +90,12 @@ if T.TYPE_CHECKING:
# Input source types passed to Targets
SourceInputs = T.Union[mesonlib.File, build.GeneratedList, build.BuildTarget, build.BothLibraries,
- build.CustomTargetIndex, build.CustomTarget, build.GeneratedList, str]
- # Input source types passed to the build.Target5 classes
+ build.CustomTargetIndex, build.CustomTarget, build.GeneratedList,
+ build.ExtractedObjects, str]
+ # Input source types passed to the build.Target classes
SourceOutputs = T.Union[mesonlib.File, build.GeneratedList,
build.BuildTarget, build.CustomTargetIndex, build.CustomTarget,
- build.GeneratedList]
+ build.ExtractedObjects, build.GeneratedList]
def stringifyUserArguments(args, quote=False):
@@ -2573,7 +2574,7 @@ Try setting b_lundef to false instead.'''.format(self.coredata.options[OptionKey
results.append(s)
elif isinstance(s, (build.GeneratedList, build.BuildTarget,
build.CustomTargetIndex, build.CustomTarget,
- build.GeneratedList)):
+ build.ExtractedObjects)):
results.append(s)
else:
raise InterpreterException(f'Source item is {s!r} instead of '
diff --git a/unittests/allplatformstests.py b/unittests/allplatformstests.py
index ec0b393..ea5ab8e 100644
--- a/unittests/allplatformstests.py
+++ b/unittests/allplatformstests.py
@@ -3540,6 +3540,12 @@ class AllPlatformTests(BasePlatformTests):
self.build()
self.run_tests()
+ def test_extract_objects_custom_target_no_warning(self):
+ testdir = os.path.join(self.common_test_dir, '22 object extraction')
+
+ out = self.init(testdir)
+ self.assertNotRegex(out, "WARNING:.*can't be converted to File object")
+
def test_multi_output_custom_target_no_warning(self):
testdir = os.path.join(self.common_test_dir, '228 custom_target source')