Re: pg_bsd_indent compiles bytecode

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: pg_bsd_indent compiles bytecode
Дата
Msg-id 20200627223427.4ys2epcttsrdthfl@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: pg_bsd_indent compiles bytecode  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: pg_bsd_indent compiles bytecode  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: pg_bsd_indent compiles bytecode  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi,

On 2020-06-27 17:12:57 -0400, Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> > On Tue, Jun 23, 2020 at 05:56:10PM -0400, Alvaro Herrera wrote:
> >> I just noticed that when you compile pg_bsd_indent with a PG tree that
> >> has --enable-jit (or something around that), then it compiles the source
> >> files into bytecode.
> >> Obviously this is not harmful since these files don't get installed, but
> >> I wonder if our compiles aren't being excessively generous.
> 
> > Are you saying pg_bsd_indent indents the JIT output files?  I assumed
> > people only ran pg_bsd_indent on dist-clean trees.
> 
> I think what he means is that when pg_bsd_indent absorbs the CFLAGS
> settings that PG uses (because it uses the pgxs build infrastructure),
> it ends up also building .bc files.

Hm. Yea, I think I see the problem. OBJS should only be expanded if
MODULE_big is set.


> I wouldn't care about this particularly for pg_bsd_indent itself,
> but it suggests that we're probably building .bc files for client-side
> files, which seems like a substantial waste of time.  Maybe we need
> different CFLAGS for client and server?

I don't think it'll apply to most in-tree client side programs, so it
shouldn't be too bad currently. Still should fix it, of course.

I can test that with another program, but for some reason pg_bsd_indent
fails to build against 13/HEAD, but builds fine against 12. Not sure yet
what's up:

/usr/bin/ld.gold: error: indent.o: multiple definition of 'input'
/usr/bin/ld.gold: args.o: previous definition here
/usr/bin/ld.gold: error: indent.o: multiple definition of 'output'
/usr/bin/ld.gold: args.o: previous definition here
/usr/bin/ld.gold: error: indent.o: multiple definition of 'labbuf'
/usr/bin/ld.gold: args.o: previous definition here
...

Greetings,

Andres Freund



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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: Fwd: PostgreSQL: WolfSSL support
Следующее
От: Tom Lane
Дата:
Сообщение: Re: pg_bsd_indent compiles bytecode