You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When I tried to meson-python master branch in AIX using meson, I get the below error
Traceback (most recent call last):
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/mesonmain.py", line 193, in run
return options.run_func(options)
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/msetup.py", line 365, in run
app.generate()
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/msetup.py", line 188, in generate
return self._generate(env, capture, vslite_ctx)
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/msetup.py", line 253, in _generate
captured_compile_args = intr.backend.generate(capture, vslite_ctx)
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/backend/ninjabackend.py", line 642, in generate
self.generate_rules()
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/backend/ninjabackend.py", line 1354, in generate_rules
self.generate_dynamic_link_rules()
File "/meson/install/opt/freeware/lib/python3.9/site-packages/mesonbuild/backend/ninjabackend.py", line 2376, in generate_dynamic_link_rules
cmdlist = compiler.get_command_to_archive_shlib()
UnboundLocalError: local variable 'compiler' referenced before assignment
For this I would like to propose a simple fix that handles the scenario when compiler is empty
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index cb3552d7f..7b573e4e4 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -2369,7 +2369,7 @@ class NinjaBackend(backends.Backend):
options = self._rsp_options(compiler)
self.add_rule(NinjaRule(rule, command, args, description, **options, extra=pool))
- if self.environment.machines[for_machine].is_aix():
+ if self.environment.machines[for_machine].is_aix() and complist:
rule = 'AIX_LINKER{}'.format(self.get_rule_suffix(for_machine))
description = 'Archiving AIX shared library'
cmdlist = compiler.get_command_to_archive_shlib()
Kindly let me know if can I raise a PR and you're okay with this.
The text was updated successfully, but these errors were encountered:
Ah hmm, right. This happens because we only iterate over all configured project languages that also support using a linker, and then create AIX_LINKER for the last one basically. This fails for projects that don't have any configured languages, which is okay since they also do not need to run the AIX_LINKER archiving rule.
When I tried to meson-python master branch in AIX using meson, I get the below error
For this I would like to propose a simple fix that handles the scenario when compiler is empty
Kindly let me know if can I raise a PR and you're okay with this.
The text was updated successfully, but these errors were encountered: