Various code assumed this was true already, and usually it is. However, it emerges that in a "universal" (multi-architecture) macOS build, configure will define USE_AVX2_WITH_RUNTIME_CHECK if the build host is x86_64, and then the arm64 half of the build fails. Ideally we'd get pg_config.h to define this symbol conditionally depending on defined(__x86_64__), but I don't see any way to persuade Autoconf to do that. Instead, clean up the mess by #undef'ing it again in c.h for not-x86_64 builds. For consistency I made c.h also #undef the USE_AVX512... symbols. Those are not actively broken, but it seems only happenstance that configure's tests for them fail in a universal build. Down the road we may have occasion to add more #undef's here. This problem is new in v19, so no need for back-patch. Reported-by: Sandeep Thakkar <sandeep.thakkar@enterprisedb.com> Reported-by: Tobias Bussmann <t.bussmann@gmx.net> Author: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/15574903-87C9-478A-B2D7-CC8F4C275DBB@gmx.net
PostgreSQL Database Management System
This directory contains the source code distribution of the PostgreSQL database management system.
PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions. This distribution also contains C language bindings.
Copyright and license information can be found in the file COPYRIGHT.
General documentation about this version of PostgreSQL can be found at https://www.postgresql.org/docs/devel/. In particular, information about building PostgreSQL from the source code can be found at https://www.postgresql.org/docs/devel/installation.html.
The latest version of this software, and related software, may be obtained at https://www.postgresql.org/download/. For more information look at our web site located at https://www.postgresql.org/.