# PGAC_TYPE_LOCALE_T
# ------------------
-# Check for the locale_t type and find the right header file. Mac OS
-# X needs xlocale.h; standard is locale.h, but glibc also has an
+# Check for the locale_t type and find the right header file. mac OS
+# needs xlocale.h; standard is locale.h, but glibc also has an
# xlocale.h file that we should not use.
#
AC_DEFUN([PGAC_TYPE_LOCALE_T],
if test "$python_enable_shared" != 1; then
if test "$PORTNAME" = darwin; then
- # OS X does supply a .dylib even though Py_ENABLE_SHARED does
+ # macOS does supply a .dylib even though Py_ENABLE_SHARED does
# not get set. The file detection logic below doesn't succeed
- # on older OS X versions, so make it explicit.
+ # on older macOS versions, so make it explicit.
python_enable_shared=1
elif test "$PORTNAME" = win32; then
# Windows also needs an explicit override.
fi
elif test "$with_uuid" = e2fs ; then
- # On OS X , the UUID functions are in libc
+ # On macOS , the UUID functions are in libc
ac_fn_c_check_func "$LINENO" "uuid_generate" "ac_cv_func_uuid_generate"
if test "x$ac_cv_func_uuid_generate" = xyes; then :
UUID_LIBS=""
#define HAVE_DECL_STRLCPY $ac_have_decl
_ACEOF
-# This is probably only present on Darwin , but may as well check always
+# This is probably only present on macOS , but may as well check always
ac_fn_c_check_decl "$LINENO" "F_FULLFSYNC" "ac_cv_have_decl_F_FULLFSYNC" "#include
"
if test "x$ac_cv_have_decl_F_FULLFSYNC" = xyes; then :
if test "$python_enable_shared" != 1; then
if test "$PORTNAME" = darwin; then
- # OS X does supply a .dylib even though Py_ENABLE_SHARED does
+ # macOS does supply a .dylib even though Py_ENABLE_SHARED does
# not get set. The file detection logic below doesn't succeed
- # on older OS X versions, so make it explicit.
+ # on older macOS versions, so make it explicit.
python_enable_shared=1
elif test "$PORTNAME" = win32; then
# Windows also needs an explicit override.
[UUID_LIBS=""],
[AC_MSG_ERROR([BSD UUID functions are not present])])
elif test "$with_uuid" = e2fs ; then
- # On OS X , the UUID functions are in libc
+ # On macOS , the UUID functions are in libc
AC_CHECK_FUNC(uuid_generate,
[UUID_LIBS=""],
[AC_CHECK_LIB(uuid, uuid_generate,
if test "$PORTNAME" != "win32"; then
AC_SYS_LARGEFILE
dnl Autoconf 2.69's AC_SYS_LARGEFILE believes it's a good idea to #define
- dnl _DARWIN_USE_64_BIT_INODE, but it isn't: on OS X 10.5 that activates a
- dnl bug that causes readdir() to sometimes return EINVAL. On later OS X
+ dnl _DARWIN_USE_64_BIT_INODE, but it isn't: on macOS 10.5 that activates a
+ dnl bug that causes readdir() to sometimes return EINVAL. On later macOS
dnl versions where the feature actually works, it's on by default anyway.
AH_VERBATIM([_DARWIN_USE_64_BIT_INODE],[])
fi
AC_CHECK_DECLS(fdatasync, [], [], [#include ])
AC_CHECK_DECLS([strlcat, strlcpy])
-# This is probably only present on Darwin , but may as well check always
+# This is probably only present on macOS , but may as well check always
AC_CHECK_DECLS(F_FULLFSYNC, [], [], [#include ])
HAVE_IPV6=no
socket parameter, or similar mechanisms. Currently that includes
Linux>,
most flavors of BSD> including
- OS X >,
+ macOS >,
and Solaris .
-
OS X
+
macOS
If you use MacPorts, the following will get you set up:
MinGW-w64 . These tools can also be used to
cross-compile for 32 bit and 64 bit
Windows
targets on other hosts, such as
Linux and
Cygwin is not recommended for running a
production server, and it should only be used for running on
older versions of
Windows where
Build with Bonjour support. This requires Bonjour support
- in your operating system. Recommended on OS X .
+ in your operating system. Recommended on macOS .
e2fs> to use the UUID library created by
the e2fsprogs> project; this library is present in most
- Linux systems and in OS X , and can be obtained for other
+ Linux systems and in macOS , and can be obtained for other
platforms as well
PostgreSQL> can be expected to work on these operating
systems: Linux (all recent distributions), Windows (Win2000 SP4 and later),
- FreeBSD, OpenBSD, NetBSD, OS X , AIX, HP/UX, Solaris,
+ FreeBSD, OpenBSD, NetBSD, macOS , AIX, HP/UX, Solaris,
and UnixWare. Other Unix-like systems may also work but are not currently
being tested. In most cases, all CPU architectures supported by
a given operating system will work. Look in
Currently, the
utility is supported, which, at the time of this writing, is available
- on Solaris, OS X , FreeBSD, NetBSD, and Oracle Linux. The
+ on Solaris, macOS , FreeBSD, NetBSD, and Oracle Linux. The
for Linux provides a DTrace equivalent and can also be used. Supporting other dynamic
tracing utilities is theoretically possible by changing the definitions for
- This behavior has been observed on BSD-derived kernels including OS X .
+ This behavior has been observed on BSD-derived kernels including macOS .
It resulted in an entirely-misleading startup failure complaining that
the shared memory request size was too large.
Pretty-print UNION queries correctly
Make psql handle \r\n> newlines properly in COPY IN
pg_dump> handled ACLs with grant options incorrectly
-
Fix thread support for OS X and Solaris
+
Fix thread support for macOS and Solaris
Updated JDBC driver (build 215) with various fixes
Translation updates (various contributors)
TABLE AS> from tables without OIDs
Fix problems with alter_table> regression test
during parallel testing
-
Fix problems with hitting open file limit, especially on OS X (Tom)
+
Fix problems with hitting open file limit, especially on macOS (Tom)
Partial fix for Turkish-locale issues
initdb will succeed now in Turkish locale, but there are still some
inconveniences associated with the i/I> problem.
-
Enable PAM for Mac OS X (Aaron Hillegass)
+
Enable PAM for macOS (Aaron Hillegass)
Make B-tree indexes fully WAL-safe (Tom)
-
Add Mac OS X Rendezvous server support (Chris Campbell)
+
Add macOS Rendezvous server support (Chris Campbell)
- This allows Mac OS X hosts to query the network for available
+ This allows macOS hosts to query the network for available
Fix locking code for s390x CPU (64-bit) (Tom)
Allow OpenBSD to use local ident credentials (William Ahern)
Make query plan trees read-only to executor (Tom)
-
Add Darwin startup scripts (David Wheeler)
+
Add macOS startup scripts (David Wheeler)
Allow libpq to compile with Borland C++ compiler (Lester Godwin, Karl Waclawek)
Use our own version of getopt_long() if needed (Peter)
Convert administration scripts to C (Peter)
- This behavior has been observed on BSD-derived kernels including OS X .
+ This behavior has been observed on BSD-derived kernels including macOS .
It resulted in an entirely-misleading startup failure complaining that
the shared memory request size was too large.
While this could theoretically happen anywhere, no standard build of
- Perl did things this way ... until
Mac OS X > 10.5.
+ Perl did things this way ... until
macOS > 10.5.
(Bruce)
Fix pgxs> -L> library path
-specification for Win32, Cygwin, OS X , AIX (Bruce)
+specification for Win32, Cygwin, macOS , AIX (Bruce)
Check that SID is enabled while checking for Win32 admin
privileges (Magnus)
- Improvements to the Mac OS X startup scripts (Ray A.)
+ Improvements to the macOS startup scripts (Ray A.)
- Make libpq and ECPG build as proper shared libraries on OS X (Tom)
+ Make libpq and ECPG build as proper shared libraries on macOS (Tom)
- This behavior has been observed on BSD-derived kernels including OS X .
+ This behavior has been observed on BSD-derived kernels including macOS .
It resulted in an entirely-misleading startup failure complaining that
the shared memory request size was too large.
While this could theoretically happen anywhere, no standard build of
- Perl did things this way ... until
Mac OS X > 10.5.
+ Perl did things this way ... until
macOS > 10.5.
- Fix for Darwin (OS X ) compilation (Tom)
+ Fix for macOS (Darwin ) compilation (Tom)
(Bruce)
Fix pgxs> -L> library path
-specification for Win32, Cygwin, OS X , AIX (Bruce)
+specification for Win32, Cygwin, macOS , AIX (Bruce)
Check that SID is enabled while checking for Win32 admin
privileges (Magnus)
Add support for fsync_writethrough on
- Darwin (Chris Campbell)
+ macOS (Chris Campbell)
- This behavior has been observed on BSD-derived kernels including OS X .
+ This behavior has been observed on BSD-derived kernels including macOS .
It resulted in an entirely-misleading startup failure complaining that
the shared memory request size was too large.
While this could theoretically happen anywhere, no standard build of
- Perl did things this way ... until
Mac OS X > 10.5.
+ Perl did things this way ... until
macOS > 10.5.
- This behavior has been observed on BSD-derived kernels including OS X .
+ This behavior has been observed on BSD-derived kernels including macOS .
It resulted in an entirely-misleading startup failure complaining that
the shared memory request size was too large.
Use
SYSV> semaphores rather than POSIX on Darwin
- >= 6.0, i.e., OS X 10.2 and up (Chris Marcellino)
+ >= 6.0, i.e., macOS 10.2 and up (Chris Marcellino)
- Fix linking of
libpython> on OS X (Tom Lane)
+ Fix linking of
libpython> on macOS (Tom Lane)
- This behavior has been observed on BSD-derived kernels including OS X .
+ This behavior has been observed on BSD-derived kernels including macOS .
It resulted in an entirely-misleading startup failure complaining that
the shared memory request size was too large.
- Enable
DTrace> support on Mac OS X
+ Enable
DTrace> support on macOS
Leopard> and other non-Solaris platforms (Robert Lor)
- Warn if OS X 's setlocale()> starts an unwanted extra
+ Warn if macOS 's setlocale()> starts an unwanted extra
thread inside the postmaster (Noah Misch)
- Fix linking of
libpython> on OS X (Tom Lane)
+ Fix linking of
libpython> on macOS (Tom Lane)
- Fix incorrect quoting of log file name in Mac OS X start script
+ Fix incorrect quoting of log file name in macOS start script
(Sidar Lopez)
- Bonjour support now requires
OS X > 10.3 or later.
+ Bonjour support now requires
macOS > 10.3 or later.
The older API has been deprecated by Apple.
This dodges a portability problem on FreeBSD-derived platforms
- (including OS X ).
+ (including macOS ).
- Warn if OS X 's setlocale()> starts an unwanted extra
+ Warn if macOS 's setlocale()> starts an unwanted extra
thread inside the postmaster (Noah Misch)
- Fix linking of
libpython> on OS X (Tom Lane)
+ Fix linking of
libpython> on macOS (Tom Lane)
- Fix incorrect quoting of log file name in Mac OS X start script
+ Fix incorrect quoting of log file name in macOS start script
(Sidar Lopez)
This dodges a portability problem on FreeBSD-derived platforms
- (including OS X ).
+ (including macOS ).
- Warn if OS X 's setlocale()> starts an unwanted extra
+ Warn if macOS 's setlocale()> starts an unwanted extra
thread inside the postmaster (Noah Misch)
- Fix linking of
libpython> on OS X (Tom Lane)
+ Fix linking of
libpython> on macOS (Tom Lane)
This dodges a portability problem on FreeBSD-derived platforms
- (including OS X ).
+ (including macOS ).
- Silence some build warnings on OS X (Tom Lane)
+ Silence some build warnings on macOS (Tom Lane)
- Warn if OS X 's setlocale()> starts an unwanted extra
+ Warn if macOS 's setlocale()> starts an unwanted extra
thread inside the postmaster (Noah Misch)
- Fix linking of
libpython> on OS X (Tom Lane)
+ Fix linking of
libpython> on macOS (Tom Lane)
Add instructions for setting
- up the documentation tool chain on
Mac OS X >
+ up the documentation tool chain on
macOS >
(Peter Eisentraut)
This dodges a portability problem on FreeBSD-derived platforms
- (including OS X ).
+ (including macOS ).
- Silence some build warnings on OS X (Tom Lane)
+ Silence some build warnings on macOS (Tom Lane)
- Warn if OS X 's setlocale()> starts an unwanted extra
+ Warn if macOS 's setlocale()> starts an unwanted extra
thread inside the postmaster (Noah Misch)
This dodges a portability problem on FreeBSD-derived platforms
- (including OS X ).
+ (including macOS ).
Add proofreader's changes to docs (Addison-Wesley, Bruce)
New Alpha spinlock code (Adriaan Joubert, Compaq)
UnixWare port overhaul (Peter E)
-New Darwin/Mac OS X port (Peter Bierman, Bruce Hartzler)
+New macOS (Darwin) port (Peter Bierman, Bruce Hartzler)
New FreeBSD Alpha port (Alfred)
Overhaul shared memory segments (Tom)
Add IBM S/390 support (Neale Ferguson)
- OS X >
-
OS X >IPC configuration>>
+ macOS >
+
macOS >IPC configuration>>
- The recommended method for configuring shared memory in OS X
+ The recommended method for configuring shared memory in macOS
is to create a file named /etc/sysctl.conf>,
containing variable assignments such as:
kern.sysv.shmseg=8
kern.sysv.shmall=1024
- Note that in some OS X versions,
+ Note that in some macOS versions,
all five> shared-memory parameters must be set in
/etc/sysctl.conf>, else the values will be ignored.
- Beware that recent releases of OS X ignore attempts to set
+ Beware that recent releases of macOS ignore attempts to set
SHMMAX> to a value that isn't an exact multiple of 4096.
- In older OS X versions, you will need to reboot to have changes in the
+ In older macOS versions, you will need to reboot to have changes in the
shared memory parameters take effect. As of 10.5 it is possible to
change all but SHMMNI> on the fly, using
sysctl>. But it's still best to set up your preferred
- The file /etc/sysctl.conf> is only honored in OS X
+ The file /etc/sysctl.conf> is only honored in macOS
10.3.9 and later. If you are running a previous 10.3.x release,
you must edit the file /etc/rc>
and change the values in the following commands:
sysctl -w kern.sysv.shmall
Note that
- /etc/rc> is usually overwritten by OS X system updates,
+ /etc/rc> is usually overwritten by macOS system updates,
so you should expect to have to redo these edits after each update.
- In OS X 10.2 and earlier, instead edit these commands in the file
+ In macOS 10.2 and earlier, instead edit these commands in the file
/System/Library/StartupItems/SystemTuning/SystemTuning>.
platforms. uuid-ossp> can now be built without the OSSP
library on some platforms. On FreeBSD, NetBSD, and some other BSD-derived
platforms, suitable UUID creation functions are included in the
- core libc> library. On Linux, OS X , and some other
+ core libc> library. On Linux, macOS , and some other
platforms, suitable functions are provided in the libuuid>
library, which originally came from the e2fsprogs> project
(though on modern Linux it is considered part
- On
OS X , write caching can be prevented by
+ On
macOS , write caching can be prevented by
setting wal_sync_method> to fsync_writethrough>.
endif # shlib_major
# Where possible, restrict the symbols exported by the library to just the
-# official list, so as to avoid unintentional ABI changes. On recent Darwin
+# official list, so as to avoid unintentional ABI changes. On recent macOS
# this also quiets multiply-defined-symbol warnings in programs that use
# libpgport along with libpq.
ifneq (,$(SHLIB_EXPORTS))
# As of 1/2010:
# The probes.o file is necessary for dtrace support on Solaris, and on recent
# versions of systemtap. (Older systemtap releases just produce an empty
-# file, but that's okay.) However, OS X 's dtrace doesn't use it and doesn't
-# even recognize the -G option. So, build probes.o except on Darwin .
+# file, but that's okay.) However, macOS 's dtrace doesn't use it and doesn't
+# even recognize the -G option. So, build probes.o except on macOS .
# This might need adjustment as other platforms add dtrace support.
ifneq ($(PORTNAME), darwin)
ifeq ($(enable_dtrace), yes)
/*
- * Dynamic loading support for Darwin
+ * Dynamic loading support for macOS (Darwin)
*
* If dlopen() is available (Darwin 10.3 and later), we just use it.
* Otherwise we emulate it with the older, now deprecated, NSLinkModule API.
#ifdef HAVE_PTHREAD_IS_THREADED_NP
/*
- * On Darwin , libintl replaces setlocale() with a version that calls
+ * On macOS , libintl replaces setlocale() with a version that calls
* CFLocaleCopyCurrent() when its second argument is "" and every relevant
* environment variable is unset or empty. CFLocaleCopyCurrent() makes
* the process multithreaded. The postmaster calls sigprocmask() and
* Even apart from the risk of broken locales, it's possible that there
* are platforms where the use of abbreviated keys should be disabled at
* compile time. Having only 4 byte datums could make worst-case
- * performance drastically more likely, for example. Moreover, Darwin 's
- * strxfrm() implementations is known to not effectively concentrate a
+ * performance drastically more likely, for example. Moreover, macOS 's
+ * strxfrm() implementation is known to not effectively concentrate a
* significant amount of entropy from the original string in earlier
* transformed blobs. It's possible that other supported platforms are
* similarly encumbered. So, if we ever get past disabling this
#if defined(__darwin__)
/*
- * Darwin (and perhaps other NeXT-derived platforms?) has a static
- * copy of the argv pointer, which we may fix like so:
+ * macOS (and perhaps other NeXT-derived platforms?) has a static copy
+ * of the argv pointer, which we may fix like so:
*/
*_NSGetArgv() = new_argv;
#endif
* Typedefs used in PostgreSQL.
*
* NOTE: Do not use system-provided typedefs (e.g. uintptr_t, uint32_t, etc)
- * in probe definitions, as they cause compilation errors on Mac OS X 10.5.
+ * in probe definitions, as they cause compilation errors on macOS 10.5.
*/
#define LocalTransactionId unsigned int
#define LWLockMode int
/*
* Suppressing the write attempt when HISTFILE is set to /dev/null may
- * look like a negligible optimization, but it's necessary on e.g. Darwin ,
+ * look like a negligible optimization, but it's necessary on e.g. macOS ,
* where write_history will fail because it tries to chmod the target
* file.
*/
#define __darwin__ 1
-#if HAVE_DECL_F_FULLFSYNC /* not present before OS X 10.3 */
+#if HAVE_DECL_F_FULLFSYNC /* not present before macOS 10.3 */
#define HAVE_FSYNC_WRITETHROUGH
#endif
}
#else
#ifdef TCP_KEEPALIVE
- /* Darwin uses TCP_KEEPALIVE rather than TCP_KEEPIDLE */
+ /* macOS uses TCP_KEEPALIVE rather than TCP_KEEPIDLE */
if (setsockopt(conn->sock, IPPROTO_TCP, TCP_KEEPALIVE,
(char *) &idle, sizeof(idle)) < 0)
{
from libpgport are linked first. This avoids having applications
dependent on symbols that are _used_ by libpq, but not intended to be
exported by libpq. libpq's libpgport usage changes over time, so such a
-dependency is a problem. Win32, Linux, and Darwin use an export list to
+dependency is a problem. Windows, Linux, and macOS use an export list to
control the symbols exported by libpq.
#ifdef __darwin__
/*
- * Current OS X has many locales that report an empty string for CODESET,
+ * Current macOS has many locales that report an empty string for CODESET,
* but they all seem to actually use UTF-8.
*/
if (strlen(sys) == 0)
# src/template/darwin
-# Select appropriate semaphore support. Darwin 6.0 (Mac OS X 10.2) and up
-# support System V semaphores; before that we have to use POSIX semaphores,
-# which are less good for our purposes because they eat a file descriptor
-# per backend per max_connection slot.
+# Note: Darwin is the original code name for macOS, also known as OS X.
+# We still use "darwin" as the port name, partly because config.guess does.
+
+# Select appropriate semaphore support. Darwin 6.0 (macOS 10.2) and up
+# support System V semaphores; before that we have to use named POSIX
+# semaphores, which are less good for our purposes because they eat a
+# file descriptor per backend per max_connection slot.
case $host_os in
darwin[015].*)
USE_NAMED_POSIX_SEMAPHORES=1
/*
* Most platforms have adopted the POSIX locale as their
* implementation-defined default locale. Exceptions include native
- * Windows, Darwin with --enable-nls, and Cygwin with --enable-nls.
+ * Windows, macOS with --enable-nls, and Cygwin with --enable-nls.
* (Use of --enable-nls matters because libintl replaces setlocale().)
- * Also, PostgreSQL does not support Darwin with locale environment
+ * Also, PostgreSQL does not support macOS with locale environment
* variables unset; see PostmasterMain().
*/
#if defined(WIN32) || defined(__CYGWIN__) || defined(__darwin__)
# find both .o files and executables. Therefore, ignore error messages about
# unsuitable files being fed to objdump.
#
-# This is known to work on Linux and on some BSDen, including Mac OS X .
+# This is known to work on Linux and on some BSDen, including macOS .
#
# Caution: on the platforms we use, this only prints typedefs that are used
# to declare at least one variable or struct field. If you have say