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

Reply via email to