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

Поиск
Список
Период
Сортировка
От Nathan Bossart
Тема Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects
Дата
Msg-id ae-8WBrqoTWYCTCG@nathan
обсуждение
Ответ на Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects  (Nathan Bossart <nathandbossart@gmail.com>)
Ответы Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects
Re: [BUG?] macOS (Intel) build warnings: "ranlib: file … has no symbols" for aarch64 objects
Список pgsql-hackers
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.

-- 
nathan

Вложения

В списке pgsql-hackers по дате отправления: