Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects

From: John Naylor <johncnaylorls(at)gmail(dot)com>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Peter Eisentraut <peter(at)eisentraut(dot)org>, Zhang Mingli <zmlpostgres(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects
Date: 2026-04-29 05:04:48
Message-ID: CANWCAZZVVhymm2eqzxQczi9pX7C6sKDzdsOT89v9CtZB__+p+g@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Apr 29, 2026 at 3:32 AM Nathan Bossart <nathandbossart(at)gmail(dot)com> wrote:
>
> On Tue, Apr 28, 2026 at 09:09:09AM -0500, Nathan Bossart wrote:
> > On Tue, Apr 28, 2026 at 09:29:41AM -0400, Tom Lane wrote:
> >> If we do care, a low-tech solution could be to have a dummy symbol
> >> declared in each file, along the lines of
> >>
> >> #if HAVE_X86_64_POPCNTQ
> >> // code for popcntq case
> >> #elif HAVE_FROBNITZ
> >> // code for frobnitz case
> >> ...
> >> #else
> >> /* prevent linker complaints about empty module */
> >> extern int pg_cpu_x86_dummy_variable;
> >> int pg_cpu_x86_dummy_variable = 0;
> >> #endif
> >>
> >> Actually then we'd not need to change the build systems either...
> >
> > I've been trying to avoid doing that, but it's a far simpler solution, and
> > in theory it should fix the problem for all platforms, too. So, it's
> > probably the way to go.
>
> Here's a full set of patches for back-patching purposes.

+1

-#endif /* USE_NEON */
+#else
...
+#endif

Is the removal of the comment intentional?

--
John Naylor
Amazon Web Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Smith 2026-04-29 05:45:57 Re: Support EXCEPT for TABLES IN SCHEMA publications
Previous Message Ajin Cherian 2026-04-29 04:44:47 Re: Bug in ALTER SUBSCRIPTION ... SERVER / ... CONNECTION with broken old server