public inbox for [email protected]  
help / color / mirror / Atom feed
From: Nathan Bossart <[email protected]>
To: Tom Lane <[email protected]>
Cc: Peter Eisentraut <[email protected]>
Cc: Zhang Mingli <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Cc: [email protected]
Subject: Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects
Date: Mon, 27 Apr 2026 15:03:37 -0500
Message-ID: <ae_BGTKwkAXQRY7R@nathan> (raw)
In-Reply-To: <ae-8WBrqoTWYCTCG@nathan>
References: <229aaaf3-f529-44ed-8e50-00cb6909af21@Spark>
	<[email protected]>
	<[email protected]>
	<aYN5vmHb89m3sfgs@nathan>
	<[email protected]>
	<aYOTFLqyvvPUQLN8@nathan>
	<ae7BvFTamKBDF1ga@nathan>
	<[email protected]>
	<ae7KiQcfDaavu5cD@nathan>
	<ae-8WBrqoTWYCTCG@nathan>

On Mon, Apr 27, 2026 at 02:43:20PM -0500, Nathan Bossart wrote:
> On Sun, Apr 26, 2026 at 09:31:37PM -0500, Nathan Bossart wrote:
>> On Sun, Apr 26, 2026 at 10:18:33PM -0400, Tom Lane wrote:
>>> I previously suggested that we should teach the build systems not
>>> to build the foo_x86 and foo_aarch64 modules when not on those
>>> architectures.  That was shot down for reasons that made no great
>>> amount of sense to me, but I think it'd be fairly easy and clean.
>> 
>> Yeah, AFAICT that's our best bet.  Will write it up in the morning.
> 
> Here's what I have so far.  Two notes:
> 
> * Since pg_popcount_aarch64.c only builds symbols when USE_NEON is defined,
> I needed to teach the build code about that #define.  So, this patch
> effectively moves USE_NEON and USE_SSE2 from c.h to pg_config.h, which
> happens to be the first #include within c.h.  The reason that I bring this
> up is because back-patching it seems a little scary, although I don't see
> any concrete reasons it would be unsafe.
> 
> * pg_cpu_x86.c has a similar problem, which I haven't fixed yet.
> Presumably a similar approach will work there.  I've added John Naylor to
> this thread for his thoughts.

Sorry, I noticed I was using USE_SSE2 for choosing whether to build
pg_popcount_x86.c, but the code in that file is actually surrounded by
HAVE_X86_64_POPCNTQ.  New patch attached.

-- 
nathan


view thread (22+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects
  In-Reply-To: <ae_BGTKwkAXQRY7R@nathan>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox