Re: Helmut Grohne > The immediate issue is that its Build-Depends are not cross-satisfiably. > There are multiple reasons for this one of which is libio-pty-perl. I've > grepped through the sources for /io..?pty/i and found only occurences > used in tests. I've performed a nocheck build with this dependency > dropped and it worked. Unfortunately, since postgresql is not > reproducible, we cannot validate a nocheck build against a regular > build. Given these findings, I think it is a fair compromise to annotate > libio-pty-perl <!nocheck>. Do you agree? > > Beyond this, I figured that libipc-run-perl can be dropped when passing > --disable-tap-tests, which seems fine during nocheck. Unfortunately, > postgresql embeds its configure flags in pg_config and others. Varying > configure flags therefore make postgresql unreproducible. Would it be > sensible to delete configure flags from pg_config?
Hi Helmut, thanks for the---as always---thorough research that comes with your patches. For libipc-run-perl I have good news, the perl module can be marked <!nocheck> while keeping --enable-tap-tests on the configure line if PROVE=/usr/bin/prove is passed along. So both will be marked nocheck with the next upload, which is due on Thursday anyway as by PG's minor release schedule. > In general, making postgresql reproducible would help a lot in further > reducing its Build-Depends as automated tools can tell you which > dependencies are unused in that case. It used to be reproducible for about a day or two, and then the patch adding query JITing using libllvm landed in PG11. I just rechecked the list of diffs on r-b.org, and all the differences are in the .bc bitcode files, encoding the build path (and there is no clang option yet to remove it). So PG is reproducible even today, you just have to build in the same path, as can be seen in r-b's bullseye builds. Thanks, Christoph

