[PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
Nathan Bossart <nathan@postgresql.org>
From: Nathan Bossart <nathan@postgresql.org>
To:
Date: 2026-04-28T20:27:39Z
Lists: pgsql-hackers
After a recent macOS update, building Postgres produces warnings
that look like this:
ranlib: warning: 'libpgport_shlib.a(pg_cpu_x86.c.o)' has no symbols
ranlib: warning: 'libpgport_shlib.a(pg_popcount_x86.c.o)' has no symbols
To fix, add a dummy symbol to files that may otherwise have none.
Reported-by: Zhang Mingli <zmlpostgres@gmail.com>
Discussion: https://postgr.es/m/229aaaf3-f529-44ed-8e50-00cb6909af21%40Spark
Backpatch-through: 14
---
src/common/protocol_openssl.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/common/protocol_openssl.c b/src/common/protocol_openssl.c
index ae378685e1f..4c039775a3f 100644
--- a/src/common/protocol_openssl.c
+++ b/src/common/protocol_openssl.c
@@ -114,4 +114,10 @@ SSL_CTX_set_max_proto_version(SSL_CTX *ctx, int version)
return 1; /* success */
}
-#endif /* !SSL_CTX_set_min_proto_version */
+#else
+
+/* prevent linker complaints about empty module */
+extern int protocol_openssl_dummy_variable;
+int protocol_openssl_dummy_variable = 0;
+
+#endif
--
2.50.1 (Apple Git-155)
--TDT48G9Q3XiJHnLN
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment;
filename=v4-0001-Suppress-has-no-symbols-linker-warnings-on-ma.patch.v18