IIFE commented on issue #2846: URL: https://github.com/apache/arrow-adbc/issues/2846#issuecomment-2901884813
> I don't have a windows machine to test this out on, but maybe the Meson configuration works here? It looks like that is generating the expected extension: > > [arrow-adbc/c/driver/flightsql/meson.build](https://github.com/apache/arrow-adbc/blob/e08f4840fc69ba1d61ebdb2e53da64b3deb556a5/c/driver/flightsql/meson.build#L21) > > Line 21 in [e08f484](/apache/arrow-adbc/commit/e08f4840fc69ba1d61ebdb2e53da64b3deb556a5) > > if build_machine.system() == 'windows' > To try locallly you would have to run this from the c directory: > > ``` > meson setup builddir -Dflightsql=enabled -Dtests=enabled > meson compile -C builddir > ``` Thanks @WillAyd . Tried that but unfortunately still no further ahead. This is the meson log generated: ``` Build started at 2025-05-22T17:34:42.731789 Main binary: C:\Users\****\AppData\Local\Programs\Python\Python313\python.exe Build Options: -Dflightsql=enabled -Dtests=disabled Python system: Windows The Meson build system Version: 1.8.0 Source dir: C:\dev\arrow-adbc\c Build dir: C:\dev\arrow-adbc\c\builddir Build type: native build Project name: arrow-adbc Project version: 1.7.0-SNAPSHOT ----------- Detecting compiler via: `icl ""` -> [WinError 2] The system cannot find the file specified ----------- Detecting compiler via: `cl /?` -> 0 stdout: C/C++ COMPILER OPTIONS -OPTIMIZATION- /O1 maximum optimizations (favor space) /O2 maximum optimizations (favor speed) /Ob<n> inline expansion (default n=0) /Od disable optimizations (default) /Og enable global optimization /Oi[-] enable intrinsic functions /Os favor code space /Ot favor code speed /Ox optimizations (favor speed) /Oy[-] enable frame pointer omission /favor:<blend|ATOM> select processor to optimize for, one of: blend - a combination of optimizations for several different x86 processors ATOM - Intel(R) Atom(TM) processors -CODE GENERATION- /Gu[-] ensure distinct functions have distinct addresses /Gw[-] separate global variables for linker /GF enable read-only string pooling /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /guard:cf[-] enable CFG (control flow guard) /guard:ehcont[-] enable EH continuation metadata (CET) /EHs enable C++ EH (no SEH exceptions) /EHa enable C++ EH (w/ SEH exceptions) /EHc extern "C" defaults to nothrow /EHr always generate noexcept runtime termination checks /fp:<contract|except[-]|fast|precise|strict> choose floating-point model: contract - consider floating-point contractions when generating code except[-] - consider floating-point exceptions when generating code fast - "fast" floating-point model; results are less predictable precise - "precise" floating-point model; results are predictable strict - "strict" floating-point model (implies /fp:except) /Qfast_transcendentals generate inline FP intrinsics even with /fp:except /Qspectre[-] enable mitigations for CVE 2017-5753 /Qpar[-] enable parallel code generation /Qpar-report:1 auto-parallelizer diagnostic; indicate parallelized loops /Qpar-report:2 auto-parallelizer diagnostic; indicate loops not parallelized /Qvec-report:1 auto-vectorizer diagnostic; indicate vectorized loops /Qvec-report:2 auto-vectorizer diagnostic; indicate loops not vectorized /GL[-] enable link-time code generation /volatile:<iso|ms> choose volatile model: iso - Acquire/release semantics not guaranteed on volatile accesses ms - Acquire/release semantics guaranteed on volatile accesses /GA optimize for Windows Application /Ge force stack checking for all funcs /Gs[num] control stack checking calls /Gh enable _penter function call /GH enable _pexit function call /GT generate fiber-safe TLS accesses /RTC1 Enable fast checks (/RTCsu) /RTCc Convert to smaller type checks /RTCs Stack Frame runtime checking /RTCu Uninitialized local usage checks /clr[:option] compile for common language runtime, where option is: pure : produce IL-only output file (no native executable code) safe : produce IL-only verifiable output file netcore : produce assemblies targeting .NET Core runtime noAssembly : do not produce an assembly nostdlib : ignore the system .NET framework directory when searching for assemblies nostdimport : do not import any required assemblies implicitly initialAppDomain : enable initial AppDomain behavior of Visual C++ 2002 implicitKeepAlive- : turn off implicit emission of System::GC::KeepAlive(this) /fsanitize=address Enable address sanitizer codegen /Gd __cdecl calling convention /Gr __fastcall calling convention /Gz __stdcall calling convention /GZ Enable stack checks (/RTCs) /Gv __vectorcall calling convention /hotpatch ensure function padding for hotpatchable images /arch:<IA32|SSE|SSE2|AVX|AVX2|AVX512> minimum CPU architecture requirements, one of: IA32 - use no enhanced instructions and use x87 for floating point SSE - enable use of instructions available with SSE-enabled CPUs SSE2 - (default) enable use of instructions available with SSE2-enabled CPUs AVX - enable use of instructions available with AVX-enabled CPUs AVX2 - enable use of instructions available with AVX2-enabled CPUs AVX512 - enable use of instructions available with AVX-512-enabled CPUs /Qimprecise_fwaits generate FWAITs only on "try" boundaries, not inside "try" /Qsafe_fp_loads generate safe FP loads /QIntel-jcc-erratum enable mitigations for Intel JCC erratum /Qspectre-load Enable spectre mitigations for all instructions which load memory /Qspectre-load-cf Enable spectre mitigations for all control-flow instructions which load memory /fpcvt:<IA|BC> FP to unsigned integer conversion compatibility IA - results compatible with VCVTTSD2USI instruction BC - results compatible with VS2017 and earlier compiler -OUTPUT FILES- /Fa[file] name assembly listing file /FA[scu] configure assembly listing /Fd[file] name .PDB file /Fe<file> name executable file /Fm[file] name map file /Fo<file> name object file /Fp<file> name precompiled header file /Fr[file] name source browser file /FR[file] name extended .SBR file /Fi[file] name preprocessed file /Fd: <file> name .PDB file /Fe: <file> name executable file /Fm: <file> name map file /Fo: <file> name object file /Fp: <file> name .PCH file /FR: <file> name extended .SBR file /Fi: <file> name preprocessed file /Ft<dir> location of the header files generated for #import /doc[file] process XML documentation comments and optionally name the .xdc file -PREPROCESSOR- /AI<dir> add to assembly search path /FU<file> import .NET assembly/module /FU:asFriend<file> import .NET assembly/module as friend /C don't strip comments /D<name>{=|#}<text> define macro /E preprocess to stdout /EP preprocess to stdout, no #line /P preprocess to file /Fx merge injected code to file /FI<file> name forced include file /U<name> remove predefined macro /u remove all predefined macros /I<dir> add to include search path /X ignore "standard places" /PH generate #pragma file_hash when preprocessing /PD print all macro definitions -LANGUAGE- /std:<c++14|c++17|c++20|c++latest> C++ standard version c++14 - ISO/IEC 14882:2014 (default) c++17 - ISO/IEC 14882:2017 c++20 - ISO/IEC 14882:2020 c++latest - latest draft standard (feature set subject to change) /std:<c11|c17|clatest> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 clatest - latest draft standard (feature set subject to change) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (off by default in C++20 and later) /Za disable extensions (not recommended for C++) /ZW enable WinRT language extensions /Zs syntax check only /await enable resumable functions extension /await:strict enable standard C++20 coroutine support with earlier language versions /constexpr:depth<N> recursion depth limit for constexpr evaluation (default: 512) /constexpr:backtrace<N> show N constexpr evaluations in diagnostics (default: 10) /constexpr:steps<N> terminate constexpr evaluation after N steps (default: 1048576) /Zi enable debugging information /Z7 enable old-style debug info /Zo[-] generate richer debugging information for optimized code (on by default) /ZH:[MD5|SHA1|SHA_256] hash algorithm for calculation of file checksum in debug info (default: SHA_256) /Zp[n] pack structs on n-byte boundary /Zl omit default library name in .OBJ /vd{0|1|2} disable/enable vtordisp /vm<x> type of pointers to members /Zc:arg1[,arg2] language conformance, where arguments can be: forScope[-] enforce Standard C++ for scoping rules wchar_t[-] wchar_t is the native type, not a typedef auto[-] enforce the new Standard C++ meaning for auto trigraphs[-] enable trigraphs (off by default) rvalueCast[-] enforce Standard C++ explicit type conversion rules (on by default in C++20 or later, implied by /permissive-) strictStrings[-] disable string-literal to [char|wchar_t]* conversion (on by default in C++20 or later, implied by /permissive-) implicitNoexcept[-] enable implicit noexcept on required functions threadSafeInit[-] enable thread-safe local static initialization inline[-] remove unreferenced function or data if it is COMDAT or has internal linkage only (off by default) sizedDealloc[-] enable C++14 global sized deallocation functions (on by default) throwingNew[-] assume operator new throws on failure (off by default) referenceBinding[-] a temporary will not bind to a non-const lvalue reference (on by default in C++20 or later, implied by /permissive-) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (on by default in C++20 or later, implied by /permissive-) noexceptTypes[-] enforce C++17 noexcept rules (on by default in C++17 or later) alignedNew[-] enable C++17 alignment of dynamically allocated objects (on by default) hiddenFriend[-] enforce Standard C++ hidden friend rules (on by default in C++20 or later, implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (on by default in C++20 or later, implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (on by default in C++20 or later, implied by /permissive-) tlsGuards[-] generate runtime checks for TLS variable initialization (on by default) zeroSizeArrayNew[-] call member new/delete for 0-size arrays of objects (on by default) static_assert[-] strict handling of 'static_assert' (on by default in C++20 or later, implied by /permissive-) gotoScope[-] cannot jump past the initialization of a variable (implied by /permissive-) templateScope[-] enforce Standard C++ template parameter shadowing rules enumTypes[-] enable Standard C++ underlying enum types (off by default) checkGwOdr[-] enforce Standard C++ one definition rule violations when /Gw has been enabled (off by default) nrvo[-] enable optional copy and move elision (on by default in C++20 or later, implied by /permissive- or /O2) __STDC__ define __STDC__ to 1 in C __cplusplus[-] __cplusplus macro reports the supported C++ standard (off by default) char8_t[-] enable C++20 native `u8` literal support as `const char8_t` (on by default in C++20 or later) externConstexpr[-] enable external linkage for constexpr variables in C++ (on by default in C++20 or later, implied by /permissive-) preprocessor[-] enable standard conforming preprocessor in C/C++ (on by default in C11 or later) /ZI enable Edit and Continue debug info /openmp enable OpenMP 2.0 language extensions /openmp:experimental enable OpenMP 2.0 language extensions plus select OpenMP 3.0+ language extensions /openmp:llvm OpenMP language extensions using LLVM runtime -MISCELLANEOUS- @<file> options response file /?, /help print this help message /bigobj generate extended object format /c compile only, no link /FC use full pathnames in diagnostics /H<num> max external name length /J default char type is unsigned /MP[n] use up to 'n' processes for compilation /nologo suppress copyright message /showIncludes show include file names /Tc<source file> compile file as .c /Tp<source file> compile file as .cpp /TC compile all files as .c /TP compile all files as .cpp /V<string> set version string /Yc[file] create .PCH file /Yd put debug info in every .OBJ /Yl[sym] inject .PCH ref for debug lib /Yu[file] use .PCH file /Y- disable all PCH options /Zm<n> max memory alloc (% of default) /FS force to use MSPDBSRV.EXE /source-charset:<iana-name>|.nnnn set source character set /execution-charset:<iana-name>|.nnnn set execution character set /utf-8 set source and execution character set to UTF-8 /validate-charset[-] validate UTF-8 files for only legal characters /fastfail[-] enable fast-fail mode /JMC[-] enable native just my code /presetPadding[-] zero initialize padding for stack based class types /volatileMetadata[-] generate metadata on volatile memory accesses /sourcelink [file] file containing source link information -LINKING- /LD Create .DLL /LDd Create .DLL debug library /LN Create a .netmodule /F<num> set stack size /link [linker options and libraries] /MD link with MSVCRT.LIB /MT link with LIBCMT.LIB /MDd link with MSVCRTD.LIB debug lib /MTd link with LIBCMTD.LIB debug lib -CODE ANALYSIS- /analyze[-] Enable native analysis /analyze:quiet[-] No warning to console /analyze:log<name> Warnings to file /analyze:autolog Log to *.pftlog /analyze:autolog:ext<ext> Log to *.<ext>/analyze:autolog- No log file /analyze:WX- Warnings not fatal /analyze:stacksize<num> Max stack frame /analyze:max_paths<num> Max paths /analyze:only Analyze, no code gen -DIAGNOSTICS- /diagnostics:<args,...> controls the format of diagnostic messages: classic - retains prior format column[-] - prints column information caret[-] - prints column and the indicated line of source /Wall enable all warnings /w disable all warnings /W<n> set warning level (default n=1) /Wv:xx[.yy[.zzzzz]] disable warnings introduced after version xx.yy.zzzzz /WX treat warnings as errors /WL enable one line diagnostics /wd<n> disable warning n /we<n> treat warning n as an error /wo<n> issue warning n once /w<l><n> set warning level 1-4 for n /external:I <path> - location of external headers /external:env:<var> - environment variable with locations of external headers /external:anglebrackets - treat all headers included via <> as external /external:W<n> - warning level for external headers /external:templates[-] - evaluate warning level across template instantiation chain /sdl enable additional security features and warnings /options:strict unrecognized compiler options are an error ----------- stderr: Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86 Copyright (C) Microsoft Corporation. All rights reserved. ----------- Sanity testing C compiler: cl Is cross compiler: False. Sanity check compiler command line: cl sanitycheckc.c /Fesanitycheckc.exe /MD /nologo /showIncludes /utf-8 /link Sanity check compile stdout: sanitycheckc.c ----- Sanity check compile stderr: ----- Running test binary command: C:\dev\arrow-adbc\c\builddir\meson-private\sanitycheckc.exe C compiler for the host machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C linker for the host machine: link link 14.40.33811.0 ----------- Detecting archiver via: `lib /?` -> 1100 stdout: Microsoft (R) Library Manager Version 14.40.33811.0 Copyright (C) Microsoft Corporation. All rights reserved. usage: LIB [options] [files] options: /DEF[:filename] /ERRORREPORT:{NONE|PROMPT|QUEUE|SEND} /EXPORT:symbol /EXTRACT:membername /INCLUDE:symbol /LIBPATH:dir /LINKREPRO:dir /LINKREPROTARGET:filename /LIST[:filename] /LTCG /MACHINE:{ARM|ARM64|ARM64X|EBC|X64|X86} /NAME:filename /NODEFAULTLIB[:library] /NOLOGO /OUT:filename /REMOVE:membername /SUBSYSTEM:{BOOT_APPLICATION|CONSOLE|EFI_APPLICATION| EFI_BOOT_SERVICE_DRIVER|EFI_ROM|EFI_RUNTIME_DRIVER| NATIVE|POSIX|WINDOWS|WINDOWSCE}[,#[.##]] /VERBOSE /WX[:NO] /WX[:nnnn[,nnnn...]] ----------- ----------- Detecting compiler via: `icl ""` -> [WinError 2] The system cannot find the file specified ----------- Detecting compiler via: `cl /?` -> 0 stdout: C/C++ COMPILER OPTIONS -OPTIMIZATION- /O1 maximum optimizations (favor space) /O2 maximum optimizations (favor speed) /Ob<n> inline expansion (default n=0) /Od disable optimizations (default) /Og enable global optimization /Oi[-] enable intrinsic functions /Os favor code space /Ot favor code speed /Ox optimizations (favor speed) /Oy[-] enable frame pointer omission /favor:<blend|ATOM> select processor to optimize for, one of: blend - a combination of optimizations for several different x86 processors ATOM - Intel(R) Atom(TM) processors -CODE GENERATION- /Gu[-] ensure distinct functions have distinct addresses /Gw[-] separate global variables for linker /GF enable read-only string pooling /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /guard:cf[-] enable CFG (control flow guard) /guard:ehcont[-] enable EH continuation metadata (CET) /EHs enable C++ EH (no SEH exceptions) /EHa enable C++ EH (w/ SEH exceptions) /EHc extern "C" defaults to nothrow /EHr always generate noexcept runtime termination checks /fp:<contract|except[-]|fast|precise|strict> choose floating-point model: contract - consider floating-point contractions when generating code except[-] - consider floating-point exceptions when generating code fast - "fast" floating-point model; results are less predictable precise - "precise" floating-point model; results are predictable strict - "strict" floating-point model (implies /fp:except) /Qfast_transcendentals generate inline FP intrinsics even with /fp:except /Qspectre[-] enable mitigations for CVE 2017-5753 /Qpar[-] enable parallel code generation /Qpar-report:1 auto-parallelizer diagnostic; indicate parallelized loops /Qpar-report:2 auto-parallelizer diagnostic; indicate loops not parallelized /Qvec-report:1 auto-vectorizer diagnostic; indicate vectorized loops /Qvec-report:2 auto-vectorizer diagnostic; indicate loops not vectorized /GL[-] enable link-time code generation /volatile:<iso|ms> choose volatile model: iso - Acquire/release semantics not guaranteed on volatile accesses ms - Acquire/release semantics guaranteed on volatile accesses /GA optimize for Windows Application /Ge force stack checking for all funcs /Gs[num] control stack checking calls /Gh enable _penter function call /GH enable _pexit function call /GT generate fiber-safe TLS accesses /RTC1 Enable fast checks (/RTCsu) /RTCc Convert to smaller type checks /RTCs Stack Frame runtime checking /RTCu Uninitialized local usage checks /clr[:option] compile for common language runtime, where option is: pure : produce IL-only output file (no native executable code) safe : produce IL-only verifiable output file netcore : produce assemblies targeting .NET Core runtime noAssembly : do not produce an assembly nostdlib : ignore the system .NET framework directory when searching for assemblies nostdimport : do not import any required assemblies implicitly initialAppDomain : enable initial AppDomain behavior of Visual C++ 2002 implicitKeepAlive- : turn off implicit emission of System::GC::KeepAlive(this) /fsanitize=address Enable address sanitizer codegen /Gd __cdecl calling convention /Gr __fastcall calling convention /Gz __stdcall calling convention /GZ Enable stack checks (/RTCs) /Gv __vectorcall calling convention /hotpatch ensure function padding for hotpatchable images /arch:<IA32|SSE|SSE2|AVX|AVX2|AVX512> minimum CPU architecture requirements, one of: IA32 - use no enhanced instructions and use x87 for floating point SSE - enable use of instructions available with SSE-enabled CPUs SSE2 - (default) enable use of instructions available with SSE2-enabled CPUs AVX - enable use of instructions available with AVX-enabled CPUs AVX2 - enable use of instructions available with AVX2-enabled CPUs AVX512 - enable use of instructions available with AVX-512-enabled CPUs /Qimprecise_fwaits generate FWAITs only on "try" boundaries, not inside "try" /Qsafe_fp_loads generate safe FP loads /QIntel-jcc-erratum enable mitigations for Intel JCC erratum /Qspectre-load Enable spectre mitigations for all instructions which load memory /Qspectre-load-cf Enable spectre mitigations for all control-flow instructions which load memory /fpcvt:<IA|BC> FP to unsigned integer conversion compatibility IA - results compatible with VCVTTSD2USI instruction BC - results compatible with VS2017 and earlier compiler -OUTPUT FILES- /Fa[file] name assembly listing file /FA[scu] configure assembly listing /Fd[file] name .PDB file /Fe<file> name executable file /Fm[file] name map file /Fo<file> name object file /Fp<file> name precompiled header file /Fr[file] name source browser file /FR[file] name extended .SBR file /Fi[file] name preprocessed file /Fd: <file> name .PDB file /Fe: <file> name executable file /Fm: <file> name map file /Fo: <file> name object file /Fp: <file> name .PCH file /FR: <file> name extended .SBR file /Fi: <file> name preprocessed file /Ft<dir> location of the header files generated for #import /doc[file] process XML documentation comments and optionally name the .xdc file -PREPROCESSOR- /AI<dir> add to assembly search path /FU<file> import .NET assembly/module /FU:asFriend<file> import .NET assembly/module as friend /C don't strip comments /D<name>{=|#}<text> define macro /E preprocess to stdout /EP preprocess to stdout, no #line /P preprocess to file /Fx merge injected code to file /FI<file> name forced include file /U<name> remove predefined macro /u remove all predefined macros /I<dir> add to include search path /X ignore "standard places" /PH generate #pragma file_hash when preprocessing /PD print all macro definitions -LANGUAGE- /std:<c++14|c++17|c++20|c++latest> C++ standard version c++14 - ISO/IEC 14882:2014 (default) c++17 - ISO/IEC 14882:2017 c++20 - ISO/IEC 14882:2020 c++latest - latest draft standard (feature set subject to change) /std:<c11|c17|clatest> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 clatest - latest draft standard (feature set subject to change) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (off by default in C++20 and later) /Za disable extensions (not recommended for C++) /ZW enable WinRT language extensions /Zs syntax check only /await enable resumable functions extension /await:strict enable standard C++20 coroutine support with earlier language versions /constexpr:depth<N> recursion depth limit for constexpr evaluation (default: 512) /constexpr:backtrace<N> show N constexpr evaluations in diagnostics (default: 10) /constexpr:steps<N> terminate constexpr evaluation after N steps (default: 1048576) /Zi enable debugging information /Z7 enable old-style debug info /Zo[-] generate richer debugging information for optimized code (on by default) /ZH:[MD5|SHA1|SHA_256] hash algorithm for calculation of file checksum in debug info (default: SHA_256) /Zp[n] pack structs on n-byte boundary /Zl omit default library name in .OBJ /vd{0|1|2} disable/enable vtordisp /vm<x> type of pointers to members /Zc:arg1[,arg2] language conformance, where arguments can be: forScope[-] enforce Standard C++ for scoping rules wchar_t[-] wchar_t is the native type, not a typedef auto[-] enforce the new Standard C++ meaning for auto trigraphs[-] enable trigraphs (off by default) rvalueCast[-] enforce Standard C++ explicit type conversion rules (on by default in C++20 or later, implied by /permissive-) strictStrings[-] disable string-literal to [char|wchar_t]* conversion (on by default in C++20 or later, implied by /permissive-) implicitNoexcept[-] enable implicit noexcept on required functions threadSafeInit[-] enable thread-safe local static initialization inline[-] remove unreferenced function or data if it is COMDAT or has internal linkage only (off by default) sizedDealloc[-] enable C++14 global sized deallocation functions (on by default) throwingNew[-] assume operator new throws on failure (off by default) referenceBinding[-] a temporary will not bind to a non-const lvalue reference (on by default in C++20 or later, implied by /permissive-) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (on by default in C++20 or later, implied by /permissive-) noexceptTypes[-] enforce C++17 noexcept rules (on by default in C++17 or later) alignedNew[-] enable C++17 alignment of dynamically allocated objects (on by default) hiddenFriend[-] enforce Standard C++ hidden friend rules (on by default in C++20 or later, implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (on by default in C++20 or later, implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (on by default in C++20 or later, implied by /permissive-) tlsGuards[-] generate runtime checks for TLS variable initialization (on by default) zeroSizeArrayNew[-] call member new/delete for 0-size arrays of objects (on by default) static_assert[-] strict handling of 'static_assert' (on by default in C++20 or later, implied by /permissive-) gotoScope[-] cannot jump past the initialization of a variable (implied by /permissive-) templateScope[-] enforce Standard C++ template parameter shadowing rules enumTypes[-] enable Standard C++ underlying enum types (off by default) checkGwOdr[-] enforce Standard C++ one definition rule violations when /Gw has been enabled (off by default) nrvo[-] enable optional copy and move elision (on by default in C++20 or later, implied by /permissive- or /O2) __STDC__ define __STDC__ to 1 in C __cplusplus[-] __cplusplus macro reports the supported C++ standard (off by default) char8_t[-] enable C++20 native `u8` literal support as `const char8_t` (on by default in C++20 or later) externConstexpr[-] enable external linkage for constexpr variables in C++ (on by default in C++20 or later, implied by /permissive-) preprocessor[-] enable standard conforming preprocessor in C/C++ (on by default in C11 or later) /ZI enable Edit and Continue debug info /openmp enable OpenMP 2.0 language extensions /openmp:experimental enable OpenMP 2.0 language extensions plus select OpenMP 3.0+ language extensions /openmp:llvm OpenMP language extensions using LLVM runtime -MISCELLANEOUS- @<file> options response file /?, /help print this help message /bigobj generate extended object format /c compile only, no link /FC use full pathnames in diagnostics /H<num> max external name length /J default char type is unsigned /MP[n] use up to 'n' processes for compilation /nologo suppress copyright message /showIncludes show include file names /Tc<source file> compile file as .c /Tp<source file> compile file as .cpp /TC compile all files as .c /TP compile all files as .cpp /V<string> set version string /Yc[file] create .PCH file /Yd put debug info in every .OBJ /Yl[sym] inject .PCH ref for debug lib /Yu[file] use .PCH file /Y- disable all PCH options /Zm<n> max memory alloc (% of default) /FS force to use MSPDBSRV.EXE /source-charset:<iana-name>|.nnnn set source character set /execution-charset:<iana-name>|.nnnn set execution character set /utf-8 set source and execution character set to UTF-8 /validate-charset[-] validate UTF-8 files for only legal characters /fastfail[-] enable fast-fail mode /JMC[-] enable native just my code /presetPadding[-] zero initialize padding for stack based class types /volatileMetadata[-] generate metadata on volatile memory accesses /sourcelink [file] file containing source link information -LINKING- /LD Create .DLL /LDd Create .DLL debug library /LN Create a .netmodule /F<num> set stack size /link [linker options and libraries] /MD link with MSVCRT.LIB /MT link with LIBCMT.LIB /MDd link with MSVCRTD.LIB debug lib /MTd link with LIBCMTD.LIB debug lib -CODE ANALYSIS- /analyze[-] Enable native analysis /analyze:quiet[-] No warning to console /analyze:log<name> Warnings to file /analyze:autolog Log to *.pftlog /analyze:autolog:ext<ext> Log to *.<ext>/analyze:autolog- No log file /analyze:WX- Warnings not fatal /analyze:stacksize<num> Max stack frame /analyze:max_paths<num> Max paths /analyze:only Analyze, no code gen -DIAGNOSTICS- /diagnostics:<args,...> controls the format of diagnostic messages: classic - retains prior format column[-] - prints column information caret[-] - prints column and the indicated line of source /Wall enable all warnings /w disable all warnings /W<n> set warning level (default n=1) /Wv:xx[.yy[.zzzzz]] disable warnings introduced after version xx.yy.zzzzz /WX treat warnings as errors /WL enable one line diagnostics /wd<n> disable warning n /we<n> treat warning n as an error /wo<n> issue warning n once /w<l><n> set warning level 1-4 for n /external:I <path> - location of external headers /external:env:<var> - environment variable with locations of external headers /external:anglebrackets - treat all headers included via <> as external /external:W<n> - warning level for external headers /external:templates[-] - evaluate warning level across template instantiation chain /sdl enable additional security features and warnings /options:strict unrecognized compiler options are an error ----------- stderr: Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86 Copyright (C) Microsoft Corporation. All rights reserved. ----------- Sanity testing C++ compiler: cl Is cross compiler: False. Sanity check compiler command line: cl sanitycheckcpp.cc /Fesanitycheckcpp.exe /MD /nologo /showIncludes /utf-8 /Zc:__cplusplus /link Sanity check compile stdout: sanitycheckcpp.cc ----- Sanity check compile stderr: ----- Running test binary command: C:\dev\arrow-adbc\c\builddir\meson-private\sanitycheckcpp.exe C++ compiler for the host machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C++ linker for the host machine: link link 14.40.33811.0 ----------- Detecting compiler via: `icl ""` -> [WinError 2] The system cannot find the file specified ----------- Detecting compiler via: `cl /?` -> 0 stdout: C/C++ COMPILER OPTIONS -OPTIMIZATION- /O1 maximum optimizations (favor space) /O2 maximum optimizations (favor speed) /Ob<n> inline expansion (default n=0) /Od disable optimizations (default) /Og enable global optimization /Oi[-] enable intrinsic functions /Os favor code space /Ot favor code speed /Ox optimizations (favor speed) /Oy[-] enable frame pointer omission /favor:<blend|ATOM> select processor to optimize for, one of: blend - a combination of optimizations for several different x86 processors ATOM - Intel(R) Atom(TM) processors -CODE GENERATION- /Gu[-] ensure distinct functions have distinct addresses /Gw[-] separate global variables for linker /GF enable read-only string pooling /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /guard:cf[-] enable CFG (control flow guard) /guard:ehcont[-] enable EH continuation metadata (CET) /EHs enable C++ EH (no SEH exceptions) /EHa enable C++ EH (w/ SEH exceptions) /EHc extern "C" defaults to nothrow /EHr always generate noexcept runtime termination checks /fp:<contract|except[-]|fast|precise|strict> choose floating-point model: contract - consider floating-point contractions when generating code except[-] - consider floating-point exceptions when generating code fast - "fast" floating-point model; results are less predictable precise - "precise" floating-point model; results are predictable strict - "strict" floating-point model (implies /fp:except) /Qfast_transcendentals generate inline FP intrinsics even with /fp:except /Qspectre[-] enable mitigations for CVE 2017-5753 /Qpar[-] enable parallel code generation /Qpar-report:1 auto-parallelizer diagnostic; indicate parallelized loops /Qpar-report:2 auto-parallelizer diagnostic; indicate loops not parallelized /Qvec-report:1 auto-vectorizer diagnostic; indicate vectorized loops /Qvec-report:2 auto-vectorizer diagnostic; indicate loops not vectorized /GL[-] enable link-time code generation /volatile:<iso|ms> choose volatile model: iso - Acquire/release semantics not guaranteed on volatile accesses ms - Acquire/release semantics guaranteed on volatile accesses /GA optimize for Windows Application /Ge force stack checking for all funcs /Gs[num] control stack checking calls /Gh enable _penter function call /GH enable _pexit function call /GT generate fiber-safe TLS accesses /RTC1 Enable fast checks (/RTCsu) /RTCc Convert to smaller type checks /RTCs Stack Frame runtime checking /RTCu Uninitialized local usage checks /clr[:option] compile for common language runtime, where option is: pure : produce IL-only output file (no native executable code) safe : produce IL-only verifiable output file netcore : produce assemblies targeting .NET Core runtime noAssembly : do not produce an assembly nostdlib : ignore the system .NET framework directory when searching for assemblies nostdimport : do not import any required assemblies implicitly initialAppDomain : enable initial AppDomain behavior of Visual C++ 2002 implicitKeepAlive- : turn off implicit emission of System::GC::KeepAlive(this) /fsanitize=address Enable address sanitizer codegen /Gd __cdecl calling convention /Gr __fastcall calling convention /Gz __stdcall calling convention /GZ Enable stack checks (/RTCs) /Gv __vectorcall calling convention /hotpatch ensure function padding for hotpatchable images /arch:<IA32|SSE|SSE2|AVX|AVX2|AVX512> minimum CPU architecture requirements, one of: IA32 - use no enhanced instructions and use x87 for floating point SSE - enable use of instructions available with SSE-enabled CPUs SSE2 - (default) enable use of instructions available with SSE2-enabled CPUs AVX - enable use of instructions available with AVX-enabled CPUs AVX2 - enable use of instructions available with AVX2-enabled CPUs AVX512 - enable use of instructions available with AVX-512-enabled CPUs /Qimprecise_fwaits generate FWAITs only on "try" boundaries, not inside "try" /Qsafe_fp_loads generate safe FP loads /QIntel-jcc-erratum enable mitigations for Intel JCC erratum /Qspectre-load Enable spectre mitigations for all instructions which load memory /Qspectre-load-cf Enable spectre mitigations for all control-flow instructions which load memory /fpcvt:<IA|BC> FP to unsigned integer conversion compatibility IA - results compatible with VCVTTSD2USI instruction BC - results compatible with VS2017 and earlier compiler -OUTPUT FILES- /Fa[file] name assembly listing file /FA[scu] configure assembly listing /Fd[file] name .PDB file /Fe<file> name executable file /Fm[file] name map file /Fo<file> name object file /Fp<file> name precompiled header file /Fr[file] name source browser file /FR[file] name extended .SBR file /Fi[file] name preprocessed file /Fd: <file> name .PDB file /Fe: <file> name executable file /Fm: <file> name map file /Fo: <file> name object file /Fp: <file> name .PCH file /FR: <file> name extended .SBR file /Fi: <file> name preprocessed file /Ft<dir> location of the header files generated for #import /doc[file] process XML documentation comments and optionally name the .xdc file -PREPROCESSOR- /AI<dir> add to assembly search path /FU<file> import .NET assembly/module /FU:asFriend<file> import .NET assembly/module as friend /C don't strip comments /D<name>{=|#}<text> define macro /E preprocess to stdout /EP preprocess to stdout, no #line /P preprocess to file /Fx merge injected code to file /FI<file> name forced include file /U<name> remove predefined macro /u remove all predefined macros /I<dir> add to include search path /X ignore "standard places" /PH generate #pragma file_hash when preprocessing /PD print all macro definitions -LANGUAGE- /std:<c++14|c++17|c++20|c++latest> C++ standard version c++14 - ISO/IEC 14882:2014 (default) c++17 - ISO/IEC 14882:2017 c++20 - ISO/IEC 14882:2020 c++latest - latest draft standard (feature set subject to change) /std:<c11|c17|clatest> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 clatest - latest draft standard (feature set subject to change) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (off by default in C++20 and later) /Za disable extensions (not recommended for C++) /ZW enable WinRT language extensions /Zs syntax check only /await enable resumable functions extension /await:strict enable standard C++20 coroutine support with earlier language versions /constexpr:depth<N> recursion depth limit for constexpr evaluation (default: 512) /constexpr:backtrace<N> show N constexpr evaluations in diagnostics (default: 10) /constexpr:steps<N> terminate constexpr evaluation after N steps (default: 1048576) /Zi enable debugging information /Z7 enable old-style debug info /Zo[-] generate richer debugging information for optimized code (on by default) /ZH:[MD5|SHA1|SHA_256] hash algorithm for calculation of file checksum in debug info (default: SHA_256) /Zp[n] pack structs on n-byte boundary /Zl omit default library name in .OBJ /vd{0|1|2} disable/enable vtordisp /vm<x> type of pointers to members /Zc:arg1[,arg2] language conformance, where arguments can be: forScope[-] enforce Standard C++ for scoping rules wchar_t[-] wchar_t is the native type, not a typedef auto[-] enforce the new Standard C++ meaning for auto trigraphs[-] enable trigraphs (off by default) rvalueCast[-] enforce Standard C++ explicit type conversion rules (on by default in C++20 or later, implied by /permissive-) strictStrings[-] disable string-literal to [char|wchar_t]* conversion (on by default in C++20 or later, implied by /permissive-) implicitNoexcept[-] enable implicit noexcept on required functions threadSafeInit[-] enable thread-safe local static initialization inline[-] remove unreferenced function or data if it is COMDAT or has internal linkage only (off by default) sizedDealloc[-] enable C++14 global sized deallocation functions (on by default) throwingNew[-] assume operator new throws on failure (off by default) referenceBinding[-] a temporary will not bind to a non-const lvalue reference (on by default in C++20 or later, implied by /permissive-) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (on by default in C++20 or later, implied by /permissive-) noexceptTypes[-] enforce C++17 noexcept rules (on by default in C++17 or later) alignedNew[-] enable C++17 alignment of dynamically allocated objects (on by default) hiddenFriend[-] enforce Standard C++ hidden friend rules (on by default in C++20 or later, implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (on by default in C++20 or later, implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (on by default in C++20 or later, implied by /permissive-) tlsGuards[-] generate runtime checks for TLS variable initialization (on by default) zeroSizeArrayNew[-] call member new/delete for 0-size arrays of objects (on by default) static_assert[-] strict handling of 'static_assert' (on by default in C++20 or later, implied by /permissive-) gotoScope[-] cannot jump past the initialization of a variable (implied by /permissive-) templateScope[-] enforce Standard C++ template parameter shadowing rules enumTypes[-] enable Standard C++ underlying enum types (off by default) checkGwOdr[-] enforce Standard C++ one definition rule violations when /Gw has been enabled (off by default) nrvo[-] enable optional copy and move elision (on by default in C++20 or later, implied by /permissive- or /O2) __STDC__ define __STDC__ to 1 in C __cplusplus[-] __cplusplus macro reports the supported C++ standard (off by default) char8_t[-] enable C++20 native `u8` literal support as `const char8_t` (on by default in C++20 or later) externConstexpr[-] enable external linkage for constexpr variables in C++ (on by default in C++20 or later, implied by /permissive-) preprocessor[-] enable standard conforming preprocessor in C/C++ (on by default in C11 or later) /ZI enable Edit and Continue debug info /openmp enable OpenMP 2.0 language extensions /openmp:experimental enable OpenMP 2.0 language extensions plus select OpenMP 3.0+ language extensions /openmp:llvm OpenMP language extensions using LLVM runtime -MISCELLANEOUS- @<file> options response file /?, /help print this help message /bigobj generate extended object format /c compile only, no link /FC use full pathnames in diagnostics /H<num> max external name length /J default char type is unsigned /MP[n] use up to 'n' processes for compilation /nologo suppress copyright message /showIncludes show include file names /Tc<source file> compile file as .c /Tp<source file> compile file as .cpp /TC compile all files as .c /TP compile all files as .cpp /V<string> set version string /Yc[file] create .PCH file /Yd put debug info in every .OBJ /Yl[sym] inject .PCH ref for debug lib /Yu[file] use .PCH file /Y- disable all PCH options /Zm<n> max memory alloc (% of default) /FS force to use MSPDBSRV.EXE /source-charset:<iana-name>|.nnnn set source character set /execution-charset:<iana-name>|.nnnn set execution character set /utf-8 set source and execution character set to UTF-8 /validate-charset[-] validate UTF-8 files for only legal characters /fastfail[-] enable fast-fail mode /JMC[-] enable native just my code /presetPadding[-] zero initialize padding for stack based class types /volatileMetadata[-] generate metadata on volatile memory accesses /sourcelink [file] file containing source link information -LINKING- /LD Create .DLL /LDd Create .DLL debug library /LN Create a .netmodule /F<num> set stack size /link [linker options and libraries] /MD link with MSVCRT.LIB /MT link with LIBCMT.LIB /MDd link with MSVCRTD.LIB debug lib /MTd link with LIBCMTD.LIB debug lib -CODE ANALYSIS- /analyze[-] Enable native analysis /analyze:quiet[-] No warning to console /analyze:log<name> Warnings to file /analyze:autolog Log to *.pftlog /analyze:autolog:ext<ext> Log to *.<ext>/analyze:autolog- No log file /analyze:WX- Warnings not fatal /analyze:stacksize<num> Max stack frame /analyze:max_paths<num> Max paths /analyze:only Analyze, no code gen -DIAGNOSTICS- /diagnostics:<args,...> controls the format of diagnostic messages: classic - retains prior format column[-] - prints column information caret[-] - prints column and the indicated line of source /Wall enable all warnings /w disable all warnings /W<n> set warning level (default n=1) /Wv:xx[.yy[.zzzzz]] disable warnings introduced after version xx.yy.zzzzz /WX treat warnings as errors /WL enable one line diagnostics /wd<n> disable warning n /we<n> treat warning n as an error /wo<n> issue warning n once /w<l><n> set warning level 1-4 for n /external:I <path> - location of external headers /external:env:<var> - environment variable with locations of external headers /external:anglebrackets - treat all headers included via <> as external /external:W<n> - warning level for external headers /external:templates[-] - evaluate warning level across template instantiation chain /sdl enable additional security features and warnings /options:strict unrecognized compiler options are an error ----------- stderr: Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86 Copyright (C) Microsoft Corporation. All rights reserved. ----------- Sanity testing C compiler: cl Is cross compiler: False. Sanity check compiler command line: cl sanitycheckc.c /Fesanitycheckc.exe /MD /nologo /showIncludes /utf-8 /link Sanity check compile stdout: sanitycheckc.c ----- Sanity check compile stderr: ----- Running test binary command: C:\dev\arrow-adbc\c\builddir\meson-private\sanitycheckc.exe C compiler for the build machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C linker for the build machine: link link 14.40.33811.0 ----------- Detecting archiver via: `lib /?` -> 1100 stdout: Microsoft (R) Library Manager Version 14.40.33811.0 Copyright (C) Microsoft Corporation. All rights reserved. usage: LIB [options] [files] options: /DEF[:filename] /ERRORREPORT:{NONE|PROMPT|QUEUE|SEND} /EXPORT:symbol /EXTRACT:membername /INCLUDE:symbol /LIBPATH:dir /LINKREPRO:dir /LINKREPROTARGET:filename /LIST[:filename] /LTCG /MACHINE:{ARM|ARM64|ARM64X|EBC|X64|X86} /NAME:filename /NODEFAULTLIB[:library] /NOLOGO /OUT:filename /REMOVE:membername /SUBSYSTEM:{BOOT_APPLICATION|CONSOLE|EFI_APPLICATION| EFI_BOOT_SERVICE_DRIVER|EFI_ROM|EFI_RUNTIME_DRIVER| NATIVE|POSIX|WINDOWS|WINDOWSCE}[,#[.##]] /VERBOSE /WX[:NO] /WX[:nnnn[,nnnn...]] ----------- ----------- Detecting compiler via: `icl ""` -> [WinError 2] The system cannot find the file specified ----------- Detecting compiler via: `cl /?` -> 0 stdout: C/C++ COMPILER OPTIONS -OPTIMIZATION- /O1 maximum optimizations (favor space) /O2 maximum optimizations (favor speed) /Ob<n> inline expansion (default n=0) /Od disable optimizations (default) /Og enable global optimization /Oi[-] enable intrinsic functions /Os favor code space /Ot favor code speed /Ox optimizations (favor speed) /Oy[-] enable frame pointer omission /favor:<blend|ATOM> select processor to optimize for, one of: blend - a combination of optimizations for several different x86 processors ATOM - Intel(R) Atom(TM) processors -CODE GENERATION- /Gu[-] ensure distinct functions have distinct addresses /Gw[-] separate global variables for linker /GF enable read-only string pooling /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /guard:cf[-] enable CFG (control flow guard) /guard:ehcont[-] enable EH continuation metadata (CET) /EHs enable C++ EH (no SEH exceptions) /EHa enable C++ EH (w/ SEH exceptions) /EHc extern "C" defaults to nothrow /EHr always generate noexcept runtime termination checks /fp:<contract|except[-]|fast|precise|strict> choose floating-point model: contract - consider floating-point contractions when generating code except[-] - consider floating-point exceptions when generating code fast - "fast" floating-point model; results are less predictable precise - "precise" floating-point model; results are predictable strict - "strict" floating-point model (implies /fp:except) /Qfast_transcendentals generate inline FP intrinsics even with /fp:except /Qspectre[-] enable mitigations for CVE 2017-5753 /Qpar[-] enable parallel code generation /Qpar-report:1 auto-parallelizer diagnostic; indicate parallelized loops /Qpar-report:2 auto-parallelizer diagnostic; indicate loops not parallelized /Qvec-report:1 auto-vectorizer diagnostic; indicate vectorized loops /Qvec-report:2 auto-vectorizer diagnostic; indicate loops not vectorized /GL[-] enable link-time code generation /volatile:<iso|ms> choose volatile model: iso - Acquire/release semantics not guaranteed on volatile accesses ms - Acquire/release semantics guaranteed on volatile accesses /GA optimize for Windows Application /Ge force stack checking for all funcs /Gs[num] control stack checking calls /Gh enable _penter function call /GH enable _pexit function call /GT generate fiber-safe TLS accesses /RTC1 Enable fast checks (/RTCsu) /RTCc Convert to smaller type checks /RTCs Stack Frame runtime checking /RTCu Uninitialized local usage checks /clr[:option] compile for common language runtime, where option is: pure : produce IL-only output file (no native executable code) safe : produce IL-only verifiable output file netcore : produce assemblies targeting .NET Core runtime noAssembly : do not produce an assembly nostdlib : ignore the system .NET framework directory when searching for assemblies nostdimport : do not import any required assemblies implicitly initialAppDomain : enable initial AppDomain behavior of Visual C++ 2002 implicitKeepAlive- : turn off implicit emission of System::GC::KeepAlive(this) /fsanitize=address Enable address sanitizer codegen /Gd __cdecl calling convention /Gr __fastcall calling convention /Gz __stdcall calling convention /GZ Enable stack checks (/RTCs) /Gv __vectorcall calling convention /hotpatch ensure function padding for hotpatchable images /arch:<IA32|SSE|SSE2|AVX|AVX2|AVX512> minimum CPU architecture requirements, one of: IA32 - use no enhanced instructions and use x87 for floating point SSE - enable use of instructions available with SSE-enabled CPUs SSE2 - (default) enable use of instructions available with SSE2-enabled CPUs AVX - enable use of instructions available with AVX-enabled CPUs AVX2 - enable use of instructions available with AVX2-enabled CPUs AVX512 - enable use of instructions available with AVX-512-enabled CPUs /Qimprecise_fwaits generate FWAITs only on "try" boundaries, not inside "try" /Qsafe_fp_loads generate safe FP loads /QIntel-jcc-erratum enable mitigations for Intel JCC erratum /Qspectre-load Enable spectre mitigations for all instructions which load memory /Qspectre-load-cf Enable spectre mitigations for all control-flow instructions which load memory /fpcvt:<IA|BC> FP to unsigned integer conversion compatibility IA - results compatible with VCVTTSD2USI instruction BC - results compatible with VS2017 and earlier compiler -OUTPUT FILES- /Fa[file] name assembly listing file /FA[scu] configure assembly listing /Fd[file] name .PDB file /Fe<file> name executable file /Fm[file] name map file /Fo<file> name object file /Fp<file> name precompiled header file /Fr[file] name source browser file /FR[file] name extended .SBR file /Fi[file] name preprocessed file /Fd: <file> name .PDB file /Fe: <file> name executable file /Fm: <file> name map file /Fo: <file> name object file /Fp: <file> name .PCH file /FR: <file> name extended .SBR file /Fi: <file> name preprocessed file /Ft<dir> location of the header files generated for #import /doc[file] process XML documentation comments and optionally name the .xdc file -PREPROCESSOR- /AI<dir> add to assembly search path /FU<file> import .NET assembly/module /FU:asFriend<file> import .NET assembly/module as friend /C don't strip comments /D<name>{=|#}<text> define macro /E preprocess to stdout /EP preprocess to stdout, no #line /P preprocess to file /Fx merge injected code to file /FI<file> name forced include file /U<name> remove predefined macro /u remove all predefined macros /I<dir> add to include search path /X ignore "standard places" /PH generate #pragma file_hash when preprocessing /PD print all macro definitions -LANGUAGE- /std:<c++14|c++17|c++20|c++latest> C++ standard version c++14 - ISO/IEC 14882:2014 (default) c++17 - ISO/IEC 14882:2017 c++20 - ISO/IEC 14882:2020 c++latest - latest draft standard (feature set subject to change) /std:<c11|c17|clatest> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 clatest - latest draft standard (feature set subject to change) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (off by default in C++20 and later) /Za disable extensions (not recommended for C++) /ZW enable WinRT language extensions /Zs syntax check only /await enable resumable functions extension /await:strict enable standard C++20 coroutine support with earlier language versions /constexpr:depth<N> recursion depth limit for constexpr evaluation (default: 512) /constexpr:backtrace<N> show N constexpr evaluations in diagnostics (default: 10) /constexpr:steps<N> terminate constexpr evaluation after N steps (default: 1048576) /Zi enable debugging information /Z7 enable old-style debug info /Zo[-] generate richer debugging information for optimized code (on by default) /ZH:[MD5|SHA1|SHA_256] hash algorithm for calculation of file checksum in debug info (default: SHA_256) /Zp[n] pack structs on n-byte boundary /Zl omit default library name in .OBJ /vd{0|1|2} disable/enable vtordisp /vm<x> type of pointers to members /Zc:arg1[,arg2] language conformance, where arguments can be: forScope[-] enforce Standard C++ for scoping rules wchar_t[-] wchar_t is the native type, not a typedef auto[-] enforce the new Standard C++ meaning for auto trigraphs[-] enable trigraphs (off by default) rvalueCast[-] enforce Standard C++ explicit type conversion rules (on by default in C++20 or later, implied by /permissive-) strictStrings[-] disable string-literal to [char|wchar_t]* conversion (on by default in C++20 or later, implied by /permissive-) implicitNoexcept[-] enable implicit noexcept on required functions threadSafeInit[-] enable thread-safe local static initialization inline[-] remove unreferenced function or data if it is COMDAT or has internal linkage only (off by default) sizedDealloc[-] enable C++14 global sized deallocation functions (on by default) throwingNew[-] assume operator new throws on failure (off by default) referenceBinding[-] a temporary will not bind to a non-const lvalue reference (on by default in C++20 or later, implied by /permissive-) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (on by default in C++20 or later, implied by /permissive-) noexceptTypes[-] enforce C++17 noexcept rules (on by default in C++17 or later) alignedNew[-] enable C++17 alignment of dynamically allocated objects (on by default) hiddenFriend[-] enforce Standard C++ hidden friend rules (on by default in C++20 or later, implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (on by default in C++20 or later, implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (on by default in C++20 or later, implied by /permissive-) tlsGuards[-] generate runtime checks for TLS variable initialization (on by default) zeroSizeArrayNew[-] call member new/delete for 0-size arrays of objects (on by default) static_assert[-] strict handling of 'static_assert' (on by default in C++20 or later, implied by /permissive-) gotoScope[-] cannot jump past the initialization of a variable (implied by /permissive-) templateScope[-] enforce Standard C++ template parameter shadowing rules enumTypes[-] enable Standard C++ underlying enum types (off by default) checkGwOdr[-] enforce Standard C++ one definition rule violations when /Gw has been enabled (off by default) nrvo[-] enable optional copy and move elision (on by default in C++20 or later, implied by /permissive- or /O2) __STDC__ define __STDC__ to 1 in C __cplusplus[-] __cplusplus macro reports the supported C++ standard (off by default) char8_t[-] enable C++20 native `u8` literal support as `const char8_t` (on by default in C++20 or later) externConstexpr[-] enable external linkage for constexpr variables in C++ (on by default in C++20 or later, implied by /permissive-) preprocessor[-] enable standard conforming preprocessor in C/C++ (on by default in C11 or later) /ZI enable Edit and Continue debug info /openmp enable OpenMP 2.0 language extensions /openmp:experimental enable OpenMP 2.0 language extensions plus select OpenMP 3.0+ language extensions /openmp:llvm OpenMP language extensions using LLVM runtime -MISCELLANEOUS- @<file> options response file /?, /help print this help message /bigobj generate extended object format /c compile only, no link /FC use full pathnames in diagnostics /H<num> max external name length /J default char type is unsigned /MP[n] use up to 'n' processes for compilation /nologo suppress copyright message /showIncludes show include file names /Tc<source file> compile file as .c /Tp<source file> compile file as .cpp /TC compile all files as .c /TP compile all files as .cpp /V<string> set version string /Yc[file] create .PCH file /Yd put debug info in every .OBJ /Yl[sym] inject .PCH ref for debug lib /Yu[file] use .PCH file /Y- disable all PCH options /Zm<n> max memory alloc (% of default) /FS force to use MSPDBSRV.EXE /source-charset:<iana-name>|.nnnn set source character set /execution-charset:<iana-name>|.nnnn set execution character set /utf-8 set source and execution character set to UTF-8 /validate-charset[-] validate UTF-8 files for only legal characters /fastfail[-] enable fast-fail mode /JMC[-] enable native just my code /presetPadding[-] zero initialize padding for stack based class types /volatileMetadata[-] generate metadata on volatile memory accesses /sourcelink [file] file containing source link information -LINKING- /LD Create .DLL /LDd Create .DLL debug library /LN Create a .netmodule /F<num> set stack size /link [linker options and libraries] /MD link with MSVCRT.LIB /MT link with LIBCMT.LIB /MDd link with MSVCRTD.LIB debug lib /MTd link with LIBCMTD.LIB debug lib -CODE ANALYSIS- /analyze[-] Enable native analysis /analyze:quiet[-] No warning to console /analyze:log<name> Warnings to file /analyze:autolog Log to *.pftlog /analyze:autolog:ext<ext> Log to *.<ext>/analyze:autolog- No log file /analyze:WX- Warnings not fatal /analyze:stacksize<num> Max stack frame /analyze:max_paths<num> Max paths /analyze:only Analyze, no code gen -DIAGNOSTICS- /diagnostics:<args,...> controls the format of diagnostic messages: classic - retains prior format column[-] - prints column information caret[-] - prints column and the indicated line of source /Wall enable all warnings /w disable all warnings /W<n> set warning level (default n=1) /Wv:xx[.yy[.zzzzz]] disable warnings introduced after version xx.yy.zzzzz /WX treat warnings as errors /WL enable one line diagnostics /wd<n> disable warning n /we<n> treat warning n as an error /wo<n> issue warning n once /w<l><n> set warning level 1-4 for n /external:I <path> - location of external headers /external:env:<var> - environment variable with locations of external headers /external:anglebrackets - treat all headers included via <> as external /external:W<n> - warning level for external headers /external:templates[-] - evaluate warning level across template instantiation chain /sdl enable additional security features and warnings /options:strict unrecognized compiler options are an error ----------- stderr: Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86 Copyright (C) Microsoft Corporation. All rights reserved. ----------- Sanity testing C++ compiler: cl Is cross compiler: False. Sanity check compiler command line: cl sanitycheckcpp.cc /Fesanitycheckcpp.exe /MD /nologo /showIncludes /utf-8 /Zc:__cplusplus /link Sanity check compile stdout: sanitycheckcpp.cc ----- Sanity check compile stderr: ----- Running test binary command: C:\dev\arrow-adbc\c\builddir\meson-private\sanitycheckcpp.exe C++ compiler for the build machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C++ linker for the build machine: link link 14.40.33811.0 Build machine cpu family: x86 Build machine cpu: x86 Host machine cpu family: x86 Host machine cpu: x86 Target machine cpu family: x86 Target machine cpu: x86 Pkg-config binary missing from cross or native file, or env var undefined. Trying a default Pkg-config fallback at pkg-config Found pkg-config: YES (C:\msys64\ucrt64\bin\pkg-config.EXE) 2.3.0 Determining dependency 'nanoarrow' with pkg-config executable 'C:\\msys64\\ucrt64\\bin\\pkg-config.EXE' env[PKG_CONFIG_PATH]: env[PKG_CONFIG]: C:\msys64\ucrt64\bin\pkg-config.EXE ----------- Called: `C:\msys64\ucrt64\bin\pkg-config.EXE --modversion nanoarrow` -> 1 stderr: Package nanoarrow was not found in the pkg-config search path. Perhaps you should add the directory containing `nanoarrow.pc' to the PKG_CONFIG_PATH environment variable Package 'nanoarrow' not found ----------- CMake binary for host machine is not cached CMake binary missing from cross or native file, or env var undefined. Trying a default CMake fallback at cmake Found CMake: C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.EXE (3.28.3) Extracting basic cmake information CMake Toolchain: Calling CMake once to generate the compiler state Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Professional\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\dev\arrow-adbc\c\builddir\meson-private\__CMake_compiler_info__ with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-G" - "Ninja" - "-DCMAKE_TOOLCHAIN_FILE=C:/dev/arrow-adbc/c/builddir/meson-private/__CMake_compiler_info__/CMakeMesonTempToolchainFile.cmake" - "." Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Professional\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\dev\arrow-adbc\c\builddir\meson-private\cmake_nanoarrow with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/dev/arrow-adbc/c/builddir/meson-private/cmake_nanoarrow/CMakeMesonToolchainFile.cmake" - "." -- Module search paths: ['C:/Program Files', 'C:/Program Files (x86)', 'C:/Program Files/Microsoft Visual Studio/2022/Professional/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake'] -- CMake root: C:/Program Files/Microsoft Visual Studio/2022/Professional/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.28 -- CMake architectures: [] -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share', ''] Preliminary CMake check failed. Aborting. Run-time dependency nanoarrow found: NO (tried pkgconfig and cmake) Looking for a fallback subproject for the dependency nanoarrow Executing subproject nanoarrow Project name: nanoarrow Project version: 0.6.0 C compiler for the host machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C linker for the host machine: link link 14.40.33811.0 C++ compiler for the host machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C++ linker for the host machine: link link 14.40.33811.0 C compiler for the build machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C linker for the build machine: link link 14.40.33811.0 C++ compiler for the build machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C++ linker for the build machine: link link 14.40.33811.0 Running compile: Working directory: C:\dev\arrow-adbc\c\builddir\meson-private\tmpmojb6ewv Code: extern int i; int i; ----------- Command line: `cl C:\dev\arrow-adbc\c\builddir\meson-private\tmpmojb6ewv\testfile.c /FoC:\dev\arrow-adbc\c\builddir\meson-private\tmpmojb6ewv\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi- -Wmisleading-indentation -Wno-misleading-indentation` -> 2 stderr: cl : Command line error D8021 : invalid numeric argument '/Wmisleading-indentation' ----------- Compiler for C supports arguments -Wno-misleading-indentation: NO Running compile: Working directory: C:\dev\arrow-adbc\c\builddir\meson-private\tmpkwob453n Code: extern int i; int i; ----------- Command line: `cl C:\dev\arrow-adbc\c\builddir\meson-private\tmpkwob453n\testfile.cpp /FoC:\dev\arrow-adbc\c\builddir\meson-private\tmpkwob453n\output.obj /nologo /showIncludes /utf-8 /Zc:__cplusplus /c /nologo /showIncludes /utf-8 /Zc:__cplusplus /c /Od /Oi- -Wmisleading-indentation -Wno-misleading-indentation` -> 2 stderr: cl : Command line error D8021 : invalid numeric argument '/Wmisleading-indentation' ----------- Compiler for C++ supports arguments -Wno-misleading-indentation: NO Configuring nanoarrow_config.h using configuration Build targets in project: 1 Subproject nanoarrow finished. Dependency nanoarrow from subproject subprojects/arrow-nanoarrow-33d2c8b973d8f8f424e02ac92ddeaace2a92f8dd found: YES 0.6.0 Determining dependency 'fmt' with pkg-config executable 'C:\\msys64\\ucrt64\\bin\\pkg-config.EXE' env[PKG_CONFIG_PATH]: env[PKG_CONFIG]: C:\msys64\ucrt64\bin\pkg-config.EXE ----------- Called: `C:\msys64\ucrt64\bin\pkg-config.EXE --modversion fmt` -> 1 stderr: Package fmt was not found in the pkg-config search path. Perhaps you should add the directory containing `fmt.pc' to the PKG_CONFIG_PATH environment variable Package 'fmt' not found ----------- CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency fmt found: NO (tried pkgconfig and cmake) Looking for a fallback subproject for the dependency fmt Executing subproject fmt Project name: fmt Project version: 10.2.0 C++ compiler for the host machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C++ linker for the host machine: link link 14.40.33811.0 C++ compiler for the build machine: cl (msvc 19.40.33811 "Microsoft (R) C/C++ Optimizing Compiler Version 19.40.33811 for x86") C++ linker for the build machine: link link 14.40.33811.0 Build targets in project: 2 Subproject fmt finished. Dependency fmt found: YES 10.2.0 (overridden) Program go found: YES (C:\Program Files\Go\bin\go.EXE) driver\flightsql\meson.build:69:19: ERROR: Unknown variable "adbc_validation_dep". ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org