public inbox for [email protected]help / color / mirror / Atom feed
[PATCH] Fix timeline-tracking failure while sending a historic timeline 5+ messages / 3 participants [nested] [flat]
* [PATCH] Fix timeline-tracking failure while sending a historic timeline @ 2021-01-05 04:34 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 5+ messages in thread From: Kyotaro Horiguchi @ 2021-01-05 04:34 UTC (permalink / raw) Walsender should track timeline switches while sending a historic timeline. Regain that behavior, which was broken in PG13, by a thinko of 709d003fbd. Backpatch to PG13. --- src/backend/replication/walsender.c | 2 +- src/test/perl/PostgresNode.pm | 36 ++++++++++++++++++++ src/test/recovery/t/001_stream_rep.pl | 41 ++++++++++++++++++++++- src/test/recovery/t/019_replslot_limit.pl | 37 ++++---------------- 4 files changed, 83 insertions(+), 33 deletions(-) diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c index 7f87eb7f19..04f6c3ebb4 100644 --- a/src/backend/replication/walsender.c +++ b/src/backend/replication/walsender.c @@ -2478,7 +2478,7 @@ WalSndSegmentOpen(XLogReaderState *state, XLogSegNo nextSegNo, XLogSegNo endSegNo; XLByteToSeg(sendTimeLineValidUpto, endSegNo, state->segcxt.ws_segsize); - if (state->seg.ws_segno == endSegNo) + if (nextSegNo == endSegNo) *tli_p = sendTimeLineNextTLI; } diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index 980f1f1533..a08c71b549 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -2138,6 +2138,42 @@ sub pg_recvlogical_upto =pod +=item $node->current_log_position() + +Return the current position of server log. + +=cut + +sub current_log_position +{ + my $self = shift; + + return (stat $self->logfile)[7]; +} + +=pod + +=item $node->find_in_log($pattern, $startpos) + +Returns whether the $pattern occurs after $startpos in the server log. + +=cut + +sub find_in_log +{ + my ($self, $pattern, $startpos) = @_; + + $startpos = 0 unless defined $startpos; + my $log = TestLib::slurp_file($self->logfile); + return 0 if (length($log) <= $startpos); + + $log = substr($log, $startpos); + + return $log =~ m/$pattern/; +} + +=pod + =back =cut diff --git a/src/test/recovery/t/001_stream_rep.pl b/src/test/recovery/t/001_stream_rep.pl index 778f11b28b..8d2b24fe55 100644 --- a/src/test/recovery/t/001_stream_rep.pl +++ b/src/test/recovery/t/001_stream_rep.pl @@ -2,8 +2,9 @@ use strict; use warnings; use PostgresNode; +use Time::HiRes qw(usleep); use TestLib; -use Test::More tests => 36; +use Test::More tests => 37; # Initialize master node my $node_master = get_new_node('master'); @@ -409,3 +410,41 @@ ok( ($phys_restart_lsn_pre cmp $phys_restart_lsn_post) == 0, my $master_data = $node_master->data_dir; ok(!-f "$master_data/pg_wal/$segment_removed", "WAL segment $segment_removed recycled after physical slot advancing"); + +# +# Check if timeline-increment works while reading a historic timeline. +my $node_primary_2 = get_new_node('primary_2'); +# archiving is needed to create .paritial segment +$node_primary_2->init(allows_streaming => 1, has_archiving => 1); +$node_primary_2->start; +$node_primary_2->backup($backup_name); +my $node_standby_3 = get_new_node('standby_3'); +$node_standby_3->init_from_backup($node_primary_2, $backup_name, + has_streaming => 1); +$node_primary_2->stop; +$node_primary_2->set_standby_mode; # increment primary timeline +$node_primary_2->start; +$node_primary_2->promote; +my $logstart = $node_standby_3->current_log_position(); +$node_standby_3->start; + +my $success = 0; +for (my $i = 0 ; $i < 1000; $i++) +{ + if ($node_standby_3->find_in_log( + "requested WAL segment [0-9A-F]+ has already been removed", + $logstart)) + { + last; + } + elsif ($node_standby_3->find_in_log( + "End of WAL reached on timeline", + $logstart)) + { + $success = 1; + last; + } + usleep(100_000); +} + +ok($success, 'Timeline increment while reading a historic timeline'); diff --git a/src/test/recovery/t/019_replslot_limit.pl b/src/test/recovery/t/019_replslot_limit.pl index a7231dcd47..8b3c5de057 100644 --- a/src/test/recovery/t/019_replslot_limit.pl +++ b/src/test/recovery/t/019_replslot_limit.pl @@ -165,19 +165,17 @@ $node_master->wait_for_catchup($node_standby, 'replay', $start_lsn); $node_standby->stop; -ok( !find_in_log( - $node_standby, - "requested WAL segment [0-9A-F]+ has already been removed"), +ok( !$node_standby->find_in_log( + "requested WAL segment [0-9A-F]+ has already been removed"), 'check that required WAL segments are still available'); # Advance WAL again, the slot loses the oldest segment. -my $logstart = get_log_size($node_master); +my $logstart = $node_master->current_log_position(); advance_wal($node_master, 7); $node_master->safe_psql('postgres', "CHECKPOINT;"); # WARNING should be issued -ok( find_in_log( - $node_master, +ok( $node_master->find_in_log( "invalidating slot \"rep1\" because its restart_lsn [0-9A-F/]+ exceeds max_slot_wal_keep_size", $logstart), 'check that the warning is logged'); @@ -190,14 +188,13 @@ is($result, "rep1|f|t|lost|", 'check that the slot became inactive and the state "lost" persists'); # The standby no longer can connect to the master -$logstart = get_log_size($node_standby); +$logstart = $node_standby->current_log_position(); $node_standby->start; my $failed = 0; for (my $i = 0; $i < 10000; $i++) { - if (find_in_log( - $node_standby, + if ($node_standby->find_in_log( "requested WAL segment [0-9A-F]+ has already been removed", $logstart)) { @@ -264,25 +261,3 @@ sub advance_wal } return; } - -# return the size of logfile of $node in bytes -sub get_log_size -{ - my ($node) = @_; - - return (stat $node->logfile)[7]; -} - -# find $pat in logfile of $node after $off-th byte -sub find_in_log -{ - my ($node, $pat, $off) = @_; - - $off = 0 unless defined $off; - my $log = TestLib::slurp_file($node->logfile); - return 0 if (length($log) <= $off); - - $log = substr($log, $off); - - return $log =~ m/$pat/; -} -- 2.27.0 ----Next_Part(Thu_Jan__7_16_32_36_2021_122)---- ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: Trying to build x86 version on windows using meson @ 2024-03-21 11:11 Dave Cramer <[email protected]> 0 siblings, 1 reply; 5+ messages in thread From: Dave Cramer @ 2024-03-21 11:11 UTC (permalink / raw) To: Peter Eisentraut <[email protected]>; +Cc: Andres Freund <[email protected]>; PostgreSQL Hackers <[email protected]> On Thu, 21 Mar 2024 at 03:56, Peter Eisentraut <[email protected]> wrote: > On 20.03.24 22:49, Dave Cramer wrote: > > > > > > > > On Wed, 20 Mar 2024 at 17:11, Andres Freund <[email protected] > > <mailto:[email protected]>> wrote: > > > > Hi, > > > > On 2024-03-20 16:14:23 -0400, Dave Cramer wrote: > > > I am getting the following error > > > > > > meson.build:1479:17: ERROR: Can not run test applications in this > > cross > > > environment. > > > > > > Have configured for amd64_x86 > > > > > > Running `meson setup --wipe build --prefix=c:\postgres86` > > > > This is not enough information to debug anything. At the very least > > we need > > the exact steps performed to set up the build and > > meson-logs/meson-log.txt > > > > First off this is on an ARM64 machine > > > > The last error from meson-log.txt is > > > > ... > > Checking if "c99" compiles: YES > > > > meson.build:1479:17: ERROR: Can not run test applications in this cross > > environment. > > ... > > I have never tried this, but there are instructions for cross-compiling > with meson: https://mesonbuild.com/Cross-compilation.html It seems that attempting to cross-compile on an ARM machine might be asking too much as the use cases are pretty limited. So the impetus for this is that folks require 32bit versions of psqlODBC. Unfortunately EDB is no longer distributing a 32 bit windows version. All I really need is a 32bit libpq. This seems like a much smaller lift. Suggestions ? Dave ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: Trying to build x86 version on windows using meson @ 2024-03-21 16:51 Andres Freund <[email protected]> parent: Dave Cramer <[email protected]> 0 siblings, 1 reply; 5+ messages in thread From: Andres Freund @ 2024-03-21 16:51 UTC (permalink / raw) To: Dave Cramer <[email protected]>; +Cc: Peter Eisentraut <[email protected]>; PostgreSQL Hackers <[email protected]> Hi, On 2024-03-21 07:11:23 -0400, Dave Cramer wrote: > It seems that attempting to cross-compile on an ARM machine might be asking > too much as the use cases are pretty limited. It for sure is if you don't even provide the precise commands and logs of a failed run... > So the impetus for this is that folks require 32bit versions of psqlODBC. > Unfortunately EDB is no longer distributing a 32 bit windows version. > > All I really need is a 32bit libpq. This seems like a much smaller lift. > Suggestions ? FWIW, I can cross compile postgres from linux to 32bit windows without an issue. If you really just need a 32bit libpq, that might actually be easier. cd /tmp/ && rm -rf /tmp/meson-w32 && m setup --buildtype debug -Dcassert=true -Db_pch=true --cross-file ~/src/meson/cross/linux-mingw-w64-32bit.txt /tmp/meson-w32 ~/src/postgresql && cd /tmp/meson-w32 && ninja file src/interfaces/libpq/libpq.dll src/interfaces/libpq/libpq.dll: PE32 executable (DLL) (console) Intel 80386, for MS Windows, 19 sections You'd need a windows openssl to actually have a useful libpq, but that should be fairly simple. There are two warnings that I think point to us doing something wrong, but they're not affecting libpq: [1585/1945 42 81%] Linking target src/bin/pgevent/pgevent.dll /usr/bin/i686-w64-mingw32-ld: warning: resolving _DllRegisterServer by linking to _DllRegisterServer@0 Use --enable-stdcall-fixup to disable these warnings Use --disable-stdcall-fixup to disable these fixups /usr/bin/i686-w64-mingw32-ld: warning: resolving _DllUnregisterServer by linking to _DllUnregisterServer@0 Greetings, Andres Freund ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: Trying to build x86 version on windows using meson @ 2024-03-21 17:17 Dave Cramer <[email protected]> parent: Andres Freund <[email protected]> 0 siblings, 1 reply; 5+ messages in thread From: Dave Cramer @ 2024-03-21 17:17 UTC (permalink / raw) To: Andres Freund <[email protected]>; +Cc: Peter Eisentraut <[email protected]>; PostgreSQL Hackers <[email protected]> Andres, On Thu, 21 Mar 2024 at 12:51, Andres Freund <[email protected]> wrote: > Hi, > > On 2024-03-21 07:11:23 -0400, Dave Cramer wrote: > > It seems that attempting to cross-compile on an ARM machine might be > asking > > too much as the use cases are pretty limited. > > It for sure is if you don't even provide the precise commands and logs of a > failed run... > > > > So the impetus for this is that folks require 32bit versions of psqlODBC. > > Unfortunately EDB is no longer distributing a 32 bit windows version. > > > > All I really need is a 32bit libpq. This seems like a much smaller lift. > > Suggestions ? > > FWIW, I can cross compile postgres from linux to 32bit windows without an > issue. If you really just need a 32bit libpq, that might actually be > easier. > > cd /tmp/ && rm -rf /tmp/meson-w32 && m setup --buildtype debug > -Dcassert=true -Db_pch=true --cross-file > ~/src/meson/cross/linux-mingw-w64-32bit.txt /tmp/meson-w32 ~/src/postgresql > && cd /tmp/meson-w32 && ninja > > file src/interfaces/libpq/libpq.dll > src/interfaces/libpq/libpq.dll: PE32 executable (DLL) (console) Intel > 80386, for MS Windows, 19 sections > > You'd need a windows openssl to actually have a useful libpq, but that > should > be fairly simple. > > > There are two warnings that I think point to us doing something wrong, but > they're not affecting libpq: > > [1585/1945 42 81%] Linking target src/bin/pgevent/pgevent.dll > /usr/bin/i686-w64-mingw32-ld: warning: resolving _DllRegisterServer by > linking to _DllRegisterServer@0 > Use --enable-stdcall-fixup to disable these warnings > Use --disable-stdcall-fixup to disable these fixups > /usr/bin/i686-w64-mingw32-ld: warning: resolving _DllUnregisterServer by > linking to _DllUnregisterServer@0 > > > Attached correct log file Dave Build started at 2024-03-21T13:07:08.707715 Main binary: C:\Program Files\Meson\meson.exe Build Options: '-Dextra_include_dirs=c:\Program Files\OpenSSL-Win64\include' -Derrorlogs=True '-Dextra_lib_dirs=c:\Program Files\OpenSSL-win64' '-Dprefix=c:\postgres86' Python system: Windows The Meson build system Version: 1.3.1 Source dir: C:\Users\davec\projects\postgresql Build dir: C:\Users\davec\projects\postgresql\build Build type: native build Project name: postgresql Project version: 17devel ----------- 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 /Gm[-] enable minimal rebuild /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /GX[-] enable C++ EH (same as /EHsc) /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) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (on by default) /Ze enable extensions (default) /Za disable extensions /ZW enable WinRT language extensions /Zs syntax check only /Zc:arg1[,arg2] C++ 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 strictStrings[-] disable string-literal to [char|wchar_t]* conversion (off by default) 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 an non-const lvalue reference (off by default) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (off by default) 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 (implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (off by default) 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' (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) __STDC__ define __STDC__ to 1 in C /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: 100000) /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 /std:<c11|c17> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 /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 /errorReport:option deprecated. Report internal compiler errors to Microsoft none - do not send report prompt - prompt to immediately send report queue - at next admin logon, prompt to send report (default) send - send report automatically /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.38.33134 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:\Users\davec\projects\postgresql\build\meson-private\sanitycheckc.exe C compiler for the host machine: cl (msvc 19.38.33134 "Microsoft (R) C/C++ Optimizing Compiler Version 19.38.33134 for x86") C linker for the host machine: link link 14.38.33134.0 ----------- Detecting linker via: `lib /?` -> 1100 stdout: Microsoft (R) Library Manager Version 14.38.33134.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 /Gm[-] enable minimal rebuild /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /GX[-] enable C++ EH (same as /EHsc) /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) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (on by default) /Ze enable extensions (default) /Za disable extensions /ZW enable WinRT language extensions /Zs syntax check only /Zc:arg1[,arg2] C++ 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 strictStrings[-] disable string-literal to [char|wchar_t]* conversion (off by default) 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 an non-const lvalue reference (off by default) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (off by default) 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 (implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (off by default) 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' (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) __STDC__ define __STDC__ to 1 in C /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: 100000) /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 /std:<c11|c17> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 /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 /errorReport:option deprecated. Report internal compiler errors to Microsoft none - do not send report prompt - prompt to immediately send report queue - at next admin logon, prompt to send report (default) send - send report automatically /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.38.33134 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:\Users\davec\projects\postgresql\build\meson-private\sanitycheckc.exe C compiler for the build machine: cl (msvc 19.38.33134 "Microsoft (R) C/C++ Optimizing Compiler Version 19.38.33134 for x86") C linker for the build machine: link link 14.38.33134.0 ----------- Detecting linker via: `lib /?` -> 1100 stdout: Microsoft (R) Library Manager Version 14.38.33134.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...]] ----------- 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 Run-time dependency threads found: YES Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpv1h8emfx Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpv1h8emfx\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmpv1h8emfx\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- ws2_32.lib /link /release /nologo` -> 0 stdout: testfile.c ----------- Library ws2_32 found: YES Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmp50_u7odt Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmp50_u7odt\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmp50_u7odt\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- secur32.lib /link /release /nologo` -> 0 stdout: testfile.c ----------- Library secur32 found: YES Program perl found: YES (c:\MinGW\msys\1.0\bin\perl.EXE) 'utf-8' codec can't decode byte 0x90 in position 2: invalid start byte Unusable script 'C:\\Program Files\\Meson\\meson.exe' Program python3 found: YES Running command: c:\MinGW\msys\1.0\bin\flex.EXE --version --- stdout --- flex 2.5.35 --- stderr --- Program flex found: YES 2.5.35 2.5.35 (c:\MinGW\msys\1.0\bin\flex.EXE) Running command: c:\MinGW\msys\1.0\bin\bison.EXE --version --- stdout --- bison (GNU Bison) 2.4.2 Written by Robert Corbett and Richard Stallman. Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. --- stderr --- Program bison found: YES 2.4.2 2.4.2 (c:\MinGW\msys\1.0\bin\bison.EXE) Program gsed sed found: NO Program prove found: YES (perl c:\MinGW\msys\1.0\bin\prove) Program tar found: YES (C:\Windows\system32\tar.EXE) Program gzip found: YES (c:\MinGW\msys\1.0\bin\gzip.EXE) Program lz4 found: NO Program openssl found: YES (c:\MinGW\msys\1.0\bin\openssl.EXE) Program zstd found: NO Program dtrace skipped: feature dtrace disabled Program config/missing found: YES (sh C:\Users\davec\projects\postgresql\config/missing) Program cp found: YES (c:\MinGW\msys\1.0\bin\cp.EXE) Program xmllint found: NO Program xsltproc found: NO Running command: c:\MinGW\msys\1.0\bin\bison.EXE --version --- stdout --- bison (GNU Bison) 2.4.2 Written by Robert Corbett and Richard Stallman. Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. --- stderr --- Running command: c:\MinGW\msys\1.0\bin\flex.EXE --version --- stdout --- flex 2.5.35 --- stderr --- Program wget found: NO Running command: "C:\Program Files\Meson\meson.exe" runpython src/tools/find_meson --- stdout --- meson C:\Program Files\Meson\meson.exe --- stderr --- Program C:\Program Files\Meson\meson.exe found: YES (C:\Program Files\Meson\meson.exe) Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m Code: #include <bsd_auth.h> ----------- Command line: `cl -IC:\Users\davec\projects\postgresql\src/include -IC:\Users\davec\projects\postgresql\build\src/include "-Ic:\Program Files\OpenSSL-Win64\include" -IC:\Users\davec\projects\postgresql\src/include/port/win32 -IC:\Users\davec\projects\postgresql\build\src/include/port/win32 -IC:\Users\davec\projects\postgresql\src/include/port/win32_msvc -IC:\Users\davec\projects\postgresql\build\src/include/port/win32_msvc C:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m\testfile.c /FoC:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi-` -> 2 stdout: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m\testfile.c(2): fatal error C1083: Cannot open include file: 'bsd_auth.h': No such file or directory ----------- Check usable header "bsd_auth.h" : NO Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0 Code: #include <dns_sd.h> ----------- Command line: `cl -IC:\Users\davec\projects\postgresql\src/include -IC:\Users\davec\projects\postgresql\build\src/include "-Ic:\Program Files\OpenSSL-Win64\include" -IC:\Users\davec\projects\postgresql\src/include/port/win32 -IC:\Users\davec\projects\postgresql\build\src/include/port/win32 -IC:\Users\davec\projects\postgresql\src/include/port/win32_msvc -IC:\Users\davec\projects\postgresql\build\src/include/port/win32_msvc C:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0\testfile.c /FoC:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi-` -> 2 stdout: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0\testfile.c(2): fatal error C1083: Cannot open include file: 'dns_sd.h': No such file or directory ----------- Check usable header "dns_sd.h" : NO Program fop found: NO Pkg-config binary missing from cross or native file, or env var undefined. Trying a default Pkg-config fallback at pkg-config Did not find pkg-config by name 'pkg-config' Found pkg-config: NO Pkg-config for machine host machine not found. Giving up. 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\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.EXE (3.27.2) Extracting basic cmake information CMake Toolchain: Calling CMake once to generate the compiler state Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\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:/Users/davec/projects/postgresql/build/meson-private/__CMake_compiler_info__/CMakeMesonTempToolchainFile.cmake" - "." CMake trace warning: add_executable() non imported executables are not supported CMake TRACE: C:\Users\davec\projects\postgresql\build\meson-private\__CMake_compiler_info__\CMakeFiles\CMakeScratch\TryCompile-3r5k1k\CMakeLists.txt:21 add_executable(['cmTC_09b2a', 'C:/Program Files/Microsoft Visual Studio/2022/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.27/Modules/CMakeCCompilerABI.c']) CMake trace warning: target_link_options() TARGET cmTC_09b2a not found CMake TRACE: C:\Users\davec\projects\postgresql\build\meson-private\__CMake_compiler_info__\CMakeFiles\CMakeScratch\TryCompile-3r5k1k\CMakeLists.txt:24 target_link_libraries(['cmTC_09b2a', '']) Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_krb5-gssapi with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_krb5-gssapi/CMakeMesonToolchainFile.cmake" - "." -- Module search paths: ['C:/Program Files', 'C:/Program Files (x86)', 'C:/Program Files/Microsoft Visual Studio/2022/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake'] -- CMake root: C:/Program Files/Microsoft Visual Studio/2022/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.27 -- CMake architectures: [] -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share', ''] Preliminary CMake check failed. Aborting. Run-time dependency krb5-gssapi found: NO (tried pkgconfig and cmake) Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpxnw_9hvh Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpxnw_9hvh\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmpxnw_9hvh\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- wldap32.lib /link /release /nologo` -> 0 stdout: testfile.c ----------- Library wldap32 found: YES Compiler for language cpp skipped: feature llvm disabled Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency icu-uc found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency icu-i18n found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency libxml-2.0 found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Determining dependency 'libxslt' with CMake executable 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE' Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_libxslt with: - "-DNAME=libxslt" - "-DARCHS=" - "-DVERSION=" - "-DCOMPS=" - "-DSTATIC=False" - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_libxslt/CMakeMesonToolchainFile.cmake" - "." Run-time dependency libxslt found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency liblz4 found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Determining dependency 'tcl' with CMake executable 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE' Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_tcl with: - "-DNAME=tcl" - "-DARCHS=" - "-DVERSION=" - "-DCOMPS=" - "-DSTATIC=False" - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_tcl/CMakeMesonToolchainFile.cmake" - "." Run-time dependency tcl found: NO (tried pkgconfig and cmake) Library tcl found: NO Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmphz4b41hs Code: #ifdef __has_include #if !__has_include("tcl.h") #error "Header 'tcl.h' could not be found" #endif #else #include <tcl.h> #endif ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmphz4b41hs\testfile.c /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od /Oi-` -> 2 stderr: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmphz4b41hs\testfile.c(4): fatal error C1189: #error: "Header 'tcl.h' could not be found" ----------- Has header "tcl.h" with dependency -ltcl: NO Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency pam found: NO (tried pkgconfig and cmake) Library pam found: NO Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -MOpcode -MExtUtils::Embed -MExtUtils::ParseXS -e "" --- stdout --- --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" api_versionstring --- stdout --- 5.8.0 --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" archlibexp --- stdout --- /usr/lib/perl5/5.8/msys --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" privlibexp --- stdout --- /usr/lib/perl5/5.8 --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" useshrplib --- stdout --- true --- stderr --- Message: disabling optional dependency plperl: Perl version 5.14 or later is required, but this is 5.8.0 'utf-8' codec can't decode byte 0x90 in position 2: invalid start byte Unusable script 'C:\\Program Files\\Meson\\meson.exe' Could not introspect Python (['C:\\Program Files\\Meson\\meson.exe', 'C:\\Program Files\\Meson\\_internal\\mesonbuild\\scripts\\python_info.py']): exit code 1 Program stdout: ERROR: C:\Program Files\Meson\_internal\mesonbuild\scripts\python_info.py is not a directory WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated. Program stderr: meson.build:1052: WARNING: <PythonExternalProgram 'C:\\Program Files\\Meson\\meson.exe' -> ['C:\\Program Files\\Meson\\meson.exe']> is not a valid python or it is missing distutils Program C:\Program Files\Meson\meson.exe found: NO Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency readline found: NO (tried pkgconfig and cmake) Library readline found: NO Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency libedit found: NO (tried pkgconfig and cmake) Library libedit found: NO Dependency libselinux skipped: feature selinux disabled Dependency libsystemd skipped: feature systemd disabled Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Determining dependency 'ZLIB' with CMake executable 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE' Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_ZLIB with: - "-DNAME=ZLIB" - "-DARCHS=" - "-DVERSION=" - "-DCOMPS=" - "-DSTATIC=False" - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_ZLIB/CMakeMesonToolchainFile.cmake" - "." Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmp228tm_u7 Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmp228tm_u7\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmp228tm_u7\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- zlib1.lib /link /release /nologo` -> 2 stdout: testfile.c LINK : fatal error LNK1181: cannot open input file 'zlib1.lib' ----------- Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c Code: #ifdef __has_include #if !__has_include("zlib.h") #error "Header 'zlib.h' could not be found" #endif #else #include <zlib.h> #endif ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od /Oi-` -> 2 stderr: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c(4): fatal error C1189: #error: "Header 'zlib.h' could not be found" ----------- Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpbuwjess7 Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpbuwjess7\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmpbuwjess7\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- zlib.lib /link /release /nologo` -> 2 stdout: testfile.c LINK : fatal error LNK1181: cannot open input file 'zlib.lib' ----------- Using cached compile: Cached command line: cl C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od /Oi- Code: #ifdef __has_include #if !__has_include("zlib.h") #error "Header 'zlib.h' could not be found" #endif #else #include <zlib.h> #endif Cached compiler stdout: Cached compiler stderr: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c(4): fatal error C1189: #error: "Header 'zlib.h' could not be found" Run-time dependency zlib found: NO (tried pkgconfig, cmake and system) meson.build:1373: WARNING: did not find zlib Running command: c:\MinGW\msys\1.0\bin\perl.EXE config/check_modules.pl --- stdout --- --- stderr --- Can't locate IPC/Run.pm in @INC (@INC contains: /usr/lib/perl5/5.8/msys /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/msys /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/msys /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at config/check_modules.pl line 14. BEGIN failed--compilation aborted at config/check_modules.pl line 14. Message: Can't locate IPC/Run.pm in @INC (@INC contains: /usr/lib/perl5/5.8/msys /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/msys /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/msys /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at config/check_modules.pl line 14. BEGIN failed--compilation aborted at config/check_modules.pl line 14. meson.build:1404: WARNING: Additional Perl modules are required to run TAP tests. Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency libzstd found: NO (tried pkgconfig and cmake) Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpy5g0ve54 Code: #include <stdbool.h> #include <complex.h> #include <tgmath.h> #include <inttypes.h> struct named_init_test { int a; int b; }; extern void structfunc(struct named_init_test); int main(int argc, char **argv) { struct named_init_test nit = { .a = 3, .b = 5, }; for (int loop_var = 0; loop_var < 3; loop_var++) { nit.a += nit.b; } structfunc((struct named_init_test){1, 0}); return nit.a != 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpy5g0ve54\testfile.c /FoC:\Users\davec\projects\postgresql\build\meson-private\tmpy5g0ve54\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi-` -> 0 stdout: testfile.c Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\stdbool.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\complex.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\vcruntime.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\sal.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\vadefs.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\tgmath.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\math.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt_math.h C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\tgmath.h(33): warning UCRT4000: This header does not conform to the C99 standard. C99 functionality is available when compiling in C11 mode or higher (/std:c11). Functionality equivalent to the type-generic functions provided by tgmath.h is available in <ctgmath> when compiling as C++. If compiling in C++17 mode or higher (/std:c++17), this header will automatically include <ctgmath> instead. You can define _CRT_SILENCE_NONCONFORMING_TGMATH_H to acknowledge that you have received this warning. Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\inttypes.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\stdint.h ----------- Checking if "c99" compiles: YES meson.build:1479:17: ERROR: Can not run test applications in this cross environment. Attachments: [text/plain] meson-log.txt (53.7K, ../../CADK3HHLJxW-_iAW6LeEBONMpi49nwMfuh4An6=gOanB2rj3NmQ@mail.gmail.com/3-meson-log.txt) download | inline: Build started at 2024-03-21T13:07:08.707715 Main binary: C:\Program Files\Meson\meson.exe Build Options: '-Dextra_include_dirs=c:\Program Files\OpenSSL-Win64\include' -Derrorlogs=True '-Dextra_lib_dirs=c:\Program Files\OpenSSL-win64' '-Dprefix=c:\postgres86' Python system: Windows The Meson build system Version: 1.3.1 Source dir: C:\Users\davec\projects\postgresql Build dir: C:\Users\davec\projects\postgresql\build Build type: native build Project name: postgresql Project version: 17devel ----------- 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 /Gm[-] enable minimal rebuild /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /GX[-] enable C++ EH (same as /EHsc) /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) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (on by default) /Ze enable extensions (default) /Za disable extensions /ZW enable WinRT language extensions /Zs syntax check only /Zc:arg1[,arg2] C++ 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 strictStrings[-] disable string-literal to [char|wchar_t]* conversion (off by default) 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 an non-const lvalue reference (off by default) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (off by default) 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 (implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (off by default) 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' (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) __STDC__ define __STDC__ to 1 in C /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: 100000) /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 /std:<c11|c17> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 /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 /errorReport:option deprecated. Report internal compiler errors to Microsoft none - do not send report prompt - prompt to immediately send report queue - at next admin logon, prompt to send report (default) send - send report automatically /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.38.33134 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:\Users\davec\projects\postgresql\build\meson-private\sanitycheckc.exe C compiler for the host machine: cl (msvc 19.38.33134 "Microsoft (R) C/C++ Optimizing Compiler Version 19.38.33134 for x86") C linker for the host machine: link link 14.38.33134.0 ----------- Detecting linker via: `lib /?` -> 1100 stdout: Microsoft (R) Library Manager Version 14.38.33134.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 /Gm[-] enable minimal rebuild /Gy[-] separate functions for linker /GS[-] enable security checks /GR[-] enable C++ RTTI /GX[-] enable C++ EH (same as /EHsc) /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) /permissive[-] enable some nonconforming code to compile (feature set subject to change) (on by default) /Ze enable extensions (default) /Za disable extensions /ZW enable WinRT language extensions /Zs syntax check only /Zc:arg1[,arg2] C++ 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 strictStrings[-] disable string-literal to [char|wchar_t]* conversion (off by default) 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 an non-const lvalue reference (off by default) twoPhase- disable two-phase name lookup ternary[-] enforce C++11 rules for conditional operator (off by default) 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 (implied by /permissive-) externC[-] enforce Standard C++ rules for 'extern "C"' functions (implied by /permissive-) lambda[-] better lambda support by using the newer lambda processor (off by default) 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' (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) __STDC__ define __STDC__ to 1 in C /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: 100000) /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 /std:<c11|c17> C standard version c11 - ISO/IEC 9899:2011 c17 - ISO/IEC 9899:2018 /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 /errorReport:option deprecated. Report internal compiler errors to Microsoft none - do not send report prompt - prompt to immediately send report queue - at next admin logon, prompt to send report (default) send - send report automatically /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.38.33134 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:\Users\davec\projects\postgresql\build\meson-private\sanitycheckc.exe C compiler for the build machine: cl (msvc 19.38.33134 "Microsoft (R) C/C++ Optimizing Compiler Version 19.38.33134 for x86") C linker for the build machine: link link 14.38.33134.0 ----------- Detecting linker via: `lib /?` -> 1100 stdout: Microsoft (R) Library Manager Version 14.38.33134.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...]] ----------- 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 Run-time dependency threads found: YES Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpv1h8emfx Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpv1h8emfx\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmpv1h8emfx\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- ws2_32.lib /link /release /nologo` -> 0 stdout: testfile.c ----------- Library ws2_32 found: YES Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmp50_u7odt Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmp50_u7odt\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmp50_u7odt\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- secur32.lib /link /release /nologo` -> 0 stdout: testfile.c ----------- Library secur32 found: YES Program perl found: YES (c:\MinGW\msys\1.0\bin\perl.EXE) 'utf-8' codec can't decode byte 0x90 in position 2: invalid start byte Unusable script 'C:\\Program Files\\Meson\\meson.exe' Program python3 found: YES Running command: c:\MinGW\msys\1.0\bin\flex.EXE --version --- stdout --- flex 2.5.35 --- stderr --- Program flex found: YES 2.5.35 2.5.35 (c:\MinGW\msys\1.0\bin\flex.EXE) Running command: c:\MinGW\msys\1.0\bin\bison.EXE --version --- stdout --- bison (GNU Bison) 2.4.2 Written by Robert Corbett and Richard Stallman. Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. --- stderr --- Program bison found: YES 2.4.2 2.4.2 (c:\MinGW\msys\1.0\bin\bison.EXE) Program gsed sed found: NO Program prove found: YES (perl c:\MinGW\msys\1.0\bin\prove) Program tar found: YES (C:\Windows\system32\tar.EXE) Program gzip found: YES (c:\MinGW\msys\1.0\bin\gzip.EXE) Program lz4 found: NO Program openssl found: YES (c:\MinGW\msys\1.0\bin\openssl.EXE) Program zstd found: NO Program dtrace skipped: feature dtrace disabled Program config/missing found: YES (sh C:\Users\davec\projects\postgresql\config/missing) Program cp found: YES (c:\MinGW\msys\1.0\bin\cp.EXE) Program xmllint found: NO Program xsltproc found: NO Running command: c:\MinGW\msys\1.0\bin\bison.EXE --version --- stdout --- bison (GNU Bison) 2.4.2 Written by Robert Corbett and Richard Stallman. Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. --- stderr --- Running command: c:\MinGW\msys\1.0\bin\flex.EXE --version --- stdout --- flex 2.5.35 --- stderr --- Program wget found: NO Running command: "C:\Program Files\Meson\meson.exe" runpython src/tools/find_meson --- stdout --- meson C:\Program Files\Meson\meson.exe --- stderr --- Program C:\Program Files\Meson\meson.exe found: YES (C:\Program Files\Meson\meson.exe) Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m Code: #include <bsd_auth.h> ----------- Command line: `cl -IC:\Users\davec\projects\postgresql\src/include -IC:\Users\davec\projects\postgresql\build\src/include "-Ic:\Program Files\OpenSSL-Win64\include" -IC:\Users\davec\projects\postgresql\src/include/port/win32 -IC:\Users\davec\projects\postgresql\build\src/include/port/win32 -IC:\Users\davec\projects\postgresql\src/include/port/win32_msvc -IC:\Users\davec\projects\postgresql\build\src/include/port/win32_msvc C:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m\testfile.c /FoC:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi-` -> 2 stdout: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmppsa74k7m\testfile.c(2): fatal error C1083: Cannot open include file: 'bsd_auth.h': No such file or directory ----------- Check usable header "bsd_auth.h" : NO Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0 Code: #include <dns_sd.h> ----------- Command line: `cl -IC:\Users\davec\projects\postgresql\src/include -IC:\Users\davec\projects\postgresql\build\src/include "-Ic:\Program Files\OpenSSL-Win64\include" -IC:\Users\davec\projects\postgresql\src/include/port/win32 -IC:\Users\davec\projects\postgresql\build\src/include/port/win32 -IC:\Users\davec\projects\postgresql\src/include/port/win32_msvc -IC:\Users\davec\projects\postgresql\build\src/include/port/win32_msvc C:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0\testfile.c /FoC:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi-` -> 2 stdout: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmpi5wtaom0\testfile.c(2): fatal error C1083: Cannot open include file: 'dns_sd.h': No such file or directory ----------- Check usable header "dns_sd.h" : NO Program fop found: NO Pkg-config binary missing from cross or native file, or env var undefined. Trying a default Pkg-config fallback at pkg-config Did not find pkg-config by name 'pkg-config' Found pkg-config: NO Pkg-config for machine host machine not found. Giving up. 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\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.EXE (3.27.2) Extracting basic cmake information CMake Toolchain: Calling CMake once to generate the compiler state Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\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:/Users/davec/projects/postgresql/build/meson-private/__CMake_compiler_info__/CMakeMesonTempToolchainFile.cmake" - "." CMake trace warning: add_executable() non imported executables are not supported CMake TRACE: C:\Users\davec\projects\postgresql\build\meson-private\__CMake_compiler_info__\CMakeFiles\CMakeScratch\TryCompile-3r5k1k\CMakeLists.txt:21 add_executable(['cmTC_09b2a', 'C:/Program Files/Microsoft Visual Studio/2022/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.27/Modules/CMakeCCompilerABI.c']) CMake trace warning: target_link_options() TARGET cmTC_09b2a not found CMake TRACE: C:\Users\davec\projects\postgresql\build\meson-private\__CMake_compiler_info__\CMakeFiles\CMakeScratch\TryCompile-3r5k1k\CMakeLists.txt:24 target_link_libraries(['cmTC_09b2a', '']) Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_krb5-gssapi with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_krb5-gssapi/CMakeMesonToolchainFile.cmake" - "." -- Module search paths: ['C:/Program Files', 'C:/Program Files (x86)', 'C:/Program Files/Microsoft Visual Studio/2022/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake'] -- CMake root: C:/Program Files/Microsoft Visual Studio/2022/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.27 -- CMake architectures: [] -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share', ''] Preliminary CMake check failed. Aborting. Run-time dependency krb5-gssapi found: NO (tried pkgconfig and cmake) Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpxnw_9hvh Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpxnw_9hvh\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmpxnw_9hvh\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- wldap32.lib /link /release /nologo` -> 0 stdout: testfile.c ----------- Library wldap32 found: YES Compiler for language cpp skipped: feature llvm disabled Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency icu-uc found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency icu-i18n found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency libxml-2.0 found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Determining dependency 'libxslt' with CMake executable 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE' Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_libxslt with: - "-DNAME=libxslt" - "-DARCHS=" - "-DVERSION=" - "-DCOMPS=" - "-DSTATIC=False" - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_libxslt/CMakeMesonToolchainFile.cmake" - "." Run-time dependency libxslt found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency liblz4 found: NO (tried pkgconfig and cmake) Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Determining dependency 'tcl' with CMake executable 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE' Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_tcl with: - "-DNAME=tcl" - "-DARCHS=" - "-DVERSION=" - "-DCOMPS=" - "-DSTATIC=False" - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_tcl/CMakeMesonToolchainFile.cmake" - "." Run-time dependency tcl found: NO (tried pkgconfig and cmake) Library tcl found: NO Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmphz4b41hs Code: #ifdef __has_include #if !__has_include("tcl.h") #error "Header 'tcl.h' could not be found" #endif #else #include <tcl.h> #endif ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmphz4b41hs\testfile.c /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od /Oi-` -> 2 stderr: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmphz4b41hs\testfile.c(4): fatal error C1189: #error: "Header 'tcl.h' could not be found" ----------- Has header "tcl.h" with dependency -ltcl: NO Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency pam found: NO (tried pkgconfig and cmake) Library pam found: NO Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -MOpcode -MExtUtils::Embed -MExtUtils::ParseXS -e "" --- stdout --- --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" api_versionstring --- stdout --- 5.8.0 --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" archlibexp --- stdout --- /usr/lib/perl5/5.8/msys --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" privlibexp --- stdout --- /usr/lib/perl5/5.8 --- stderr --- Running command: c:\MinGW\msys\1.0\bin\perl.EXE -MConfig -e "print $Config{$ARGV[0]}" useshrplib --- stdout --- true --- stderr --- Message: disabling optional dependency plperl: Perl version 5.14 or later is required, but this is 5.8.0 'utf-8' codec can't decode byte 0x90 in position 2: invalid start byte Unusable script 'C:\\Program Files\\Meson\\meson.exe' Could not introspect Python (['C:\\Program Files\\Meson\\meson.exe', 'C:\\Program Files\\Meson\\_internal\\mesonbuild\\scripts\\python_info.py']): exit code 1 Program stdout: ERROR: C:\Program Files\Meson\_internal\mesonbuild\scripts\python_info.py is not a directory WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated. Program stderr: meson.build:1052: WARNING: <PythonExternalProgram 'C:\\Program Files\\Meson\\meson.exe' -> ['C:\\Program Files\\Meson\\meson.exe']> is not a valid python or it is missing distutils Program C:\Program Files\Meson\meson.exe found: NO Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency readline found: NO (tried pkgconfig and cmake) Library readline found: NO Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency libedit found: NO (tried pkgconfig and cmake) Library libedit found: NO Dependency libselinux skipped: feature selinux disabled Dependency libsystemd skipped: feature systemd disabled Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Determining dependency 'ZLIB' with CMake executable 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE' Try CMake generator: auto Calling CMake (['C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin\\cmake.EXE']) in C:\Users\davec\projects\postgresql\build\meson-private\cmake_ZLIB with: - "-DNAME=ZLIB" - "-DARCHS=" - "-DVERSION=" - "-DCOMPS=" - "-DSTATIC=False" - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=C:/Users/davec/projects/postgresql/build/meson-private/cmake_ZLIB/CMakeMesonToolchainFile.cmake" - "." Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmp228tm_u7 Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmp228tm_u7\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmp228tm_u7\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- zlib1.lib /link /release /nologo` -> 2 stdout: testfile.c LINK : fatal error LNK1181: cannot open input file 'zlib1.lib' ----------- Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c Code: #ifdef __has_include #if !__has_include("zlib.h") #error "Header 'zlib.h' could not be found" #endif #else #include <zlib.h> #endif ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od /Oi-` -> 2 stderr: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c(4): fatal error C1189: #error: "Header 'zlib.h' could not be found" ----------- Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpbuwjess7 Code: int main(void) { return 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpbuwjess7\testfile.c /FeC:\Users\davec\projects\postgresql\build\meson-private\tmpbuwjess7\output.exe /nologo /showIncludes /utf-8 /MD /nologo /showIncludes /utf-8 /Od /Oi- zlib.lib /link /release /nologo` -> 2 stdout: testfile.c LINK : fatal error LNK1181: cannot open input file 'zlib.lib' ----------- Using cached compile: Cached command line: cl C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c /nologo /showIncludes /utf-8 /EP /nologo /showIncludes /utf-8 /EP /Od /Oi- Code: #ifdef __has_include #if !__has_include("zlib.h") #error "Header 'zlib.h' could not be found" #endif #else #include <zlib.h> #endif Cached compiler stdout: Cached compiler stderr: testfile.c C:\Users\davec\projects\postgresql\build\meson-private\tmpjdcwon0c\testfile.c(4): fatal error C1189: #error: "Header 'zlib.h' could not be found" Run-time dependency zlib found: NO (tried pkgconfig, cmake and system) meson.build:1373: WARNING: did not find zlib Running command: c:\MinGW\msys\1.0\bin\perl.EXE config/check_modules.pl --- stdout --- --- stderr --- Can't locate IPC/Run.pm in @INC (@INC contains: /usr/lib/perl5/5.8/msys /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/msys /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/msys /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at config/check_modules.pl line 14. BEGIN failed--compilation aborted at config/check_modules.pl line 14. Message: Can't locate IPC/Run.pm in @INC (@INC contains: /usr/lib/perl5/5.8/msys /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/msys /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/msys /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at config/check_modules.pl line 14. BEGIN failed--compilation aborted at config/check_modules.pl line 14. meson.build:1404: WARNING: Additional Perl modules are required to run TAP tests. Pkg-config for machine host machine not found. Giving up. CMake binary for host machine is cached. Preliminary CMake check failed. Aborting. Run-time dependency libzstd found: NO (tried pkgconfig and cmake) Running compile: Working directory: C:\Users\davec\projects\postgresql\build\meson-private\tmpy5g0ve54 Code: #include <stdbool.h> #include <complex.h> #include <tgmath.h> #include <inttypes.h> struct named_init_test { int a; int b; }; extern void structfunc(struct named_init_test); int main(int argc, char **argv) { struct named_init_test nit = { .a = 3, .b = 5, }; for (int loop_var = 0; loop_var < 3; loop_var++) { nit.a += nit.b; } structfunc((struct named_init_test){1, 0}); return nit.a != 0; } ----------- Command line: `cl C:\Users\davec\projects\postgresql\build\meson-private\tmpy5g0ve54\testfile.c /FoC:\Users\davec\projects\postgresql\build\meson-private\tmpy5g0ve54\output.obj /nologo /showIncludes /utf-8 /c /nologo /showIncludes /utf-8 /c /Od /Oi-` -> 0 stdout: testfile.c Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\stdbool.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\complex.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\vcruntime.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\sal.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\concurrencysal.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\vadefs.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\tgmath.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\math.h Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt_math.h C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\tgmath.h(33): warning UCRT4000: This header does not conform to the C99 standard. C99 functionality is available when compiling in C11 mode or higher (/std:c11). Functionality equivalent to the type-generic functions provided by tgmath.h is available in <ctgmath> when compiling as C++. If compiling in C++17 mode or higher (/std:c++17), this header will automatically include <ctgmath> instead. You can define _CRT_SILENCE_NONCONFORMING_TGMATH_H to acknowledge that you have received this warning. Note: including file: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\inttypes.h Note: including file: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\stdint.h ----------- Checking if "c99" compiles: YES meson.build:1479:17: ERROR: Can not run test applications in this cross environment. ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: Trying to build x86 version on windows using meson @ 2024-03-23 00:03 Andres Freund <[email protected]> parent: Dave Cramer <[email protected]> 0 siblings, 0 replies; 5+ messages in thread From: Andres Freund @ 2024-03-23 00:03 UTC (permalink / raw) To: Dave Cramer <[email protected]>; +Cc: Peter Eisentraut <[email protected]>; PostgreSQL Hackers <[email protected]> Hi, On 2024-03-21 13:17:44 -0400, Dave Cramer wrote: > Attached correct log file Hm. So there's something a bit odd: > Build started at 2024-03-21T13:07:08.707715 > Main binary: C:\Program Files\Meson\meson.exe > Build Options: '-Dextra_include_dirs=c:\Program Files\OpenSSL-Win64\include' -Derrorlogs=True '-Dextra_lib_dirs=c:\Program Files\OpenSSL-win64' '-Dprefix=c:\postgres86' > Python system: Windows > The Meson build system > Version: 1.3.1 > Source dir: C:\Users\davec\projects\postgresql > Build dir: C:\Users\davec\projects\postgresql\build > Build type: native build So meson thinks this is a native build, not a cross build. But then later realizes that generated binaries and the current platform aren't the same. And thus errors out. The line numbers don't match my tree, but I think what's failing is the sizeof() check. Which has support for cross builds, but it only uses that (slower) path if it knows that a cross build is being used. I suggest actually telling meson to cross compile. I don't quite know what properties you're going to need, but something like the following (put it in a file, point meson to it wity --cross-file) might give you a start: [properties] needs_exe_wrapper = false [binaries] c = 'cl' cpp = 'cl' ar = 'lib' windres = 'rc' [host_machine] system = 'windows' cpu_family = 'x86_64' cpu = 'x86_64' endian = 'little' Greetings, Andres Freund ^ permalink raw reply [nested|flat] 5+ messages in thread
end of thread, other threads:[~2024-03-23 00:03 UTC | newest] Thread overview: 5+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2021-01-05 04:34 [PATCH] Fix timeline-tracking failure while sending a historic timeline Kyotaro Horiguchi <[email protected]> 2024-03-21 11:11 Re: Trying to build x86 version on windows using meson Dave Cramer <[email protected]> 2024-03-21 16:51 ` Re: Trying to build x86 version on windows using meson Andres Freund <[email protected]> 2024-03-21 17:17 ` Re: Trying to build x86 version on windows using meson Dave Cramer <[email protected]> 2024-03-23 00:03 ` Re: Trying to build x86 version on windows using meson Andres Freund <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox