public inbox for [email protected]
help / color / mirror / Atom feed[PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
6+ messages / 1 participants
[nested] [flat]
* [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
@ 2026-04-28 20:27 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 6+ messages in thread
From: Nathan Bossart @ 2026-04-28 20:27 UTC (permalink / raw)
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 <[email protected]>
Discussion: https://postgr.es/m/229aaaf3-f529-44ed-8e50-00cb6909af21%40Spark
Backpatch-through: 14
---
src/port/pg_cpu_x86.c | 7 ++++++-
src/port/pg_popcount_aarch64.c | 8 +++++++-
src/port/pg_popcount_x86.c | 8 +++++++-
3 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/src/port/pg_cpu_x86.c b/src/port/pg_cpu_x86.c
index 150b4a1d574..2a4eae8688b 100644
--- a/src/port/pg_cpu_x86.c
+++ b/src/port/pg_cpu_x86.c
@@ -263,5 +263,10 @@ x86_hypervisor_tsc_frequency_khz(void)
return 0;
}
+#else
+
+/* prevent linker complaints about empty module */
+extern int pg_cpu_x86_dummy_variable;
+int pg_cpu_x86_dummy_variable = 0;
-#endif /* defined(USE_SSE2) || defined(__i386__) */
+#endif
diff --git a/src/port/pg_popcount_aarch64.c b/src/port/pg_popcount_aarch64.c
index 3969a42523c..68a768bac01 100644
--- a/src/port/pg_popcount_aarch64.c
+++ b/src/port/pg_popcount_aarch64.c
@@ -463,4 +463,10 @@ pg_popcount_masked_neon(const char *buf, int bytes, uint8 mask)
return popcnt;
}
-#endif /* USE_NEON */
+#else
+
+/* prevent linker complaints about empty module */
+extern int pg_popcount_aarch64_dummy_variable;
+int pg_popcount_aarch64_dummy_variable = 0;
+
+#endif
diff --git a/src/port/pg_popcount_x86.c b/src/port/pg_popcount_x86.c
index 91579e6b569..b3a6d8b3b0c 100644
--- a/src/port/pg_popcount_x86.c
+++ b/src/port/pg_popcount_x86.c
@@ -301,4 +301,10 @@ pg_popcount_masked_sse42(const char *buf, int bytes, uint8 mask)
return popcnt;
}
-#endif /* HAVE_X86_64_POPCNTQ */
+#else
+
+/* prevent linker complaints about empty module */
+extern int pg_popcount_x86_dummy_variable;
+int pg_popcount_x86_dummy_variable = 0;
+
+#endif
--
2.50.1 (Apple Git-155)
--TDT48G9Q3XiJHnLN--
^ permalink raw reply [nested|flat] 6+ messages in thread
* [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
@ 2026-04-28 20:27 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 6+ messages in thread
From: Nathan Bossart @ 2026-04-28 20:27 UTC (permalink / raw)
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 <[email protected]>
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 92a0a22ecfb..7554e9444f6 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.v15
^ permalink raw reply [nested|flat] 6+ messages in thread
* [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
@ 2026-04-28 20:27 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 6+ messages in thread
From: Nathan Bossart @ 2026-04-28 20:27 UTC (permalink / raw)
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 <[email protected]>
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 8d1da8be387..6b116b5e30d 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.v16
^ permalink raw reply [nested|flat] 6+ messages in thread
* [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
@ 2026-04-28 20:27 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 6+ messages in thread
From: Nathan Bossart @ 2026-04-28 20:27 UTC (permalink / raw)
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 <[email protected]>
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 089cbd33cca..b82369dfd55 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.v17
^ permalink raw reply [nested|flat] 6+ messages in thread
* [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
@ 2026-04-28 20:27 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 6+ messages in thread
From: Nathan Bossart @ 2026-04-28 20:27 UTC (permalink / raw)
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 <[email protected]>
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
^ permalink raw reply [nested|flat] 6+ messages in thread
* [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS.
@ 2026-04-28 20:27 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 6+ messages in thread
From: Nathan Bossart @ 2026-04-28 20:27 UTC (permalink / raw)
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 <[email protected]>
Discussion: https://postgr.es/m/229aaaf3-f529-44ed-8e50-00cb6909af21%40Spark
Backpatch-through: 14
---
src/port/pg_popcount_aarch64.c | 8 +++++++-
src/port/pg_popcount_avx512.c | 9 ++++++++-
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/src/port/pg_popcount_aarch64.c b/src/port/pg_popcount_aarch64.c
index 0b6b86de4d0..7a8c6d44e3c 100644
--- a/src/port/pg_popcount_aarch64.c
+++ b/src/port/pg_popcount_aarch64.c
@@ -478,4 +478,10 @@ pg_popcount_masked_neon(const char *buf, int bytes, bits8 mask)
return popcnt;
}
-#endif /* POPCNT_AARCH64 */
+#else
+
+/* prevent linker complaints about empty module */
+extern int pg_popcount_aarch64_dummy_variable;
+int pg_popcount_aarch64_dummy_variable = 0;
+
+#endif
diff --git a/src/port/pg_popcount_avx512.c b/src/port/pg_popcount_avx512.c
index 80c0aee3e73..d8998aa2083 100644
--- a/src/port/pg_popcount_avx512.c
+++ b/src/port/pg_popcount_avx512.c
@@ -220,4 +220,11 @@ pg_popcount_masked_avx512(const char *buf, int bytes, bits8 mask)
}
#endif /* TRY_POPCNT_X86_64 */
-#endif /* USE_AVX512_POPCNT_WITH_RUNTIME_CHECK */
+
+#else
+
+/* prevent linker complaints about empty module */
+extern int pg_popcount_avx512_dummy_variable;
+int pg_popcount_avx512_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.patch.master
^ permalink raw reply [nested|flat] 6+ messages in thread
end of thread, other threads:[~2026-04-28 20:27 UTC | newest]
Thread overview: 6+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2026-04-28 20:27 [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS. Nathan Bossart <[email protected]>
2026-04-28 20:27 [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS. Nathan Bossart <[email protected]>
2026-04-28 20:27 [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS. Nathan Bossart <[email protected]>
2026-04-28 20:27 [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS. Nathan Bossart <[email protected]>
2026-04-28 20:27 [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS. Nathan Bossart <[email protected]>
2026-04-28 20:27 [PATCH v4 1/1] Suppress "has no symbols" linker warnings on macOS. Nathan Bossart <[email protected]>
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox