-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Closed
Labels
Milestone
Description
Describe the bug
When building my project, that uses the wrap file from cpp-httplib as subproject, it fails while configuring that subproject.
Error trace:
Executing subproject cpp-httplib
cpp-httplib| Project name: cpp-httplib
cpp-httplib| Project version: undefined
cpp-httplib| C++ compiler for the host machine: cl (msvc 19.40.33812 "Microsoft (R) C/C++-Optimierungscompiler Version 19.40.33812 für x64")
cpp-httplib| C++ linker for the host machine: link link 14.40.33812.0
cpp-httplib| WARNING: msvc does not support C++11; attempting best effort; setting the standard to C++14
Traceback (most recent call last):
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\mesonmain.py", line 188, in run
return options.run_func(options)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\msetup.py", line 364, in run
app.generate()
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\msetup.py", line 187, in generate
return self._generate(env, capture, vslite_ctx)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\msetup.py", line 226, in _generate
intr.run()
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 3032, in run
super().run()
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 169, in run
self.evaluate_codeblock(self.ast, start=1)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 195, in evaluate_codeblock
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 187, in evaluate_codeblock
self.evaluate_statement(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 201, in evaluate_statement
return self.function_call(cur)
^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 528, in function_call
res = func(node, func_args, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 250, in wrapper
return f(*nargs, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 569, in wrapper
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 2451, in func_subdir
self.evaluate_codeblock(codeblock)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 195, in evaluate_codeblock
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 187, in evaluate_codeblock
self.evaluate_statement(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 219, in evaluate_statement
return self.evaluate_if(cur)
^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 309, in evaluate_if
self.evaluate_codeblock(i.block)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 195, in evaluate_codeblock
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 187, in evaluate_codeblock
self.evaluate_statement(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 219, in evaluate_statement
return self.evaluate_if(cur)
^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 314, in evaluate_if
self.evaluate_codeblock(node.elseblock.block)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 195, in evaluate_codeblock
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 187, in evaluate_codeblock
self.evaluate_statement(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 205, in evaluate_statement
self.assignment(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 642, in assignment
value = self.evaluate_statement(node.value)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 201, in evaluate_statement
return self.function_call(cur)
^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 528, in function_call
res = func(node, func_args, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 799, in wrapped
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 799, in wrapped
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 799, in wrapped
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[Previous line repeated 4 more times]
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 98, in wrapped
ret = f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 116, in wrapped
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 250, in wrapper
return f(*nargs, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 569, in wrapper
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 1809, in func_dependency
d = df.lookup(kwargs)
^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\dependencyfallbacks.py", line 354, in lookup
dep = func(kwargs, func_args, func_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\dependencyfallbacks.py", line 130, in _do_subproject
self.interpreter.do_subproject(subp_name, func_kwargs)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 948, in do_subproject
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 936, in do_subproject
return methods_map[method](subp_name, subdir, default_options, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 987, in _do_subproject_meson
subi.run()
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\interpreter.py", line 3032, in run
super().run()
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 169, in run
self.evaluate_codeblock(self.ast, start=1)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 195, in evaluate_codeblock
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 187, in evaluate_codeblock
self.evaluate_statement(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 219, in evaluate_statement
return self.evaluate_if(cur)
^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 309, in evaluate_if
self.evaluate_codeblock(i.block)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 195, in evaluate_codeblock
raise e
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 187, in evaluate_codeblock
self.evaluate_statement(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 205, in evaluate_statement
self.assignment(cur)
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 642, in assignment
value = self.evaluate_statement(node.value)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 207, in evaluate_statement
return self.method_call(cur)
^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 542, in method_call
obj = self.evaluate_statement(invocable)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 207, in evaluate_statement
return self.method_call(cur)
^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\interpreterbase.py", line 557, in method_call
res = obj.method_call(method_name, args, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\baseobjects.py", line 81, in method_call
return method(args, kwargs)
^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 663, in wrapped
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 250, in wrapper
return f(*nargs, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreterbase\decorators.py", line 569, in wrapper
return f(*wrapped_args, **wrapped_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\compiler.py", line 497, in get_define_method
value, cached = self.compiler.get_define(element, kwargs['prefix'], self.environment,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\compilers\mixins\clike.py", line 654, in get_define
args = self.build_wrapper_args(env, extra_args, dependencies,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\compilers\mixins\clike.py", line 420, in build_wrapper_args
extra_args = mesonlib.listify([e(mode.value) if callable(e) else e for e in extra_args])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\compilers\mixins\clike.py", line 420, in <listcomp>
extra_args = mesonlib.listify([e(mode.value) if callable(e) else e for e in extra_args])
^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\interpreter\compiler.py", line 274, in _determine_args
args += self.compiler.get_option_compile_args(opts)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\compilers\cpp.py", line 857, in get_option_compile_args
args = super().get_option_compile_args(options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\compilers\cpp.py", line 816, in get_option_compile_args
options.set_value(key, 'c++14')
File "~\AppData\Local\Programs\Python\Python311\Lib\site-packages\mesonbuild\coredata.py", line 940, in set_value
self.overrides[key] = value
~~~~~~~~~~~~~~^^^^^
TypeError: 'NoneType' object does not support item assignment
subprojects\cpp-httplib-0.15.3\meson.build:24:16: ERROR: Unhandled python exception
This is a Meson bug and should be reported!
To Reproduce
Just use the wrap-file for cpp-httplib from the wrapDB. Try to setup a project with it a subproject or use it as standalone target (meson setup builddir/ -Dwraps=cpp-httplib)
Expected behavior
It works as before the 1.5.0 version.
The last tested working version was 1.4.2 (which is strange)
All other compilers and OSes seem to work, see e.g. these CI runs.
I tested it on MacOS, Linux Clang + Linux GCC , Windows Msys2 Mingw64 and UCRT64.
system parameters
- Native build
- OS: Windows 10
- python: 3.11.2
- meson: 1.5.0
- MSVC: VS 17.10.4
danyeaw