summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndres Freund2022-10-07 18:53:39 +0000
committerAndres Freund2022-10-07 18:53:39 +0000
commit2473cb9ff374dff99437138c144fab6d9f7dfd26 (patch)
treef262f82d015d3c4dba373b7fcdca407f25c6269a /src
parent614a406b4ff1b6f0f84b89fb56dca5175978177d (diff)
autoconf: Rely on ar supporting index creation
This way we don't need RANLIB anymore, making it a bit simpler for the meson build to generate Makefile.global for PGXS compatibility. FreeBSD, NetBSD, OpenBSD, the only platforms where we didn't use AROPT=crs, all have supported the 's' option for a long time. On macOS we ran ranlib after installing a static library. This was added a long time ago, in 58ad65ec2def. I cannot reproduce an issue in more recent macOS versions. This is removed now. Based on discussion with Tom, I left the 'touch' at the end of static libraries generation, added in 826eff57c4c, in place. While it looks like current versions of Apple's ar/ranlib don't need it, it was needed not too long ago. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/20221005200710.luvw5evhwf6clig6@awork3.anarazel.de
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.global.in2
-rw-r--r--src/Makefile.shlib7
-rw-r--r--src/makefiles/Makefile.aix3
-rw-r--r--src/makefiles/Makefile.cygwin2
-rw-r--r--src/makefiles/Makefile.darwin2
-rw-r--r--src/makefiles/Makefile.freebsd2
-rw-r--r--src/makefiles/Makefile.linux2
-rw-r--r--src/makefiles/Makefile.netbsd2
-rw-r--r--src/makefiles/Makefile.openbsd2
-rw-r--r--src/makefiles/Makefile.solaris2
-rw-r--r--src/makefiles/Makefile.win322
11 files changed, 2 insertions, 26 deletions
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index d8ea2da583c..99889167e18 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -284,6 +284,7 @@ ZIC = @ZIC@
# Linking
AR = @AR@
+AROPT = crs
LIBS = @LIBS@
LDAP_LIBS_FE = @LDAP_LIBS_FE@
LDAP_LIBS_BE = @LDAP_LIBS_BE@
@@ -318,7 +319,6 @@ LDFLAGS_EX = @LDFLAGS_EX@
LDFLAGS_SL += @LDFLAGS_SL@
LDREL = -r
LDOUT = -o
-RANLIB = @RANLIB@
WINDRES = @WINDRES@
X = @EXEEXT@
diff --git a/src/Makefile.shlib b/src/Makefile.shlib
index db466b3b845..35abce58d22 100644
--- a/src/Makefile.shlib
+++ b/src/Makefile.shlib
@@ -252,7 +252,7 @@ all-static-lib: $(stlib)
all-shared-lib: $(shlib)
# In this rule, "touch $@" works around a problem on some platforms wherein
-# ranlib updates the library file's mod time with a value calculated to
+# ar updates the library file's mod time with a value calculated to
# seconds precision. If the filesystem has sub-second timestamps, this can
# cause the library file to appear older than its input files, triggering
# parallel-make problems.
@@ -260,7 +260,6 @@ ifndef haslibarule
$(stlib): $(OBJS) | $(SHLIB_PREREQS)
rm -f $@
$(LINK.static) $@ $^
- $(RANLIB) $@
touch $@
endif #haslibarule
@@ -394,10 +393,6 @@ install-lib-pc: lib$(NAME).pc installdirs-lib
install-lib-static: $(stlib) installdirs-lib
$(INSTALL_STLIB) $< '$(DESTDIR)$(libdir)/$(stlib)'
-ifeq ($(PORTNAME), darwin)
- cd '$(DESTDIR)$(libdir)' && \
- $(RANLIB) $(stlib)
-endif
install-lib-shared: $(shlib) installdirs-lib
ifdef soname
diff --git a/src/makefiles/Makefile.aix b/src/makefiles/Makefile.aix
index 56d7f22aff6..dd16a7a0378 100644
--- a/src/makefiles/Makefile.aix
+++ b/src/makefiles/Makefile.aix
@@ -2,9 +2,6 @@
# symbol names to tell them what to export/import.
MAKE_EXPORTS= true
-RANLIB= touch
-AROPT = crs
-
# -blibpath must contain ALL directories where we should look for libraries
libpath := $(shell echo $(subst -L,:,$(filter -L/%,$(LDFLAGS))) | sed -e's/ //g'):/usr/lib:/lib
diff --git a/src/makefiles/Makefile.cygwin b/src/makefiles/Makefile.cygwin
index 6afa9a06a1b..77593972638 100644
--- a/src/makefiles/Makefile.cygwin
+++ b/src/makefiles/Makefile.cygwin
@@ -10,8 +10,6 @@ endif
# (see http://sources.redhat.com/cygwin/faq/faq.html#SEC110)
LIBS:=$(filter-out -lm -lc, $(LIBS))
-AROPT = crs
-
override CPPFLAGS += -DWIN32_STACK_RLIMIT=$(WIN32_STACK_RLIMIT)
ifneq (,$(findstring backend,$(subdir)))
diff --git a/src/makefiles/Makefile.darwin b/src/makefiles/Makefile.darwin
index 45f253a5b43..7095f66e25c 100644
--- a/src/makefiles/Makefile.darwin
+++ b/src/makefiles/Makefile.darwin
@@ -1,5 +1,3 @@
-AROPT = crs
-
# env var name to use in place of LD_LIBRARY_PATH
ld_library_path_var = DYLD_LIBRARY_PATH
diff --git a/src/makefiles/Makefile.freebsd b/src/makefiles/Makefile.freebsd
index 0e77616b0f9..db74a21568c 100644
--- a/src/makefiles/Makefile.freebsd
+++ b/src/makefiles/Makefile.freebsd
@@ -1,5 +1,3 @@
-AROPT = cr
-
export_dynamic = -Wl,-export-dynamic
rpath = -Wl,-R'$(rpathdir)'
diff --git a/src/makefiles/Makefile.linux b/src/makefiles/Makefile.linux
index 1ffec9d1698..5a9451371ab 100644
--- a/src/makefiles/Makefile.linux
+++ b/src/makefiles/Makefile.linux
@@ -1,5 +1,3 @@
-AROPT = crs
-
export_dynamic = -Wl,-E
# Use --enable-new-dtags to generate DT_RUNPATH instead of DT_RPATH.
# This allows LD_LIBRARY_PATH to still work when needed.
diff --git a/src/makefiles/Makefile.netbsd b/src/makefiles/Makefile.netbsd
index 421b735e407..4f8e9ec2521 100644
--- a/src/makefiles/Makefile.netbsd
+++ b/src/makefiles/Makefile.netbsd
@@ -1,5 +1,3 @@
-AROPT = cr
-
export_dynamic = -Wl,-E
rpath = -Wl,-R'$(rpathdir)'
diff --git a/src/makefiles/Makefile.openbsd b/src/makefiles/Makefile.openbsd
index 421b735e407..4f8e9ec2521 100644
--- a/src/makefiles/Makefile.openbsd
+++ b/src/makefiles/Makefile.openbsd
@@ -1,5 +1,3 @@
-AROPT = cr
-
export_dynamic = -Wl,-E
rpath = -Wl,-R'$(rpathdir)'
diff --git a/src/makefiles/Makefile.solaris b/src/makefiles/Makefile.solaris
index acdf44cc0f2..3de73ebc010 100644
--- a/src/makefiles/Makefile.solaris
+++ b/src/makefiles/Makefile.solaris
@@ -1,6 +1,4 @@
# src/makefiles/Makefile.solaris
-
-AROPT = crs
rpath = -Wl,-rpath,'$(rpathdir)'
ifeq ($(with_gnu_ld), yes)
diff --git a/src/makefiles/Makefile.win32 b/src/makefiles/Makefile.win32
index d268b3ebafd..dc1aafa115a 100644
--- a/src/makefiles/Makefile.win32
+++ b/src/makefiles/Makefile.win32
@@ -10,8 +10,6 @@ endif
override CPPFLAGS += -DWIN32_STACK_RLIMIT=$(WIN32_STACK_RLIMIT)
-AROPT = crs
-
ifneq (,$(findstring backend,$(subdir)))
ifeq (,$(findstring conversion_procs,$(subdir)))
ifeq (,$(findstring libpqwalreceiver,$(subdir)))