Generate pg_config.h from pg_config.h.in on Windows
Previously, the Windows MSVC build generated pg_config.h from a hard-coded pg_config.h.win32 with some ad hoc postprocessing. The pg_config.h.win32 file required manual maintenance and was as a result frequently out of date. Instead, have the MSVC build scripts emulate what configure and config.status do: collect a list of defines and then create pg_config.h from pg_config.h.in by changing the appropriate lines. The previous setup was made to support old Windows build systems that didn't have any text processing capabilities, but the current system has Perl, so it's not a problem. pg_config.h.win32 is removed. In order to try to keep the Windows side of things more up to date in the future, we now also require that all symbols found in pg_config.h.in are defined in the MSVC build system. So if there is a change in configure that results in a new symbol, an update in Solution.pm will be required. The other headers managed by AC_CONFIG_HEADERS in configure, namely src/include/pg_config_ext.h and src/interfaces/ecpg/include/ecpg_config.h, get the same treatment, so this removes even more ad hoc code in the MSVC build scripts. Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://www.postgresql.org/message-id/flat/1441b834-f434-e0bf-46ed-9c4d5c29c2d4%402ndquadrant.com
Showing
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment