depends: xtrans: Configure flags cleanup.#16183
Conversation
|
Concept ACK |
|
Concept ACK. This seems to be in line with recent discussion and pointers from cfields. Will check the flag changes, gbuild and compare build outputs. Also rebooted Travis. |
|
Gitian builds for commit 8a503a6 (master): Gitian builds for commit b99d01f408cdabdd9564f6df263e8b69b716d8e1 (master and this pull): |
xtrans does not understand the --with-pic and --disable-shared flags we pass it because it is not a library. Instead, we should pass it flags that disable features/packages we're not using so they don't get a chance to sneak in.
29a31e7 to
30ea931
Compare
|
Gitian builds for commit 473c6b7 (master):
Gitian builds for commit 2706c50bcca2eb5629cbafe5c0c73d7f9e8859e0 (master and this pull):
|
|
what is xtrans and what are we using it for? |
fanquake
left a comment
There was a problem hiding this comment.
ACK 30ea931
The added flags are mostly documentation related:
--disable-docs: Enable building the documentation (default: yes)
--without-xmlto: Use xmlto to regenerate documentation (default: auto)
--without-fop: Use fop to regenerate documentation (default: auto)
--without-xsltproc: Use xsltproc for the transformation of XML documents (default: auto)
I'd have thought passing --disable-docs would remove the need for the additional flags, however we need the flags to disable the additional checks.
diff of configure output for master vs this PR:
checking if gcc supports -Werror... yes
checking if gcc supports -Werror=attributes... yes
checking whether make supports nested variables... (cached) yes
-checking whether to build documentation... yes
-checking for xmlto... no
-checking for fop... no
-checking for xsltproc... no
+checking whether to build documentation... no
checking for X.Org SGML entities >= 1.8... /usr/share/sgml
checking for fchown... yes
checking that generated files are newer than configure... doneWe also lose the configure: WARNING: unrecognized options: --with-pic, --disable-shared warning.
30ea931 depends: xtrans: Configure flags cleanup. (Carl Dong) Pull request description: ``` xtrans does not understand the --with-pic and --disable-shared flags we pass it because it is not a library. Instead, we should pass it flags that disable features/packages we're not using so they don't get a chance to sneak in. ``` Here's a comparison of stdout and stderr of `make -j(nproc) V=1 xtrans_built` before and after this PR: https://gist.github.com/dongcarl/4ebf6fe9985ebc1508190f75932e4237 ACKs for top commit: fanquake: ACK 30ea931 Tree-SHA512: 49e060dffbae8c148c1164b493d03e7db4f260e7746d94c783377185c665e16fb6638827473709ed543eb266cc293d2313f61ade05ee8af4edb0bfbda0d1f785
30ea931 depends: xtrans: Configure flags cleanup. (Carl Dong) Pull request description: ``` xtrans does not understand the --with-pic and --disable-shared flags we pass it because it is not a library. Instead, we should pass it flags that disable features/packages we're not using so they don't get a chance to sneak in. ``` Here's a comparison of stdout and stderr of `make -j(nproc) V=1 xtrans_built` before and after this PR: https://gist.github.com/dongcarl/4ebf6fe9985ebc1508190f75932e4237 ACKs for top commit: fanquake: ACK 30ea931 Tree-SHA512: 49e060dffbae8c148c1164b493d03e7db4f260e7746d94c783377185c665e16fb6638827473709ed543eb266cc293d2313f61ade05ee8af4edb0bfbda0d1f785
c295cba depends: zeromq: disable draft classes and methods (fanquake) 0072237 depends: xproto: configure flags cleanup (fanquake) 6a8ada3 depends: qrencode: configure flags cleanup (fanquake) 86beb8c depends: fontconfig: configure flags cleanup (fanquake) e656d95 depends: libxcb: configure flags cleanup (fanquake) e439388 depends: libXau: configure flags cleanup (fanquake) Pull request description: Related to #16354. This PR adds additional configure flags to packages in depends to explicitly disable features we aren't using; similar to #16183. It also fixes passing `--without-tools` to `qrencode`. I've added `--disable-drafts` to `zeromq`: ```bash Build and install draft classes and methods [default=yes] ``` I'm not entirely sure how far we want to take this. i.e in the `zeromq` package we explicitly pass `--without-libsodium`, even though it's disabled by default. Do we also want to explicitly pass all the other `--without` flags? : ```bash --with-libgssapi_krb5 require libzmq build with libgssapi_krb5 [default=no] --with-libsodium use libsodium instead of built-in tweetnacl [default=no] --with-pgm build libzmq with PGM extension. Requires pkg-config [default=no] --with-norm build libzmq with NORM protocol extension, optionally specifying norm path [default=no] --with-vmci build libzmq with VMCI transport [default=no] ``` ACKs for top commit: dongcarl: ACK c295cba Tree-SHA512: df6d38b863b4008ed2cb06c97eb0e21eaa4b5fde552876065ba7f3c87bf6e372e5b954a51bf3fde2151cfb6d2c022227d34337fc6e50ce0caa1d518abbd2412a
c295cba depends: zeromq: disable draft classes and methods (fanquake) 0072237 depends: xproto: configure flags cleanup (fanquake) 6a8ada3 depends: qrencode: configure flags cleanup (fanquake) 86beb8c depends: fontconfig: configure flags cleanup (fanquake) e656d95 depends: libxcb: configure flags cleanup (fanquake) e439388 depends: libXau: configure flags cleanup (fanquake) Pull request description: Related to bitcoin#16354. This PR adds additional configure flags to packages in depends to explicitly disable features we aren't using; similar to bitcoin#16183. It also fixes passing `--without-tools` to `qrencode`. I've added `--disable-drafts` to `zeromq`: ```bash Build and install draft classes and methods [default=yes] ``` I'm not entirely sure how far we want to take this. i.e in the `zeromq` package we explicitly pass `--without-libsodium`, even though it's disabled by default. Do we also want to explicitly pass all the other `--without` flags? : ```bash --with-libgssapi_krb5 require libzmq build with libgssapi_krb5 [default=no] --with-libsodium use libsodium instead of built-in tweetnacl [default=no] --with-pgm build libzmq with PGM extension. Requires pkg-config [default=no] --with-norm build libzmq with NORM protocol extension, optionally specifying norm path [default=no] --with-vmci build libzmq with VMCI transport [default=no] ``` ACKs for top commit: dongcarl: ACK c295cba Tree-SHA512: df6d38b863b4008ed2cb06c97eb0e21eaa4b5fde552876065ba7f3c87bf6e372e5b954a51bf3fde2151cfb6d2c022227d34337fc6e50ce0caa1d518abbd2412a
Summary: ``` xtrans does not understand the --with-pic and --disable-shared flags we pass it because it is not a library. Instead, we should pass it flags that disable features/packages we're not using so they don't get a chance to sneak in. ``` Backport of core [[bitcoin/bitcoin#16183 | PR16183]]. Test Plan: Run the Gitian builds. Reviewers: #bitcoin_abc, deadalnix Reviewed By: #bitcoin_abc, deadalnix Differential Revision: https://reviews.bitcoinabc.org/D5622
c295cba depends: zeromq: disable draft classes and methods (fanquake) 0072237 depends: xproto: configure flags cleanup (fanquake) 6a8ada3 depends: qrencode: configure flags cleanup (fanquake) 86beb8c depends: fontconfig: configure flags cleanup (fanquake) e656d95 depends: libxcb: configure flags cleanup (fanquake) e439388 depends: libXau: configure flags cleanup (fanquake) Pull request description: Related to bitcoin#16354. This PR adds additional configure flags to packages in depends to explicitly disable features we aren't using; similar to bitcoin#16183. It also fixes passing `--without-tools` to `qrencode`. I've added `--disable-drafts` to `zeromq`: ```bash Build and install draft classes and methods [default=yes] ``` I'm not entirely sure how far we want to take this. i.e in the `zeromq` package we explicitly pass `--without-libsodium`, even though it's disabled by default. Do we also want to explicitly pass all the other `--without` flags? : ```bash --with-libgssapi_krb5 require libzmq build with libgssapi_krb5 [default=no] --with-libsodium use libsodium instead of built-in tweetnacl [default=no] --with-pgm build libzmq with PGM extension. Requires pkg-config [default=no] --with-norm build libzmq with NORM protocol extension, optionally specifying norm path [default=no] --with-vmci build libzmq with VMCI transport [default=no] ``` ACKs for top commit: dongcarl: ACK c295cba Tree-SHA512: df6d38b863b4008ed2cb06c97eb0e21eaa4b5fde552876065ba7f3c87bf6e372e5b954a51bf3fde2151cfb6d2c022227d34337fc6e50ce0caa1d518abbd2412a
c295cba depends: zeromq: disable draft classes and methods (fanquake) 0072237 depends: xproto: configure flags cleanup (fanquake) 6a8ada3 depends: qrencode: configure flags cleanup (fanquake) 86beb8c depends: fontconfig: configure flags cleanup (fanquake) e656d95 depends: libxcb: configure flags cleanup (fanquake) e439388 depends: libXau: configure flags cleanup (fanquake) Pull request description: Related to bitcoin#16354. This PR adds additional configure flags to packages in depends to explicitly disable features we aren't using; similar to bitcoin#16183. It also fixes passing `--without-tools` to `qrencode`. I've added `--disable-drafts` to `zeromq`: ```bash Build and install draft classes and methods [default=yes] ``` I'm not entirely sure how far we want to take this. i.e in the `zeromq` package we explicitly pass `--without-libsodium`, even though it's disabled by default. Do we also want to explicitly pass all the other `--without` flags? : ```bash --with-libgssapi_krb5 require libzmq build with libgssapi_krb5 [default=no] --with-libsodium use libsodium instead of built-in tweetnacl [default=no] --with-pgm build libzmq with PGM extension. Requires pkg-config [default=no] --with-norm build libzmq with NORM protocol extension, optionally specifying norm path [default=no] --with-vmci build libzmq with VMCI transport [default=no] ``` ACKs for top commit: dongcarl: ACK c295cba Tree-SHA512: df6d38b863b4008ed2cb06c97eb0e21eaa4b5fde552876065ba7f3c87bf6e372e5b954a51bf3fde2151cfb6d2c022227d34337fc6e50ce0caa1d518abbd2412a
Here's a comparison of stdout and stderr of
make -j(nproc) V=1 xtrans_builtbefore and after this PR: https://gist.github.com/dongcarl/4ebf6fe9985ebc1508190f75932e4237