Re: Multiple-output-file make rules: We're Doing It Wrong

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Multiple-output-file make rules: We're Doing It Wrong
Date: 2018-03-22 03:16:22
Message-ID: 2376.1521688582@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> I looked for rules with this bug by looking for comments that
> mention parser/Makefile. There may well be some more, but I have
> no good idea how to find them --- any thoughts?

I realized that grepping for line-ending semicolons in makefiles
would be a pretty efficient way to check this. Doing so reveals
these additional trouble spots:

src/Makefile.shlib:324:$(stlib): $(shlib) ;
src/Makefile.shlib:361:$(stlib): $(shlib) ;
src/backend/Makefile:79:libpostgres.a: postgres ;
src/backend/Makefile:89:libpostgres.a: postgres ;
src/test/isolation/Makefile:46:specparse.h: specparse.c ;
src/interfaces/ecpg/preproc/Makefile:42:preproc.h: preproc.c ;

I'm not too excited about the libpostgres.a cases, but the last
two are definitely hazards for VPATH builds, and the two cases in
Makefile.shlib might be worth fixing too.

Also, I trolled the archives for possible reports of actual problems
of this ilk. I found this:

https://www.postgresql.org/message-id/569C22C0.70404%40lucee.org

which certainly looks exactly like the sort of behavior I'd expect,
if there'd been a timestamp problem in the 9.5.0 tarball. But the
rules around *dll.def files don't look like there's any such bug.

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2018-03-22 03:22:56 Re: JIT compiling with LLVM v12.2
Previous Message Thomas Munro 2018-03-22 03:09:51 Re: JIT compiling with LLVM v12.2