Re: window build doesn't apply PG_CPPFLAGS correctly - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: window build doesn't apply PG_CPPFLAGS correctly
Date
Msg-id 3d730990-1370-a8a4-57a1-15e019df66a6@dunslane.net
Whole thread Raw
In response to window build doesn't apply PG_CPPFLAGS correctly  (Pavel Stehule <pavel.stehule@gmail.com>)
Responses Re: window build doesn't apply PG_CPPFLAGS correctly  (Pavel Stehule <pavel.stehule@gmail.com>)
List pgsql-hackers
On 7/22/21 12:06 AM, Pavel Stehule wrote:
> Hi
>
> I tried to write test for plpgsql debug API, where I need to access to
> plpgsql.h
>
> I have line
>
> PG_CPPFLAGS = -I$(top_srcdir)/src/pl/plpgsql/src
>
> that is working well on unix, but it do nothing on windows
>
> [00:05:14] Project "C:\projects\postgresql\pgsql.sln" (1) is building
> "C:\projects\postgresql\test_dbgapi.vcxproj" (87) on node 1 (default
> targets).
> [00:05:14] PrepareForBuild:
> [00:05:14]   Creating directory ".\Release\test_dbgapi\".
> [00:05:14]   Creating directory ".\Release\test_dbgapi\test_dbgapi.tlog\".
> [00:05:14] InitializeBuildStatus:
> [00:05:14]   Creating
> ".\Release\test_dbgapi\test_dbgapi.tlog\unsuccessfulbuild" because
> "AlwaysCreate" was specified.
> [00:05:14] ClCompile:
> [00:05:14]   C:\Program Files (x86)\Microsoft Visual Studio
> 12.0\VC\bin\x86_amd64\CL.exe /c /Isrc/include /Isrc/include/port/win32
> /Isrc/include/port/win32_msvc /Zi /nologo /W3 /WX- /Ox /D WIN32 /D
> _WINDOWS /D __WINDOWS__ /D __WIN32__ /D WIN32_STACK_RLIMIT=4194304 /D
> _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _WINDLL /D
> _MBCS /GF /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope
> /Fo".\Release\test_dbgapi\\" /Fd".\Release\test_dbgapi\vc120.pdb" /Gd
> /TC /wd4018 /wd4244 /wd4273 /wd4102 /wd4090 /wd4267 /errorReport:queue
> /MP src/test/modules/test_dbgapi/test_dbgapi.c
> [00:05:14]   test_dbgapi.c
> [00:05:16] src/test/modules/test_dbgapi/test_dbgapi.c(17): fatal error
> C1083: Cannot open include file: 'plpgsql.h': No such file or
> directory [C:\projects\postgresql\test_dbgapi.vcxproj]
> [00:05:16] Done Building Project
> "C:\projects\postgresql\test_dbgapi.vcxproj" (default targets) -- FAILED.
> [00:05:16] Project "C:\projects\postgresql\pgsql.sln" (1) is building
> "C:\projects\postgresql\test_ddl_deparse.vcxproj" (88) on node 1
> (default targets).
>
> looks so PG_CPPFLAGS is not propagated to CPPFLAGS there.
>
>

Almost everything in the Makefiles is not used by the MSVC buid system.
Using this one seems likely to be quite difficult, since the syntax for
the MSVC compiler command line is very different, and furthermore the
MSVC build system doesn't know anything about how to use this setting.

AFAICT PG_CPPFLAGS is only used by pgxs.

You would need to tell us more about how your build process is working.


cheers


andrew



--
Andrew Dunstan
EDB: https://www.enterprisedb.com




pgsql-hackers by date:

Previous
From: "houzj.fnst@fujitsu.com"
Date:
Subject: RE: Skipping logical replication transactions on subscriber side
Next
From: "houzj.fnst@fujitsu.com"
Date:
Subject: Use quick select instead of qsort to get median