Skip to content

Commit 00d6953

Browse files
committed
Revert "gnome: support generate_gir on cross builds"
This reverts commit 5e627c9.
1 parent 9d1ae97 commit 00d6953

File tree

2 files changed

+14
-41
lines changed

2 files changed

+14
-41
lines changed

mesonbuild/modules/__init__.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -82,21 +82,19 @@ def find_program(self, prog: T.Union[mesonlib.FileOrString, T.List[mesonlib.File
8282
wanted=wanted, silent=silent, for_machine=for_machine)
8383

8484
def find_tool(self, name: str, depname: str, varname: str, required: bool = True,
85-
wanted: T.Optional[str] = None, for_machine: MachineChoice = MachineChoice.HOST) -> T.Union[build.OverrideExecutable, ExternalProgram, 'OverrideProgram']:
86-
if for_machine is MachineChoice.HOST:
87-
# Look in overrides in case it's built as subproject
88-
progobj = self._interpreter.program_from_overrides([name], [])
89-
if progobj is not None:
90-
return progobj
85+
wanted: T.Optional[str] = None) -> T.Union[build.OverrideExecutable, ExternalProgram, 'OverrideProgram']:
86+
# Look in overrides in case it's built as subproject
87+
progobj = self._interpreter.program_from_overrides([name], [])
88+
if progobj is not None:
89+
return progobj
9190

9291
# Look in machine file
93-
prog_list = self.environment.lookup_binary_entry(for_machine, name)
92+
prog_list = self.environment.lookup_binary_entry(MachineChoice.HOST, name)
9493
if prog_list is not None:
9594
return ExternalProgram.from_entry(name, prog_list)
9695

9796
# Check if pkgconfig has a variable
98-
dep = self.dependency(depname, native=for_machine is MachineChoice.BUILD,
99-
required=False, wanted=wanted)
97+
dep = self.dependency(depname, native=True, required=False, wanted=wanted)
10098
if dep.found() and dep.type_name == 'pkgconfig':
10199
value = dep.get_variable(pkgconfig=varname)
102100
if value:
@@ -108,7 +106,7 @@ def find_tool(self, name: str, depname: str, varname: str, required: bool = True
108106
return progobj
109107

110108
# Normal program lookup
111-
return self.find_program(name, required=required, wanted=wanted, for_machine=for_machine)
109+
return self.find_program(name, required=required, wanted=wanted)
112110

113111
def dependency(self, depname: str, native: bool = False, required: bool = True,
114112
wanted: T.Optional[str] = None) -> 'Dependency':

mesonbuild/modules/gnome.py

Lines changed: 6 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
from .. import interpreter
2323
from .. import mesonlib
2424
from .. import mlog
25-
from ..build import CustomTarget, CustomTargetIndex, Executable, GeneratedList, InvalidArguments, OverrideExecutable
25+
from ..build import CustomTarget, CustomTargetIndex, Executable, GeneratedList, InvalidArguments
2626
from ..dependencies import Dependency, InternalDependency
2727
from ..dependencies.pkgconfig import PkgConfigDependency, PkgConfigInterface
2828
from ..interpreter.type_checking import DEPENDS_KW, DEPEND_FILES_KW, ENV_KW, INSTALL_DIR_KW, INSTALL_KW, NoneType, DEPENDENCY_SOURCES_KW, in_set_validator
@@ -33,7 +33,7 @@
3333
MachineChoice, MesonException, OrderedSet, Popen_safe, join_args, quote_arg
3434
)
3535
from ..options import OptionKey
36-
from ..programs import ExternalProgram, OverrideProgram
36+
from ..programs import OverrideProgram
3737
from ..scripts.gettext import read_linguas
3838

3939
if T.TYPE_CHECKING:
@@ -45,6 +45,7 @@
4545
from ..interpreter import Interpreter
4646
from ..interpreterbase import TYPE_var, TYPE_kwargs
4747
from ..mesonlib import FileOrString
48+
from ..programs import ExternalProgram
4849

4950
class PostInstall(TypedDict):
5051
glib_compile_schemas: bool
@@ -197,7 +198,7 @@ class MkEnums(_MkEnumsCommon):
197198
vtail: T.Optional[str]
198199
depends: T.List[T.Union[BuildTarget, CustomTarget, CustomTargetIndex]]
199200

200-
ToolType: TypeAlias = T.Union[OverrideExecutable, ExternalProgram, OverrideProgram]
201+
ToolType: TypeAlias = T.Union[Executable, ExternalProgram, OverrideProgram]
201202

202203

203204
# Differs from the CustomTarget version in that it straight defaults to True
@@ -307,7 +308,7 @@ def _print_gdbus_warning() -> None:
307308
once=True, fatal=False)
308309

