aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2022-08-05 09:36:50 +1200
committerThomas Munro <tmunro@postgresql.org>2022-08-05 09:36:50 +1200
commit5963c9a154bd5590a7ea48826d9bd72c9324e071 (patch)
tree99099e09af6629f7e1c97ccc00020186b5874e09 /src
parent2b1f580ee2ca373d0451d89a40fc8f0a5f55ede9 (diff)
downloadpostgresql-5963c9a154bd5590a7ea48826d9bd72c9324e071.tar.gz
postgresql-5963c9a154bd5590a7ea48826d9bd72c9324e071.zip
Remove configure probe for link.
link() is in SUSv2 and all targeted Unix systems have it. We have replacement code for Windows that doesn't require a configure probe. Since only Windows needs it, rename src/port/link.c to win32link.c like other similar things. There is no need for a vestigial HAVE_LINK macro, because we expect all Unix and, with our replacement function, Windows systems to have it, so we didn't have any tests around link() usage. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Reviewed-by: Andres Freund <andres@anarazel.de> Discussion: https://postgr.es/m/CA+hUKGJ3LHeP9w5Fgzdr4G8AnEtJ=z=p6hGDEm4qYGEUX5B6fQ@mail.gmail.com
Diffstat (limited to 'src')
-rw-r--r--src/include/pg_config.h.in3
-rw-r--r--src/include/port.h3
-rw-r--r--src/port/win32link.c (renamed from src/port/link.c)8
-rw-r--r--src/tools/msvc/Mkvcbuild.pm6
-rw-r--r--src/tools/msvc/Solution.pm1
5 files changed, 8 insertions, 13 deletions
diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in
index 15e01efa068..beb42549c16 100644
--- a/src/include/pg_config.h.in
+++ b/src/include/pg_config.h.in
@@ -334,9 +334,6 @@
/* Define to 1 if you have the `zstd' library (-lzstd). */
#undef HAVE_LIBZSTD
-/* Define to 1 if you have the `link' function. */
-#undef HAVE_LINK
-
/* Define to 1 if the system has the type `locale_t'. */
#undef HAVE_LOCALE_T
diff --git a/src/include/port.h b/src/include/port.h
index 7dad6caa639..a219a8b8689 100644
--- a/src/include/port.h
+++ b/src/include/port.h
@@ -402,7 +402,8 @@ extern float pg_strtof(const char *nptr, char **endptr);
#define strtof(a,b) (pg_strtof((a),(b)))
#endif
-#ifndef HAVE_LINK
+#ifdef WIN32
+/* src/port/win32link.c */
extern int link(const char *src, const char *dst);
#endif
diff --git a/src/port/link.c b/src/port/win32link.c
index 1e0ccd4648a..06584790465 100644
--- a/src/port/link.c
+++ b/src/port/win32link.c
@@ -1,21 +1,19 @@
/*-------------------------------------------------------------------------
*
- * link.c
+ * win32link.c
*
* Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
*
* IDENTIFICATION
- * src/port/link.c
+ * src/port/win32link.c
*
*-------------------------------------------------------------------------
*/
#include "c.h"
-#ifdef WIN32
-
int
link(const char *src, const char *dst)
{
@@ -31,5 +29,3 @@ link(const char *src, const char *dst)
else
return 0;
}
-
-#endif
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index 266f98e2ed4..1ffe6e66d5a 100644
--- a/src/tools/msvc/Mkvcbuild.pm
+++ b/src/tools/msvc/Mkvcbuild.pm
@@ -103,13 +103,15 @@ sub mkvcbuild
getpeereid.c getrusage.c inet_aton.c
getaddrinfo.c gettimeofday.c inet_net_ntop.c kill.c open.c
snprintf.c strlcat.c strlcpy.c dirmod.c noblock.c path.c
- dirent.c getopt.c getopt_long.c link.c
+ dirent.c getopt.c getopt_long.c
pread.c preadv.c pwrite.c pwritev.c pg_bitutils.c
pg_strong_random.c pgcheckdir.c pgmkdirp.c pgsleep.c pgstrcasecmp.c
pqsignal.c mkdtemp.c qsort.c qsort_arg.c bsearch_arg.c quotes.c system.c
strerror.c tar.c
win32dlopen.c
- win32env.c win32error.c win32ntdll.c
+ win32env.c win32error.c
+ win32link.c
+ win32ntdll.c
win32security.c win32setlocale.c win32stat.c);
push(@pgportfiles, 'strtof.c') if ($vsVersion < '14.00');
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm
index 71db5f60f8a..7806ad67d08 100644
--- a/src/tools/msvc/Solution.pm
+++ b/src/tools/msvc/Solution.pm
@@ -306,7 +306,6 @@ sub GenerateFiles
HAVE_LIBXSLT => undef,
HAVE_LIBZ => $self->{options}->{zlib} ? 1 : undef,
HAVE_LIBZSTD => undef,
- HAVE_LINK => undef,
HAVE_LOCALE_T => 1,
HAVE_LONG_INT_64 => undef,
HAVE_LONG_LONG_INT_64 => 1,