Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qzwAo-0026rF-4R for pgsql-hackers@arkaria.postgresql.org; Mon, 06 Nov 2023 09:45:34 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1qzwAm-00Dz0Q-87 for pgsql-hackers@arkaria.postgresql.org; Mon, 06 Nov 2023 09:45:32 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qzwAl-00Dz0I-Uc for pgsql-hackers@lists.postgresql.org; Mon, 06 Nov 2023 09:45:31 +0000 Received: from feynman.df7cb.de ([195.49.152.168]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qzwAi-004yXJ-SC for pgsql-hackers@postgresql.org; Mon, 06 Nov 2023 09:45:31 +0000 Received: from msg.df7cb.de (unknown [IPv6:2a02:908:1482:3660:b7d0:f584:a987:bc23]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-384) server-digest SHA384) (Client did not present a certificate) by feynman.df7cb.de (Postfix) with ESMTPSA id 4SP60R6fh8z3Ft8; Mon, 6 Nov 2023 10:45:27 +0100 (CET) Date: Mon, 6 Nov 2023 10:45:27 +0100 From: Christoph Berg To: Andres Freund Cc: Peter Eisentraut , Andrew Dunstan , Tom Lane , pgsql-hackers Subject: Re: meson documentation build open issues Message-ID: Mail-Followup-To: Christoph Berg , Andres Freund , Peter Eisentraut , Andrew Dunstan , Tom Lane , pgsql-hackers References: <20230405144512.zfzb6vd77dk5dnyr@awork3.anarazel.de> <50193d79-e7d1-ea81-1ef3-5670b007c7c3@enterprisedb.com> <20231103163848.26egkh5qdgw3vmil@awork3.anarazel.de> <20231103185344.zhfzturwdbp4d4s5@awork3.anarazel.de> <20231103211601.bgqx3cfq6pz2lmjw@awork3.anarazel.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231103211601.bgqx3cfq6pz2lmjw@awork3.anarazel.de> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Re: Andres Freund > > > The reason for that is simply that the docs take too long to build. > > > > That why I'd prefer to be able to separate arch:all and arch:any > > builds, yes. > > What's stopping you from doing that? I think the only arch:any content we > have is the docs, and those you can build separately? Doc builds do trigger > generation of a handful of files besides the docs, but not more. Historically, .deb files have been required to contain the manpages for all executables even when there's a separate -doc package. This means we'd need a separate (hopefully fast) manpage build even when the arch:any binaries are built. We might get around that by introducing a new postgresql-manpages-XX arch:all package, but that might be too much micropackaging. The install-doc-man target will likely fix it, will play with it a bit more, thanks. > > > I'm working on merging it. Having it for core PG isn't a huge difficulty, the > > > extension story is what's been holding me back... > > > > In-core extensions or external ones? > > Both, although the difficulty of doing it is somewhat separate for each. I'd think most external extensions could stay with pgxs.mk for the time being. > + > + > + > + > + Build with selinux support, enabling the > + extension. This option defaults to ... auto? > index 90e2c062fa8..003b57498bb 100644 > --- a/doc/src/sgml/meson.build > +++ b/doc/src/sgml/meson.build > @@ -142,6 +142,7 @@ if docs_dep.found() > '--install-dir-contents', dir_doc_html, html], > build_always_stale: true, build_by_default: false, > ) > + alias_target('doc-html', install_doc_html) > alias_target('install-doc-html', install_doc_html) Shouldn't this just build the html docs, without installing? > + alias_target('doc-man', install_doc_html) > alias_target('install-doc-man', install_doc_man) ... same > + > + install-world > + > + > + > + > + Install documentation in man page format. install-doc-man > + > + Documentation Targets > + > + > + > + > + > + Build documentation in multi-page HTML format. Note that > + does not include building > + man page documentation, as man page generation seldom fails when > + building HTML documentation succeeds. Why is that a reason for not building the manpages? > + > + Code Targets I would have expected the sections to be in the order build-docs-install. Having install first seems weird to me. > + > + Other Targets > + > + > + > + > + > + > + > + Remove all build products > + > + > + > + > + > + > + > + > + Remove all enabled tests. Support for some classes of tests can be > + enabled / disabled with > + and . This should explicitly say if contrib tests are included (or there needs to be a separate test-world target.) > Subject: [PATCH v1 5/5] meson: Add -Dpkglibdir option Will give that a try, thanks! Christoph