Hi,
On Tue, Aug 19, 2025 at 11:27:25AM -0400, Tom Lane wrote:
> =?utf-8?Q?=C3=81lvaro?= Herrera <alvherre@kurilemu.de> writes:
> > Yeah, I'm not on board with making changes to the makefiles, because
> > AFAIR the current arrangement is purposefully what is is. I did
> > discover that my build script does "make install ; make -C contrib
> > install", which means src/test/modules is not built. But that's a local
> > fix for me.
>
> I think "make world-bin"
We have:
$(call recurse,world-bin,src config contrib,all)
means src/Makefile is reached but will not reach src/test/modules/Makefile
because test/modules is not part of src/Makefile's SUBDIRS.
> or "make install-world" are the accepted targets for building everything.
We have:
$(call recurse,install-world,doc src config contrib,install)
so, same as above (src/test/modules/Makefile will not be reached).
From what I can see, only:
check-world:
$(call recurse,check-world,src/test src/pl src/interfaces contrib src/bin src/tools/pg_bsd_indent,check)
checkprep:
$(call recurse,checkprep, src/test src/pl src/interfaces contrib src/bin)
installcheck-world:
$(call recurse,installcheck-world,src/test src/pl src/interfaces contrib src/bin,installcheck)
build src/test/modules.
I just found surprising that a "default" make (no target specified) does not
build src/test/modules while a "default" meson/ninja does.
Regards,
--
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com