aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/modules
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2021-09-24 23:40:52 +0300
committerGitHub <noreply@github.com>2021-09-24 23:40:52 +0300
commitfee5cb697c77156f0dec4264ce846dd0d4f84fd5 (patch)
tree3285c253624f75b104c28e71a0a81ac8caff1cc3 /mesonbuild/modules
parent68c23a61203fc35dd11c7a0b1cc13f7cc2c5cf8c (diff)
parent5a69dbe0cb500fe1a2be2e07219b58b1edf443b5 (diff)
downloadmeson-fee5cb697c77156f0dec4264ce846dd0d4f84fd5.zip
meson-fee5cb697c77156f0dec4264ce846dd0d4f84fd5.tar.gz
meson-fee5cb697c77156f0dec4264ce846dd0d4f84fd5.tar.bz2
Merge pull request #9167 from dcbaker/submit/meson-main-type-checking
Add type annotations and type checking to meson main
Diffstat (limited to 'mesonbuild/modules')
-rw-r--r--mesonbuild/modules/__init__.py2
-rw-r--r--mesonbuild/modules/pkgconfig.py16
-rw-r--r--mesonbuild/modules/qt.py3
-rw-r--r--mesonbuild/modules/unstable_external_project.py2
4 files changed, 13 insertions, 10 deletions
diff --git a/mesonbuild/modules/__init__.py b/mesonbuild/modules/__init__.py
index 8f64120..0129909 100644
--- a/mesonbuild/modules/__init__.py
+++ b/mesonbuild/modules/__init__.py
@@ -45,7 +45,7 @@ class ModuleState:
self.current_lineno = interpreter.current_lineno
self.environment = interpreter.environment
self.project_name = interpreter.build.project_name
- self.project_version = interpreter.build.dep_manifest[interpreter.active_projectname]
+ self.project_version = interpreter.build.dep_manifest[interpreter.active_projectname].version
# The backend object is under-used right now, but we will need it:
# https://github.com/mesonbuild/meson/issues/1419
self.backend = interpreter.backend
diff --git a/mesonbuild/modules/pkgconfig.py b/mesonbuild/modules/pkgconfig.py
index f73e168..7be4796 100644
--- a/mesonbuild/modules/pkgconfig.py
+++ b/mesonbuild/modules/pkgconfig.py
@@ -12,18 +12,22 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-import os
from pathlib import PurePath
+import os
+import typing as T
+from . import ExtensionModule
+from . import ModuleReturnValue
from .. import build
from .. import dependencies
-from ..dependencies import ThreadDependency
from .. import mesonlib
from .. import mlog
-from . import ModuleReturnValue
-from . import ExtensionModule
+from ..dependencies import ThreadDependency
from ..interpreterbase import permittedKwargs, FeatureNew, FeatureNewKwargs
+if T.TYPE_CHECKING:
+ from . import ModuleState
+
already_warned_objs = set()
class DependenciesHelper:
@@ -451,8 +455,8 @@ class PkgConfigModule(ExtensionModule):
'install_dir', 'extra_cflags', 'variables', 'url', 'd_module_versions',
'dataonly', 'conflicts', 'uninstalled_variables',
'unescaped_variables', 'unescaped_uninstalled_variables'})
- def generate(self, state, args, kwargs):
- default_version = state.project_version['version']
+ def generate(self, state: 'ModuleState', args, kwargs):
+ default_version = state.project_version
default_install_dir = None
default_description = None
default_name = None
diff --git a/mesonbuild/modules/qt.py b/mesonbuild/modules/qt.py
index 19d9a63..7dafad7 100644
--- a/mesonbuild/modules/qt.py
+++ b/mesonbuild/modules/qt.py
@@ -13,7 +13,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-from mesonbuild import coredata
import os
import shutil
import typing as T
@@ -21,10 +20,10 @@ import xml.etree.ElementTree as ET
from . import ModuleReturnValue, ExtensionModule
from .. import build
+from .. import coredata
from .. import mlog
from ..dependencies import find_external_dependency, Dependency, ExternalLibrary
from ..mesonlib import MesonException, File, FileOrString, version_compare, Popen_safe
-from . import ModuleReturnValue, ExtensionModule
from ..interpreter import extract_required_kwarg
from ..interpreter.type_checking import NoneType
from ..interpreterbase import ContainerTypeInfo, FeatureDeprecated, KwargInfo, noPosargs, FeatureNew, typed_kwargs
diff --git a/mesonbuild/modules/unstable_external_project.py b/mesonbuild/modules/unstable_external_project.py
index 8bd3c1c..87b0ab6 100644
--- a/mesonbuild/modules/unstable_external_project.py
+++ b/mesonbuild/modules/unstable_external_project.py
@@ -232,7 +232,7 @@ class ExternalProject(NewExtensionModule):
abs_includedir = Path(abs_includedir, subdir)
abs_libdir = Path(self.install_dir, self.rel_prefix, self.libdir)
- version = self.project_version['version']
+ version = self.project_version
incdir = []
compile_args = [f'-I{abs_includedir}']
link_args = [f'-L{abs_libdir}', f'-l{libname}']