Open HappyPK opened 4 years ago
We could fix the assert, it would be pretty easy. However, at the moment only msvc, clang-cl, and intel-cl work with the vs backend, so you would silently get msvc or nothing. Patches to make GCC work with vs would be welcome.
Describe the bug A clear and concise description of what the bug is.
To Reproduce Please include your
meson.build
files, preferably as a minimal toy example showing the issue. You may need to create simple source code files (don't include private/proprietary code).Expected behavior D:\mesa-20.0.0-rc3> meson builddir --backend=vs The Meson build system Version: 0.53.1 Source dir: D:\mesa-20.0.0-rc3 Build dir: D:\mesa-20.0.0-rc3\builddir Build type: native build Program python found: YES (C:\Python38\python.EXE) Project name: mesa Project version: 20.0.0-rc3 C compiler for the host machine: gcc (gcc 8.1.0 "gcc.exe (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0") C linker for the host machine: gcc GNU ld.bfd 2.30 C++ compiler for the host machine: c++ (gcc 8.1.0 "c++.exe (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0") C++ linker for the host machine: c++ GNU ld.bfd 2.30 Auto detected Visual Studio backend: vs2017 Host machine cpu family: x86_64 Host machine cpu: x86_64 Program pkg-config found: YES (C:\ProgramData\chocolatey\bin\pkg-config.EXE) Program C:\Python38\python found: YES (C:\Python38\python.exe) Fetching value of define "ETIME" : 137 Checking for function "bswap32" : YES Checking for function "bswap64" : YES Checking for function "clz" : YES Checking for function "clzll" : YES Checking for function "ctz" : YES Checking for function "expect" : YES Checking for function "ffs" : YES Checking for function "ffsll" : YES Checking for function "popcount" : YES Checking for function "popcountll" : YES Checking for function "unreachable" : YES Checking if "attribute((const))" compiles: YES Checking if "attribute((flatten))" compiles: YES Checking if "attribute((malloc))" compiles: YES Checking if "attribute((pure))" compiles: YES Checking if "attribute((unused))" compiles: YES Checking if "attribute((warn_unused_result))" compiles: YES Checking if "attribute((weak))" compiles: YES Checking if "attribute((format(...)))" compiles: YES Checking if "attribute((packed))" compiles: YES Checking if "attribute((returns_nonnull))" compiles: YES Checking if "attribute((visibility(...)))" compiles: YES Checking if "attribute((alias(...)))" compiles: YES Checking if "attribute((noreturn))" compiles: YES Checking if "__uint128_t" compiles: YES Compiler for C supports arguments -Werror=implicit-function-declaration: YES Compiler for C supports arguments -Werror=missing-prototypes: YES Compiler for C supports arguments -Werror=return-type: YES Compiler for C supports arguments -Werror=empty-body: YES Compiler for C supports arguments -Werror=incompatible-pointer-types: YES Compiler for C supports arguments -Werror=int-conversion: YES Compiler for C supports arguments -Wno-missing-field-initializers -Wmissing-field-initializers: YES Compiler for C supports arguments -Wno-format-truncation -Wformat-truncation: YES Compiler for C supports arguments -fno-math-errno: YES Compiler for C supports arguments -fno-trapping-math: YES Compiler for C supports arguments -Qunused-arguments: NO Compiler for C++ supports arguments -Werror=return-type: YES Compiler for C++ supports arguments -Werror=empty-body: YES Compiler for C++ supports arguments -Wno-non-virtual-dtor -Wnon-virtual-dtor: YES Compiler for C++ supports arguments -Wno-missing-field-initializers -Wmissing-field-initializers: YES Compiler for C++ supports arguments -Wno-format-truncation -Wformat-truncation: YES Compiler for C++ supports arguments -fno-math-errno: YES Compiler for C++ supports arguments -fno-trapping-math: YES Compiler for C++ supports arguments -Qunused-arguments: NO Compiler for C supports arguments -Wno-override-init -Woverride-init: YES Compiler for C supports arguments -Wno-initializer-overrides -Winitializer-overrides: NO Compiler for C supports arguments -fvisibility=hidden: YES Compiler for C supports arguments -Werror=pointer-arith: YES Compiler for C++ supports arguments -Werror=pointer-arith: YES Compiler for C supports arguments -Werror=vla: YES Compiler for C++ supports arguments -Werror=vla: YES Compiler for C supports arguments -Werror=gnu-empty-initializer: NO Compiler for C++ supports arguments -Werror=gnu-empty-initializer: NO Compiler for C++ supports arguments -fvisibility=hidden: YES Checking if "GCC atomic builtins" compiles: YES Checking if "GCC atomic builtins required -latomic" links: YES Checking if "GCC 64bit atomics" with dependency not-found links: YES Library ws2_32 found: YES Header <sys/sysmacros.h> has symbol "major" : NO Header <sys/mkdev.h> has symbol "major" : NO Checking if "xlocale.h" compiles: NO Checking if "sys/sysctl.h" compiles: NO Checking if "linux/futex.h" compiles: NO Checking if "endian.h" compiles: NO Checking if "dlfcn.h" compiles: NO Checking if "execinfo.h" compiles: NO Checking if "sys/shm.h" compiles: NO Checking if "cet.h" compiles: YES Checking for function "strtof" : YES Checking for function "mkostemp" : NO Checking for function "timespec_get" : NO Checking for function "memfd_create" : NO Checking for function "random_r" : NO Checking for function "flock" : NO Checking for function "strtok_r" : YES Header has symbol "program_invocation_name" : NO
Checking whether type "struct dirent" has member "d_type" : NO
Checking if "strtod has locale support" links: NO
Checking if "Bsymbolic" links: YES
Checking if "gc-sections" links: YES
Checking if "version-script" links: YES
Checking if "dynamic-list" links: YES
Compiler for C supports link arguments -Wl,--build-id=sha1: YES
Checking for function "dlopen" : NO
Library dl found: NO
Checking for function "dladdr" with dependency -ldl: NO
Checking for function "dl_iterate_phdr" : NO
Found pkg-config: C:\ProgramData\chocolatey\bin\pkg-config.EXE (0.28)
Found CMake: C:\Program Files\CMake\bin\cmake.EXE (3.15.2)
Run-time dependency zlib found: YES 1.2.11
Run-time dependency libzstd found: NO (tried pkgconfig and cmake)
Run-time dependency threads found: YES
Library m found: YES
Run-time dependency libdrm found: NO (tried pkgconfig and cmake)
Run-time dependency LLVM found: NO (tried cmake)
Looking for a fallback subproject for the dependency llvm
Subproject directory not found and llvm.wrap file not found
Subproject subprojects\llvm is buildable: NO (disabling)
Dependency llvm from subproject subprojects\llvm found: NO
Run-time dependency valgrind found: NO (tried pkgconfig)
Program win_flex found: YES (C:\ProgramData\chocolatey\bin\win_flex.EXE)
Program win_bison found: YES (C:\ProgramData\chocolatey\bin\win_bison.EXE)
Run-time dependency libunwind found: NO (tried pkgconfig and cmake)
Library sensors found: NO
Program dumpbin found: NO
Program symbols-check.py found: YES (python D:\mesa-20.0.0-rc3\bin\symbols-check.py)
Program install_megadrivers.py found: YES (c:\python38\python.exe D:\mesa-20.0.0-rc3\bin\install_megadrivers.py)
DEPRECATION: build_always is deprecated. Combine build_by_default and build_always_stale instead.
Message: Configuration summary:
Build targets in project: 83
mesa 20.0.0-rc3
Subprojects llvm: NO
Traceback (most recent call last): File "c:\python38\lib\site-packages\mesonbuild\mesonmain.py", line 129, in run return options.run_func(options) File "c:\python38\lib\site-packages\mesonbuild\msetup.py", line 245, in run app.generate() File "c:\python38\lib\site-packages\mesonbuild\msetup.py", line 159, in generate self._generate(env) File "c:\python38\lib\site-packages\mesonbuild\msetup.py", line 215, in _generate intr.backend.generate(intr) File "c:\python38\lib\site-packages\mesonbuild\backend\vs2010backend.py", line 181, in generate projlist = self.generate_projects() File "c:\python38\lib\site-packages\mesonbuild\backend\vs2010backend.py", line 415, in generate_projects self.gen_vcxproj(target, str(projfile_path), proj_uuid) File "c:\python38\lib\site-packages\mesonbuild\backend\vs2010backend.py", line 777, in gen_vcxproj vscrt_type = self.environment.coredata.base_options['b_vscrt'] KeyError: 'b_vscrt' system parameters
meson --version
ninja --version
if it's a Ninja build