mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
Remove --disable-atomics, require 32 bit atomics.
Modern versions of all relevant architectures and tool chains have
atomics support. Since edadeb07
, there is no remaining reason to carry
code that simulates atomic flags and uint32 imperfectly with spinlocks.
64 bit atomics are still emulated with spinlocks, if needed, for now.
Any modern compiler capable of implementing C11 <stdatomic.h> must have
the underlying operations we need, though we don't require C11 yet. We
detect certain compilers and architectures, so hypothetical new systems
might need adjustments here.
Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> (concept, not the patch)
Reviewed-by: Andres Freund <andres@anarazel.de> (concept, not the patch)
Discussion: https://postgr.es/m/3351991.1697728588%40sss.pgh.pa.us
This commit is contained in:
40
configure
vendored
40
configure
vendored
@ -836,7 +836,6 @@ enable_integer_datetimes
|
||||
enable_nls
|
||||
with_pgport
|
||||
enable_rpath
|
||||
enable_atomics
|
||||
enable_debug
|
||||
enable_profiling
|
||||
enable_coverage
|
||||
@ -1528,7 +1527,6 @@ Optional Features:
|
||||
enable Native Language Support
|
||||
--disable-rpath do not embed shared library search path in
|
||||
executables
|
||||
--disable-atomics do not use atomic operations
|
||||
--enable-debug build with debugging symbols (-g)
|
||||
--enable-profiling build with profiling enabled
|
||||
--enable-coverage build with coverage testing instrumentation
|
||||
@ -3264,33 +3262,6 @@ fi
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Atomic operations
|
||||
#
|
||||
|
||||
|
||||
# Check whether --enable-atomics was given.
|
||||
if test "${enable_atomics+set}" = set; then :
|
||||
enableval=$enable_atomics;
|
||||
case $enableval in
|
||||
yes)
|
||||
:
|
||||
;;
|
||||
no)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
as_fn_error $? "no argument expected for --enable-atomics option" "$LINENO" 5
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
enable_atomics=yes
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
#
|
||||
# --enable-debug adds -g to compiler flags
|
||||
#
|
||||
@ -12156,17 +12127,6 @@ fi
|
||||
|
||||
fi
|
||||
|
||||
if test "$enable_atomics" = yes; then
|
||||
|
||||
$as_echo "#define HAVE_ATOMICS 1" >>confdefs.h
|
||||
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING:
|
||||
*** Not using atomic operations will cause poor performance." >&5
|
||||
$as_echo "$as_me: WARNING:
|
||||
*** Not using atomic operations will cause poor performance." >&2;}
|
||||
fi
|
||||
|
||||
if test "$with_gssapi" = yes ; then
|
||||
if test "$PORTNAME" != "win32"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing gss_store_cred_into" >&5
|
||||
|
Reference in New Issue
Block a user