-
Notifications
You must be signed in to change notification settings - Fork 37.7k
depends: build expat with CMake #29878
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. Code CoverageFor detailed information about the code coverage, see the test coverage report. ReviewsSee the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update. ConflictsNo conflicts as of last run. |
Looks like there could be issues with expat, CMake and 32-bit builds: |
Guix builds (on x86_64)
|
760bf23
to
6cec148
Compare
(Testing a script I'm developing on this PR)
|
6cec148
to
e92be65
Compare
I've pushed a change that switches to downloading the unbootstraped source tarball. Want to re-run your script? |
Those generated scripts are short and look harmless, btw.
GitHub generated source archives may not have stable hashes: https://github.blog/2023-02-21-update-on-the-future-stability-of-source-code-archives-and-hashes/ I'm not sure if |
FWIW #29923 removes the need to deal with expat in any way (as it's a dependency of a Qt dependency). |
9b54b40
to
c23d45d
Compare
c23d45d
to
ef85ac0
Compare
1802c1f
to
6ccf955
Compare
Rebased on master. 32-bit builds should also be fixed. No longer a version bump, just a Autotools -> CMake switch. |
Guix Build (x86_64, aarch64): cd661a8196c71db10430898b78555489f2fb5a1b1e35bb633c18a5d21692bc3d guix-build-6ccf95586047/output/aarch64-linux-gnu/SHA256SUMS.part
8c340c73ed52b60db257032f18cc39db2ffee35f78c67f8fe4dc67557f33ebb7 guix-build-6ccf95586047/output/aarch64-linux-gnu/bitcoin-6ccf95586047-aarch64-linux-gnu-debug.tar.gz
f77bf0c350d58b9a8755e1fab3c560e5aa1e5202181ddab0c098d3f9da96863f guix-build-6ccf95586047/output/aarch64-linux-gnu/bitcoin-6ccf95586047-aarch64-linux-gnu.tar.gz
16980ad25d964d83ef728a44f47fdc85a863da611ad0b7c8429fdd1ff3a9cbce guix-build-6ccf95586047/output/arm-linux-gnueabihf/SHA256SUMS.part
d34eb0c7a905165586bf094066e6514088c8fdec3570296cdaf156028dbe2434 guix-build-6ccf95586047/output/arm-linux-gnueabihf/bitcoin-6ccf95586047-arm-linux-gnueabihf-debug.tar.gz
458c337e086b99753a55b56f9cb14c022c7a883fdf9ebe98fcfd53e472e621ea guix-build-6ccf95586047/output/arm-linux-gnueabihf/bitcoin-6ccf95586047-arm-linux-gnueabihf.tar.gz
59aca12ddb9265622abf6e1a63d011ea056b7e84a45d2824afa8b494df0e1c34 guix-build-6ccf95586047/output/arm64-apple-darwin/SHA256SUMS.part
bc9f6f664f3f57993890b21a7ace8631dda2b4d8cd59a171a6f42a76c65b0baa guix-build-6ccf95586047/output/arm64-apple-darwin/bitcoin-6ccf95586047-arm64-apple-darwin-unsigned.tar.gz
23e9e94e6c472552175a124ce24bcb587d109abe1fa634567e257d99f97b4450 guix-build-6ccf95586047/output/arm64-apple-darwin/bitcoin-6ccf95586047-arm64-apple-darwin-unsigned.zip
3680fb7a35d0c96b4f57c834c2ec64c7509b052c9c5870caf10b88514cc8fa9a guix-build-6ccf95586047/output/arm64-apple-darwin/bitcoin-6ccf95586047-arm64-apple-darwin.tar.gz
59bd07c2d44da31c84eb212ffe222e8231af2fe4cf27442c2eeaeedba619b7eb guix-build-6ccf95586047/output/dist-archive/bitcoin-6ccf95586047.tar.gz
2c191c87284ca97102bd2ef75ae603d47139fcd7232d2f00dad0cda4895e25f2 guix-build-6ccf95586047/output/powerpc64-linux-gnu/SHA256SUMS.part
ccc61296748f43b77ced8cbeaed535ca4c1cac03877e7bcb59fef0e965b78bb3 guix-build-6ccf95586047/output/powerpc64-linux-gnu/bitcoin-6ccf95586047-powerpc64-linux-gnu-debug.tar.gz
74c9840fb229751a0492dc40891671d675028460d9270058c346bbdafd8088f0 guix-build-6ccf95586047/output/powerpc64-linux-gnu/bitcoin-6ccf95586047-powerpc64-linux-gnu.tar.gz
48744eecfea3f69ed37bcb2bd61c78a1cb5f1604cfcafc6008542198202f904e guix-build-6ccf95586047/output/riscv64-linux-gnu/SHA256SUMS.part
154d3b870030f2f3ab131eaeb480301680c8605e2ed9bcfa21f7ab538d201144 guix-build-6ccf95586047/output/riscv64-linux-gnu/bitcoin-6ccf95586047-riscv64-linux-gnu-debug.tar.gz
82230a2fbcc70fd19b4e81b520edb0f9b17e985a8b0bb12ce9811cb6f0fd4cbf guix-build-6ccf95586047/output/riscv64-linux-gnu/bitcoin-6ccf95586047-riscv64-linux-gnu.tar.gz
08b058fbaac04b15eb86b9fa85385de28f3edf5dd4cbeb5b2bc759e0c08fae1f guix-build-6ccf95586047/output/x86_64-apple-darwin/SHA256SUMS.part
323b852b1f2070ad361aa4bcca331874d722e3c36ca8fb4918c7eac56143c3e7 guix-build-6ccf95586047/output/x86_64-apple-darwin/bitcoin-6ccf95586047-x86_64-apple-darwin-unsigned.tar.gz
c6bcd22144bd1214523463d034decd9e3bf719d6e98a7fb8d297be3873c0292c guix-build-6ccf95586047/output/x86_64-apple-darwin/bitcoin-6ccf95586047-x86_64-apple-darwin-unsigned.zip
0a9a15d42e846eca13633d2dbeff083a497cde0457cf99922eeddb71d6d04e32 guix-build-6ccf95586047/output/x86_64-apple-darwin/bitcoin-6ccf95586047-x86_64-apple-darwin.tar.gz
9317f7c1c93674997ef1a7b80913a8820a42c611984eb923dd940793fb91f52c guix-build-6ccf95586047/output/x86_64-linux-gnu/SHA256SUMS.part
6d8ce4f5a669c73f9d0a4205debd6154fe55b69297ca5cd6d84cc5b03298b910 guix-build-6ccf95586047/output/x86_64-linux-gnu/bitcoin-6ccf95586047-x86_64-linux-gnu-debug.tar.gz
9a5937b0afe3cf08af74e7933916b0bfb7c19ba01c84a4bb4bf7b93f9d1c298c guix-build-6ccf95586047/output/x86_64-linux-gnu/bitcoin-6ccf95586047-x86_64-linux-gnu.tar.gz
eae638dd409caf81ad286a20ce6a07bcebed3fd97fa0116f4f5ca62e51289c1c guix-build-6ccf95586047/output/x86_64-w64-mingw32/SHA256SUMS.part
452911441ef112df74a37e2c4d6802a723a8b456398fe02b556b4beb576a04e9 guix-build-6ccf95586047/output/x86_64-w64-mingw32/bitcoin-6ccf95586047-win64-debug.zip
67bebf7fd0695829e381fc5ca144248b517c656ee1ef9a2ea0b4a463d3de94bf guix-build-6ccf95586047/output/x86_64-w64-mingw32/bitcoin-6ccf95586047-win64-setup-unsigned.exe
a24800d5c2ae63b5c25ce07f9a1974bc863526b39e292717335d4c27576b9064 guix-build-6ccf95586047/output/x86_64-w64-mingw32/bitcoin-6ccf95586047-win64-unsigned.tar.gz
78db9fd78a188cbb85fc82862976ed177625a5ad3388a33ab5cebebcc57be311 guix-build-6ccf95586047/output/x86_64-w64-mingw32/bitcoin-6ccf95586047-win64.zip |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested 6ccf955.
-
Autotools compiles with
-fexceptions
, but CMake doesn't. Considering that this option is disabled for C by default, should we mirror this behaviour? -
Should we bump the CMake minimum required version:
cmake_minimum_required(VERSION 3.1.3)
?
6ccf955
to
cf46c6b
Compare
Which behaviour? If this is missing from one build system, that could be a bug that should be reported upstream. Given that these are stubs compiled just so Qt can compile, I don't think it matters too much.
Sure. Added a patch. |
Guix Build (aarch64): 4ed36603100265640e4e9e73fa8f04c2b10a581c0a68f37cb636f1cbff71469c guix-build-cf46c6b8f2ff/output/aarch64-linux-gnu/SHA256SUMS.part
70b0f40dec0646cc7378c17bb569c8aa292ceba93e9b7233e7a0067fde04a24c guix-build-cf46c6b8f2ff/output/aarch64-linux-gnu/bitcoin-cf46c6b8f2ff-aarch64-linux-gnu-debug.tar.gz
e778fdbf6dcf74a8cfeac8d3b353f877809f96a6f4759e497d939b001874a357 guix-build-cf46c6b8f2ff/output/aarch64-linux-gnu/bitcoin-cf46c6b8f2ff-aarch64-linux-gnu.tar.gz
c99a80fbee8f43dff0519d7dd76e41145dc9f4f1a593138fc19c147956092e7d guix-build-cf46c6b8f2ff/output/arm-linux-gnueabihf/SHA256SUMS.part
eb6a3972d15e0f027cf2664c860e2b15228983db5d5b33f61b78f6602570f72e guix-build-cf46c6b8f2ff/output/arm-linux-gnueabihf/bitcoin-cf46c6b8f2ff-arm-linux-gnueabihf-debug.tar.gz
d66b3386d3996a446fa54214f4e21f6aa2797808b16430f46af6a26d07ff661b guix-build-cf46c6b8f2ff/output/arm-linux-gnueabihf/bitcoin-cf46c6b8f2ff-arm-linux-gnueabihf.tar.gz
01d22496ecd504b6b9759b033c93d46719db7f3de90a2ccab014b80683186b2f guix-build-cf46c6b8f2ff/output/arm64-apple-darwin/SHA256SUMS.part
3715a0f1b6fe1c0e557061adfffdf56fd54b9068cee463b2d22df22932d3a7e9 guix-build-cf46c6b8f2ff/output/arm64-apple-darwin/bitcoin-cf46c6b8f2ff-arm64-apple-darwin-unsigned.tar.gz
e6e5e2f8daba83c5c3145a043f42670997a81ea93b65642ec89ff4935e0c8a54 guix-build-cf46c6b8f2ff/output/arm64-apple-darwin/bitcoin-cf46c6b8f2ff-arm64-apple-darwin-unsigned.zip
d904963e5a27c3f7afda205dbe73a2a903c104a76bc20ba275fe9d96c48d37cf guix-build-cf46c6b8f2ff/output/arm64-apple-darwin/bitcoin-cf46c6b8f2ff-arm64-apple-darwin.tar.gz
1276ee1ed31845f7656c2e120635f8dbe90b7d8e564eacd2c9065d162b3b4f07 guix-build-cf46c6b8f2ff/output/dist-archive/bitcoin-cf46c6b8f2ff.tar.gz
55a7f4a459d65d2bf2ec605f5c0e00ddae50a33eacb68525a2d08e3fbfcf87ff guix-build-cf46c6b8f2ff/output/powerpc64-linux-gnu/SHA256SUMS.part
04e4f6c6574070b30d4405b04f3d13c57356b127d06fa93eab6ade93c182fedc guix-build-cf46c6b8f2ff/output/powerpc64-linux-gnu/bitcoin-cf46c6b8f2ff-powerpc64-linux-gnu-debug.tar.gz
019f386d8debd534034fbc2ee448079ec742ccac2bff4487cd14fbfa3d99542d guix-build-cf46c6b8f2ff/output/powerpc64-linux-gnu/bitcoin-cf46c6b8f2ff-powerpc64-linux-gnu.tar.gz
497cda9eadb42f1612816efee54750d955593b598ca4543a80fa2ee429619f0e guix-build-cf46c6b8f2ff/output/riscv64-linux-gnu/SHA256SUMS.part
59fd779017a33673f3ee102d7fe33d59857a765ec42a768a622b3b8f5fbb573a guix-build-cf46c6b8f2ff/output/riscv64-linux-gnu/bitcoin-cf46c6b8f2ff-riscv64-linux-gnu-debug.tar.gz
99be98072747cd2b6decb9df417b02def8c9f0008ac75420c4d58220acd3fdfb guix-build-cf46c6b8f2ff/output/riscv64-linux-gnu/bitcoin-cf46c6b8f2ff-riscv64-linux-gnu.tar.gz
480972d8f878b720e044f5b0fd8d62df60bd3bbc4916801c175fb24a68165caa guix-build-cf46c6b8f2ff/output/x86_64-apple-darwin/SHA256SUMS.part
9441f7a2f1536349fa3dcab2807baa155fab720c388e46589fbbcb3082521626 guix-build-cf46c6b8f2ff/output/x86_64-apple-darwin/bitcoin-cf46c6b8f2ff-x86_64-apple-darwin-unsigned.tar.gz
d249b182dfe0383d6a54d498d23e79b996ca66b88e5af66430da63dfe09e2e23 guix-build-cf46c6b8f2ff/output/x86_64-apple-darwin/bitcoin-cf46c6b8f2ff-x86_64-apple-darwin-unsigned.zip
ddcc614b2f8a412426d0463401f0a265a99a09b69bb6b2831577669607ad4fe1 guix-build-cf46c6b8f2ff/output/x86_64-apple-darwin/bitcoin-cf46c6b8f2ff-x86_64-apple-darwin.tar.gz
ab9b987f9e8c19e614ffc7e774b5e5eceb014a6420c07e19108fe5c815e1c321 guix-build-cf46c6b8f2ff/output/x86_64-linux-gnu/SHA256SUMS.part
f6c2e2972a773aec557d88af8cfd97642b467b0d6b767d9be634d614d9ff8660 guix-build-cf46c6b8f2ff/output/x86_64-linux-gnu/bitcoin-cf46c6b8f2ff-x86_64-linux-gnu-debug.tar.gz
bbd1be6ef572ee8e294b2f39c5196e821716a3dfd2fd19ba0fde93b49d5af495 guix-build-cf46c6b8f2ff/output/x86_64-linux-gnu/bitcoin-cf46c6b8f2ff-x86_64-linux-gnu.tar.gz
e5e1bad1398f92e72e4f9a3160f8e364913c920abb55a894d287cd1c98ec7995 guix-build-cf46c6b8f2ff/output/x86_64-w64-mingw32/SHA256SUMS.part
e1a9a0af02ca80ace6362268346e5b77f7583443e64b2e08bd4d2bca5300b6da guix-build-cf46c6b8f2ff/output/x86_64-w64-mingw32/bitcoin-cf46c6b8f2ff-win64-debug.zip
ab1e958ae83e458f4cf7baac4a757f5f89a27f1a2f3b6c7d8259f0e2398b64ec guix-build-cf46c6b8f2ff/output/x86_64-w64-mingw32/bitcoin-cf46c6b8f2ff-win64-setup-unsigned.exe
4337edce1e0c99d788d9522aae2224db161035181a13f294cba07b9407dcaa87 guix-build-cf46c6b8f2ff/output/x86_64-w64-mingw32/bitcoin-cf46c6b8f2ff-win64-unsigned.tar.gz
5eefec2926a4d81c59d011e6cfdc3a460299ab524310cc3f546aeb977a904961 guix-build-cf46c6b8f2ff/output/x86_64-w64-mingw32/bitcoin-cf46c6b8f2ff-win64.zip |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK cf46c6b.
*.la
files are no longer created. Hence, there is no need to remove them:
--- a/depends/packages/expat.mk
+++ b/depends/packages/expat.mk
@@ -33,5 +33,5 @@ define $(package)_stage_cmds
endef
define $(package)_postprocess_cmds
- rm -rf share lib/cmake lib/*.la
+ rm -rf share lib/cmake
endef
(similar to #30506)
My Guix build:
|
Add a patch to set the minimum CMake to 3.16.
cf46c6b
to
a517029
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
re-ACK a517029.
a517029 depends: switch to building expat with CMake (fanquake) Pull request description: Switch to building Expat with CMake, instead of Autotools. ACKs for top commit: hebasto: re-ACK a517029. Tree-SHA512: ca040545dd83fb81a8b209aa24cae6e22eaeff04f44bdabc4454adf6ea63d34f4ae27bd5980c65db2d2542e23eb2712102719023c262ab63a933c90b5999c11e
a517029 depends: switch to building expat with CMake (fanquake) Pull request description: Switch to building Expat with CMake, instead of Autotools. ACKs for top commit: hebasto: re-ACK a517029. Tree-SHA512: ca040545dd83fb81a8b209aa24cae6e22eaeff04f44bdabc4454adf6ea63d34f4ae27bd5980c65db2d2542e23eb2712102719023c262ab63a933c90b5999c11e
a517029 depends: switch to building expat with CMake (fanquake) Pull request description: Switch to building Expat with CMake, instead of Autotools. ACKs for top commit: hebasto: re-ACK a517029. Tree-SHA512: ca040545dd83fb81a8b209aa24cae6e22eaeff04f44bdabc4454adf6ea63d34f4ae27bd5980c65db2d2542e23eb2712102719023c262ab63a933c90b5999c11e
b654479 Merge bitcoin#30705: test: Avoid intermittent block download timeout in p2p_ibd_stalling (merge-script) 745a819 Merge bitcoin#30690: devtools, utxo-snapshot: Fix block height out of range in script (Ava Chow) 01b570e Merge bitcoin#29999: guix: fix suggested fake date for openssl-1.1.1l (Ava Chow) 432f352 Merge bitcoin#30580: doc: Add note about distro's `g++-mingw-w64-x86-64-posix` version (merge-script) 1bd090e Merge bitcoin#30597: doc: Drop no longer needed workaround for WSL (merge-script) 8a12237 Merge bitcoin#30630: doc: Update ccache website link (merge-script) f66547f Merge bitcoin#30588: depends: fix ZMQ CMake getcachesize check (merge-script) ddaec96 Merge bitcoin#30565: depends: Fix `zeromq` build on OpenBSD (merge-script) e4e5605 Merge bitcoin#30552: test: fix constructor of msg_tx (merge-script) df3c239 Merge bitcoin#26950: cleanse: switch to SecureZeroMemory for Windows cross-compile (merge-script) 57945ce Merge bitcoin#30506: depends: Cleanup postprocess commands after switching to CMake (merge-script) e016ffa Merge bitcoin#29878: depends: build expat with CMake (merge-script) 62dcd43 Merge bitcoin#29880: depends: build FreeType with CMake (merge-script) 745addf Merge bitcoin#30245: net: Allow -proxy=[::1] on nodes with IPV6 lo only (Ava Chow) 4e144be Merge bitcoin-core/gui#795: Keep focus on "Hide" while ModalOverlay is visible (Hennadii Stepanov) 69c04b2 Merge bitcoin#30372: util: Use SteadyClock in RandAddSeedPerfmon (merge-script) ebed8af Merge bitcoin#30336: depends: update doc in Qt pwd patch (merge-script) 9793fb1 Merge bitcoin#30340: test: Added coverage to Block not found error using gettxoutsetinfo (Ava Chow) 479cb8b Merge bitcoin#30312: contrib: add R(UN)PATH check to ELF symbol-check (merge-script) ca83773 Merge bitcoin#30283: upnp: fix build with miniupnpc 2.2.8 (merge-script) 63e139d Merge bitcoin#30185: guix: show `*_FLAGS` variables in pre-build output (merge-script) 3be0d3e Merge bitcoin#30097: crypto: disable asan for sha256_sse4 with clang and -O0 (merge-script) 3070c3e Merge bitcoin#30078: depends: set AR & RANLIB for CMake (merge-script) Pull request description: ## Issue being fixed or feature implemented Trivial backports ## What was done? ## How Has This Been Tested? built locally ## Breaking Changes ## Checklist: _Go over all the following points, and put an `x` in all the boxes that apply._ - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: utACK b654479 kwvg: utACK b654479 Tree-SHA512: 10b5af4e92c83fa9d6764b20bf066bba8e4c600402966fd5c1d6dad07b0549d8a42151a33f21e2f8263336c12a810a6f3fc2828d90bc98153e09c165d9e5b043
Switch to building Expat with CMake, instead of Autotools.