309310
@staticmethod
310-
def _find_tool(state: 'ModuleState', tool: str, for_machine: MachineChoice = MachineChoice.HOST) -> 'ToolType':
311+
def _find_tool(state: 'ModuleState', tool: str) -> 'ToolType':
311312
tool_map = {
312313
'gio-querymodules': 'gio-2.0',
313314
'glib-compile-schemas': 'gio-2.0',
@@ -320,7 +321,7 @@ def _find_tool(state: 'ModuleState', tool: str, for_machine: MachineChoice = Mac
320321
}
321322
depname = tool_map[tool]
322323
varname = tool.replace('-', '_')
323-
return state.find_tool(tool, depname, varname, for_machine=for_machine)
324+
return state.find_tool(tool, depname, varname)
324325

325326
@typed_kwargs(
326327
'gnome.post_install',
@@ -1193,32 +1194,6 @@ def generate_gir(self, state: 'ModuleState', args: T.Tuple[T.List[T.Union[Execut
11931194

11941195
scan_command: T.List[T.Union[str, Executable, 'ExternalProgram', 'OverrideProgram']] = [giscanner]
11951196
scan_command += ['--quiet']
1196-
1197-
if state.environment.is_cross_build() and state.environment.need_exe_wrapper():
1198-
if not state.environment.has_exe_wrapper():
1199-
mlog.error('generate_gir requires exe_wrapper')
1200-
1201-
binary_wrapper = state.environment.get_exe_wrapper().get_command()
1202-
ldd = state.environment.lookup_binary_entry(MachineChoice.HOST, 'ldd')
1203-
if ldd is None:
1204-
ldd_wrapper = ['ldd']
1205-
else:
1206-
ldd_wrapper = ExternalProgram.from_bin_list(state.environment, MachineChoice.HOST, 'ldd').get_command()
1207-
1208-
WRAPPER_ARGS_REQUIRED_VERSION = ">=1.85.0"
1209-
if not self._giscanner_version_compare(state, WRAPPER_ARGS_REQUIRED_VERSION):
1210-
msg = ('Use of gnome.generate_gir during cross compilation requires'
1211-
f'g-ir-scanner {WRAPPER_ARGS_REQUIRED_VERSION}')
1212-
raise MesonException(msg)
1213-
else:
1214-
scan_command += ['--use-binary-wrapper', binary_wrapper[0]]
1215-
if len(binary_wrapper) > 1:
1216-
scan_command += ['--binary-wrapper-args-begin', *binary_wrapper[1:], '--binary-wrapper-args-end']
1217-
1218-
scan_command += ['--use-ldd-wrapper', ldd_wrapper[0]]
1219-
if len(ldd_wrapper) > 1:
1220-
scan_command += ['--ldd-wrapper-args-begin', *ldd_wrapper[1:], '--ldd-wrapper-args-end']
1221-
12221197
scan_command += ['--no-libtool']
12231198
scan_command += ['--namespace=' + ns, '--nsversion=' + nsversion]
12241199
scan_command += ['--warn-all']

0 commit comments

Comments
 (0)