aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mintro.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/mintro.py')
-rw-r--r--mesonbuild/mintro.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/mesonbuild/mintro.py b/mesonbuild/mintro.py
index 5421af3..eee2e7c 100644
--- a/mesonbuild/mintro.py
+++ b/mesonbuild/mintro.py
@@ -11,6 +11,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+from __future__ import annotations
"""This is a helper script for IDE developers. It allows you to
extract information such as list of targets, files, compiler flags,
@@ -19,7 +20,6 @@ tests and so on. All output is in JSON for simple parsing.
Currently only works for the Ninja backend. Others use generated
project files and don't need this info."""
-import argparse
import collections
import json
import os
@@ -29,9 +29,14 @@ import typing as T
from . import build, mesonlib, mlog, coredata as cdata
from .ast import IntrospectionInterpreter, BUILD_TARGET_FUNCTIONS, AstConditionLevel, AstIDGenerator, AstIndentationGenerator, AstJSONPrinter
from .backend import backends
-from .interpreter import Interpreter
from .mesonlib import OptionKey
-from .mparser import BaseNode, FunctionNode, ArrayNode, ArgumentNode, StringNode
+from .mparser import FunctionNode, ArrayNode, ArgumentNode, StringNode
+
+if T.TYPE_CHECKING:
+ import argparse
+
+ from .interpreter import Interpreter
+ from .mparser import BaseNode
def get_meson_info_file(info_dir: str) -> str:
return os.path.join(info_dir, 'meson-info.json')