Skip to content

Conversation

fanquake
Copy link
Member

@fanquake fanquake commented May 6, 2022

Completes the migration to using a native GCC 10 toolchain for all HOSTS. This change means we'll now use GCC 10 when compiling glibc and friends (currently we use GCC 7), which is the same as our release compiler, except for macOS (Clang 10). Note that Guix has also switched it's default compiler from GCC 7 to GCC 10. See each commit for more details.

Guix build (x86_64):

9f7ef2dc4421aded7f594c272c4feb1fe04f70b6c3f1ab85ed40242851cc6193  guix-build-6b9d53e1ff00/output/aarch64-linux-gnu/SHA256SUMS.part
216fde83c860a59d14a03c0a5f27c1d11ba40388da280dd42843d7c24b652a47  guix-build-6b9d53e1ff00/output/aarch64-linux-gnu/bitcoin-6b9d53e1ff00-aarch64-linux-gnu-debug.tar.gz
55b8bef29285dcd066156c2eaccd99f7d6956c3d9691363ac7482ad459856fdc  guix-build-6b9d53e1ff00/output/aarch64-linux-gnu/bitcoin-6b9d53e1ff00-aarch64-linux-gnu.tar.gz
f190e12f5d2fe8bfd891421752c8f31f728c7db66736ca46f97c1c2f3a346583  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/SHA256SUMS.part
ac4abd22b115896ba870a3f2149c66b3ce9bd25b401a75cf560681276bacc99d  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf-debug.tar.gz
9a9a26f15b90ca5e22687272b7c9487863106f358f54b4a4cd9bcc844e96259f  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf.tar.gz
96f73e9f17e19720e3517ebfed06a4b5295759906186770627fb8c0beb18508a  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/SHA256SUMS.part
4c9937e7221c56373808feacff38492f4530a4db986a07da3e56d1a293a59569  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.dmg
f7c447fb40fa0d1382db0ec6b20a45c6dbc8660c004d41fa7418e40cc684200f  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.tar.gz
067bbc0f7a50be93e469af855ab8bbb9dd598ee970db9ccfc99621a93d725348  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin.tar.gz
d8ac116bec19dde955c5d19c85d41e3899a75def3e1c27bc047aa17906d094af  guix-build-6b9d53e1ff00/output/dist-archive/bitcoin-6b9d53e1ff00.tar.gz
822085203ae9a64de3443141cd0a5f222a344451a7fdc69820efd0aeee8eca5e  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/SHA256SUMS.part
78a488dad3acf22d99f97d7874c5bf0fc0bd83bd33d27af8f1a723cd949df1d9  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu-debug.tar.gz
918477bee628771f3b927dba0e0e0ca0d0708cfe60a0cb47c10b98c403c9b266  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu.tar.gz
738e2771d4a6141cd69838bb65f54d853032075c077e428c6daf1eabc9046fc0  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/SHA256SUMS.part
5e7ce848931c790780154f276fae9d2b8dc03c0e995bb123d950e432a54803bb  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu-debug.tar.gz
8caaf8bdc5e0a13a2e1c7242940d505c28a5fd2f2727c592b18f55530558f8c3  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu.tar.gz
8aeed7814f839aa0624752090ae75dc77f6098d2ac2b4d526945e42efeff16b8  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/SHA256SUMS.part
e694fa6a3ca56fd121afe3cbf26cf9c17d0b4bac424e1b9086a095d63fc6f0fb  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu-debug.tar.gz
8241e6c1f1a669ca5144b90796235d2a4b9c08bf75d6d2bf1b2862df8da626b3  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu.tar.gz
84d0d1391e07ac55684e107492def79fa0a6e404f2ec10f3130bd0734d031ad9  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/SHA256SUMS.part
cde5bf4c3b1880b81b887b1b13293c1e91aac3f4ca9895aba515675e3dc69d1a  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.dmg
906cebff955e514202a0d93fcf0782441f42c7592ade3205c908554086322440  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.tar.gz
c8a4522380d5ff22c800d73968b4758ed5edde346fc6720558285ce02251dec0  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin.tar.gz
de2e24dfe08f31bfeca03aff70f3e38b2671272f357b430ce8a3d3879020745f  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/SHA256SUMS.part
32c01add177f3a1c7fb85f1c687b502105a98919a0fa9e8675917c68cb651dfb  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu-debug.tar.gz
c2af2390d8232463c824756ba4d88194f6fc3bfd0f71286237f2d3067d67ff25  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu.tar.gz
b3fa5cc4dbe908274f84ca4ee4bd8fad7b0d0678b5e47ca8e0134b8872d1262c  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/SHA256SUMS.part
69cff7bfa42918434f7aee4a5c1f87c824bfe387d5a40bea502437e320703b68  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-debug.zip
6c4ce699bdc9cd0fd5b3626b7c740b0d9f381f126a6581b38d481bddca74c25d  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-setup-unsigned.exe
f5ca2fc6988e9a90ed7c47bd05c120a8d5a2c2a0bc0abcc076739d27869779b7  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-unsigned.tar.gz
73862bfc4c6a614e467b0b4f07a7264e4a758bacbf75c0ac49b76d253385dcec  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64.zip

Guix build (arm64):

63fd172e3bf01fe47e845c7b5af76b56b40ecd26f77363c9e5782c12997a1f3b  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/SHA256SUMS.part
6007a3ab95315a9e7206f32f13b6fc574833afd3e3d1ea0ed905800016fbf786  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf-debug.tar.gz
a172a098403a29cc6c2fdb8fdd388fab10e0e2477f78cb8c7ee0d8112442c5f4  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf.tar.gz
e07565d39160db87a857edc8ea4dc4444476837fc9d85fb17245efaa68b4ec41  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/SHA256SUMS.part
b9cc419a750afd5688c5f2dbfb717fccb5f177fb60b07bfede792336f7a4c563  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.dmg
d9105b702f6756645efba5a4e47fc1efbca178e0a76b30c46dd6333f2362c1a2  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.tar.gz
d46ecdc6f485d78d8afe4e6d679e97844dc6f817cd470226290843b9e0a5c677  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin.tar.gz
d8ac116bec19dde955c5d19c85d41e3899a75def3e1c27bc047aa17906d094af  guix-build-6b9d53e1ff00/output/dist-archive/bitcoin-6b9d53e1ff00.tar.gz
8f35311efd75f1a2a27c5090a3134648a3e58d40692d363f1fe0afce08925bcb  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/SHA256SUMS.part
b012ce67aa18f54ea688961a01de30f9b4127fee7184d1292ac8f664449972f5  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu-debug.tar.gz
3ebd59090b02a295965923a1d74a2ce0aa23774d59116f62668e2a246343d971  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu.tar.gz
2017c04652d18a29107e06a1efee44d93d01607f12f7af626e687a72eca06a7c  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/SHA256SUMS.part
4520225674157af40168813a2497a2f79df8131b0a73251a3d44dbe67cb002d2  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu-debug.tar.gz
9e7660470d56573c9c08470383d745910f2834586182a51b661eb10cc41fbf1d  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu.tar.gz
2015b8d13798746e4d7e3a75250a2b83bb8cb9289410a1576f0e9892732e1931  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/SHA256SUMS.part
735c1a285933499406a4f6c396a12b13fcf79188100b541d532055c06092741c  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu-debug.tar.gz
f541d5397e28558dea1976a79f6bfdb01f12d7b4031925247cb32ace2360782e  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu.tar.gz
84d0d1391e07ac55684e107492def79fa0a6e404f2ec10f3130bd0734d031ad9  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/SHA256SUMS.part
cde5bf4c3b1880b81b887b1b13293c1e91aac3f4ca9895aba515675e3dc69d1a  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.dmg
906cebff955e514202a0d93fcf0782441f42c7592ade3205c908554086322440  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.tar.gz
c8a4522380d5ff22c800d73968b4758ed5edde346fc6720558285ce02251dec0  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin.tar.gz
51c1c6f683896a23767af2a7c6afe07030b6d5ad5a136b65f31b7e1f685c0f28  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/SHA256SUMS.part
6276d1ee54575b16386866f4898033d4dce9ea5a4e4635f7ae65d5bddecba35b  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu-debug.tar.gz
c553c0dfdd85f9af8e41741557c9eb5a6ee48a9f4a025df84eed21330927be89  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu.tar.gz
3dc586f08f454cfba3e8f66588a1017490fc6014bcd2aee0b0c5f557267aa961  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/SHA256SUMS.part
bc5ed4302603fe2f574e83a0e5612cff306081f65c74d817bb0f977bef01fb7a  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-debug.zip
6c4ce699bdc9cd0fd5b3626b7c740b0d9f381f126a6581b38d481bddca74c25d  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-setup-unsigned.exe
f5ca2fc6988e9a90ed7c47bd05c120a8d5a2c2a0bc0abcc076739d27869779b7  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-unsigned.tar.gz
761c97a37473f91dee8630a1409597ee400a8c8c99937f0a111e4572f084bdd9  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64.zip

Closes #24701.

Copy link
Contributor

@prusnak prusnak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK 7a69835

@DrahtBot
Copy link
Contributor

DrahtBot commented May 6, 2022

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #24615 (guix: Map guix store prefixes to /usr for cross-architecture reproducibility of linux binaries by achow101)
  • #23049 ([WIP] net: implement a StratumV2 Template Provider in core by Fi3)
  • #21778 (build: LLVM 14 & LLD based macOS toolchain by fanquake)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK.

Guix builds on x86_64:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
385ce95450c90c3a4512f39c049d97cae27519343add3db85764c71d7ab7e84a  guix-build-7a698359f5cf/output/aarch64-linux-gnu/SHA256SUMS.part
44b836da91c4e0eb7631a79f58a8dbb2d3abe645c6c90cccc044380888d1ced4  guix-build-7a698359f5cf/output/aarch64-linux-gnu/bitcoin-7a698359f5cf-aarch64-linux-gnu-debug.tar.gz
5769408685dce864f2e63d78a55068252e6068760a71286b7801044aa5fe8ab9  guix-build-7a698359f5cf/output/aarch64-linux-gnu/bitcoin-7a698359f5cf-aarch64-linux-gnu.tar.gz
a7b6af3dd2386705fffb024e13504b6667251d1d9183be08f3cf134eb38f115b  guix-build-7a698359f5cf/output/arm-linux-gnueabihf/SHA256SUMS.part
66aac029c54e6b3ff4dd400ab033231a54440d3c50cb5b7918d112adbacbd3b2  guix-build-7a698359f5cf/output/arm-linux-gnueabihf/bitcoin-7a698359f5cf-arm-linux-gnueabihf-debug.tar.gz
a15a88539909f9b544311327f534e6e43a8452a235cade877125d07820b275ac  guix-build-7a698359f5cf/output/arm-linux-gnueabihf/bitcoin-7a698359f5cf-arm-linux-gnueabihf.tar.gz
66743e7bcb7509e4a37336a3d813c912a6bda187f41ac8937b525e0516e27911  guix-build-7a698359f5cf/output/arm64-apple-darwin/SHA256SUMS.part
7d0c509fa0b9e91d8d40b21cd9cc56c47c3ccb1b7080e2c11f512b1a5a7d3bf4  guix-build-7a698359f5cf/output/arm64-apple-darwin/bitcoin-7a698359f5cf-arm64-apple-darwin-unsigned.dmg
f8eccb444a594ebe281b175a7577d4251b62f696ec2d66a1b050a1dd2ecc29e3  guix-build-7a698359f5cf/output/arm64-apple-darwin/bitcoin-7a698359f5cf-arm64-apple-darwin-unsigned.tar.gz
97fad06dd7f12b8616dbc8d312a3a6703e0467325de9f336e164c1f692b8fefa  guix-build-7a698359f5cf/output/arm64-apple-darwin/bitcoin-7a698359f5cf-arm64-apple-darwin.tar.gz
2cfded396620220377b9c7a3a56d6aaa41582e8f49d956a7b6afb13e7494f501  guix-build-7a698359f5cf/output/dist-archive/bitcoin-7a698359f5cf.tar.gz
7eb15de435e29121bbdfdbc50c1c93403a976a5bf6fba176b0b809ffa1cbb370  guix-build-7a698359f5cf/output/powerpc64-linux-gnu/SHA256SUMS.part
d86cf519d098d7d39e6c634025f624f15ea3454aa5dd646256d3d910ea208e19  guix-build-7a698359f5cf/output/powerpc64-linux-gnu/bitcoin-7a698359f5cf-powerpc64-linux-gnu-debug.tar.gz
69cab1e7466f50954a19dc2d60a399932fe65f52ac26fec5d9647ed1955f9ac1  guix-build-7a698359f5cf/output/powerpc64-linux-gnu/bitcoin-7a698359f5cf-powerpc64-linux-gnu.tar.gz
52718f958578be941c6e67352930f6d2e7e594f48920bcfec370f8095e3b764f  guix-build-7a698359f5cf/output/powerpc64le-linux-gnu/SHA256SUMS.part
20888021a5c15bb54eb12b6ba3d7959a5975563d58c689af57083cfc46406855  guix-build-7a698359f5cf/output/powerpc64le-linux-gnu/bitcoin-7a698359f5cf-powerpc64le-linux-gnu-debug.tar.gz
fb00d94a0f606c95060c65836a6908a48b4fbdfc0e6a652328f231b4b6c6397f  guix-build-7a698359f5cf/output/powerpc64le-linux-gnu/bitcoin-7a698359f5cf-powerpc64le-linux-gnu.tar.gz
65b9945d76f275612d4651b786c359cd70c38712418469230ffae61242be843b  guix-build-7a698359f5cf/output/riscv64-linux-gnu/SHA256SUMS.part
1a205d567a9c13d9dd0a6aedf600889e2682f792f53e0057f37ada9ab804f1be  guix-build-7a698359f5cf/output/riscv64-linux-gnu/bitcoin-7a698359f5cf-riscv64-linux-gnu-debug.tar.gz
66ce641f9827be6ca90ee2ad1d1d166e739748be94ac9d01f75d6cd4f5eafcca  guix-build-7a698359f5cf/output/riscv64-linux-gnu/bitcoin-7a698359f5cf-riscv64-linux-gnu.tar.gz
784e21f2bbc38539913a0003a7d0e2227e710abbdc95fe97276528b637fc08d1  guix-build-7a698359f5cf/output/x86_64-apple-darwin/SHA256SUMS.part
49e2d505f08e7e9d7b7332955d285b306a31d65c8694c74f14a9bfbaeaf55d8d  guix-build-7a698359f5cf/output/x86_64-apple-darwin/bitcoin-7a698359f5cf-x86_64-apple-darwin-unsigned.dmg
51af3ed9fd858ead1c6f1c2e29d11c171c4d29b4f998f07c93fb60171996c228  guix-build-7a698359f5cf/output/x86_64-apple-darwin/bitcoin-7a698359f5cf-x86_64-apple-darwin-unsigned.tar.gz
4b6d2a921d911b9483d5895c4272306232c3d216a853a2a3857915285d99c0ed  guix-build-7a698359f5cf/output/x86_64-apple-darwin/bitcoin-7a698359f5cf-x86_64-apple-darwin.tar.gz
6c31b29fa47cfcc0fc672d7ba59434f9ed31a89aafd9d5f1c3d12d1520a52aec  guix-build-7a698359f5cf/output/x86_64-linux-gnu/SHA256SUMS.part
7ecd0ac579416f44dd1e16163195459bedee7e1ef63d4dad0266d8d01e89238f  guix-build-7a698359f5cf/output/x86_64-linux-gnu/bitcoin-7a698359f5cf-x86_64-linux-gnu-debug.tar.gz
f3778b4f7acbdbc22bf8f1a637bb64fef4cc01e6f0cc6ba4f8d896bf3ac772ad  guix-build-7a698359f5cf/output/x86_64-linux-gnu/bitcoin-7a698359f5cf-x86_64-linux-gnu.tar.gz
cc8df483b00d3e3dc8cedeec615e1d3012e903428b9b191833fe68e5f5fb7ea8  guix-build-7a698359f5cf/output/x86_64-w64-mingw32/SHA256SUMS.part
05895a7fcde672d8bd3b8dc5cd681b306c5a4cc29478db1867067447830fc625  guix-build-7a698359f5cf/output/x86_64-w64-mingw32/bitcoin-7a698359f5cf-win64-debug.zip
0fe00838108ab147f0d500f42dace8fad32c1c05952b4b13d6d56c650e8e4fc2  guix-build-7a698359f5cf/output/x86_64-w64-mingw32/bitcoin-7a698359f5cf-win64-setup-unsigned.exe
e42e839504df5e188ddc46580cd43cc8cfd4e405ff2c2337cab2792a08a416c9  guix-build-7a698359f5cf/output/x86_64-w64-mingw32/bitcoin-7a698359f5cf-win64-unsigned.tar.gz
9c60a15355ab6e228b51bfcade1e68c5c80827d4992a4f3b13383f525a7d68b8  guix-build-7a698359f5cf/output/x86_64-w64-mingw32/bitcoin-7a698359f5cf-win64.zip

Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In e138dea "guix: compile glibc without -werror" is it possible to specify -Wno-error=... explicitly to clearly document problematic warnings?


If 15760c4 "guix: fix glibc 2.27 multiple definition warnings with GCC 10" is about warnings, why is it required after disabling -Werror in e138dea?


d309a15 "guix: use -fcommon when building glibc 2.24"
From GCC docs:

The -fcommon places uninitialized global variables in a common block. This allows the linker to resolve all tentative definitions of the same variable in different compilation units to the same object, or to a non-tentative definition. This behavior is inconsistent with C++, and on many targets implies a speed and code size penalty on global variable references. It is mainly useful to enable legacy code to link without errors.

Considering this, maybe limit this patch to the powerpc hosts only?

@fanquake
Copy link
Member Author

fanquake commented May 7, 2022

In e138dea "guix: compile glibc without -werror" is it possible to specify -Wno-error=... explicitly to clearly document problematic warnings?

Different (HOST) compilers may warn in different ways, and I'm not sure of the benefit of listing all these out. It'd also remove the ability to simply set enable_werror.

"guix: fix glibc 2.27 multiple definition warnings with GCC 10" is about warnings, why is it required after disabling -Werror in e138dea?

It's to fix a link issue (-fcommon). Turning compiler warnings into errors, or not, is unrelated.

Considering this, maybe limit this patch to the powerpc hosts only?

I don't really want to start configuring / compiling HOST glibcs differently (RISCV is already an exception).

@DrahtBot
Copy link
Contributor

Guix builds

File commit 59ac8ba
(master)
commit ff5a63a
(master and this pull)
SHA256SUMS.part d3583bb1e7e75caf... 5d448f85fa8534f6...
*-aarch64-linux-gnu-debug.tar.gz e01816d29883d870... 4eed035c8122a08b...
*-aarch64-linux-gnu.tar.gz 7a547e3f236a6037... b986467f149d421b...
*-arm-linux-gnueabihf-debug.tar.gz 3e2b50731198feda... 9bf2e84ec20e7a99...
*-arm-linux-gnueabihf.tar.gz 0295ce39b8a309a2... d6310a9dbdbd37ba...
*-arm64-apple-darwin-unsigned.dmg bfaf5d6c5619b274... 19a655f10e579ca2...
*-arm64-apple-darwin-unsigned.tar.gz 7c532ddcf3cd1639... 7811ace0997b436b...
*-arm64-apple-darwin.tar.gz 980dd76a30417cd7... 32cf6f712932dba1...
*-powerpc64-linux-gnu-debug.tar.gz 7d113156becc2361... 9b18a2bc5754b62c...
*-powerpc64-linux-gnu.tar.gz 0f6b70de074f6f93... fd09ae8087883778...
*-powerpc64le-linux-gnu-debug.tar.gz ebd7a094d289cf2c... 23f25dcb9e315d0c...
*-powerpc64le-linux-gnu.tar.gz 757dee37ac4a6629... f956cf96ef3e8a75...
*-riscv64-linux-gnu-debug.tar.gz edee1106bfe83922... 997fd8a483928b0f...
*-riscv64-linux-gnu.tar.gz 7f53a3634be140a4... 3602cb76b1e49795...
*-win64-debug.zip 67ffdad9acc9def3... c52047d7e33609b9...
*-win64-setup-unsigned.exe ccdb0f12c08d86c7... 2988e150b11d8e52...
*-win64-unsigned.tar.gz 2b5576eeb878b0a5... cee5d59e8535cef3...
*-win64.zip b54bc544a78e04a2... 412f15e62befc19f...
*-x86_64-apple-darwin-unsigned.dmg 724908ca16446ce3... 22826b69730b5627...
*-x86_64-apple-darwin-unsigned.tar.gz 5b8c3f26e6e67576... f867f46ea2427355...
*-x86_64-apple-darwin.tar.gz 2aac53e96dcdaf0a... 7a2a30bbf67b31ed...
*-x86_64-linux-gnu-debug.tar.gz 1051a11049d997f0... b0709a4bec0495b4...
*-x86_64-linux-gnu.tar.gz 6de6d2a876aa5f25... 9f5b7007367282b0...
*.tar.gz d82b502049a59036... 2a1006edbd8d23c5...
guix_build.log 6c4c58803e90ea54... 5ea0fc404d7e5ace...
guix_build.log.diff c419dc5d0c38bf36...

@sipa
Copy link
Member

sipa commented May 10, 2022

Concept ACK

@maflcko
Copy link
Member

maflcko commented May 10, 2022

No objection, but I wonder what user-facing improvement this brings. In fact, it might be slightly disadvantageous to compile an ancient tool with a modern compiler, as we are likely the first ones to do so, putting our users on an "unexplored" path. Moreover, it might actually make it harder to bump gcc at a later point, requiring even more patches to compile the ancient glibc with an even more modern compiler.

Wouldn't it be better to not touch this until gcc is bumped or alternatively until glibc is removed?

@fanquake
Copy link
Member Author

fanquake commented May 10, 2022

No objection, but I wonder what user-facing improvement this brings.

As with the majority of the changes that are merged into this repository, there may be little-to-no end-user facing improvement. The developer-facing improvement, is a simpler Guix toolchain, and improved build times.

Moreover, it might actually make it harder to bump gcc at a later point, requiring even more patches to compile the ancient glibc with an even more modern compiler.

This change shouldn't make it any harder to bump (release) GCC. The release compiler and native compiler can exist independently of each other, as they do now. If, some time into the future, we want to use GCC 13 to build our release binaries, because we need support for C++20, then we split them back out, while continuing to use GCC 10 to compile glibc.

Wouldn't it be better to not touch this until gcc is bumped

I would like to consolidate to GCC 10, and simplify our Guix toolchain.

or alternatively until glibc is removed?

Do you mean until some sort of migration to musl libc? Otherwise I don't know what you mean by glibc being removed, as it is required to provide a functioning toolchain.

@maflcko
Copy link
Member

maflcko commented May 10, 2022

As with the majority of the changes that are merged into this repository, there may be little-to-no end-user facing improvement.

OT: Heh, I hope this is not true. I consider code changes that make the code less susceptible to bugs a (minimal) user-facing improvement.

@dongcarl
Copy link
Contributor

Concept ACK

Although I personally don't care that we're on the same GCC version everywhere, I think this change is good overall mostly because Guix has moved from gcc-7 to gcc-10 as the default toolchain as of our guix time-machine commit. So there will be more eyes on the gcc-10 package and it will be exercised or tested against more things.

fanquake added 5 commits May 12, 2022 08:21
Compiling glibc 2.24 and 2.27 with the new GCC 10 results in a number of new warnings,
i.e:
```bash
libc-tls.c: In function ‘__libc_setup_tls’:
libc-tls.c:208:30: error: array subscript 1 is outside the bounds of an interior zero-length array ‘struct dtv_slotinfo[0]’ [-Werror=zero-length-bounds]
  208 |   static_slotinfo.si.slotinfo[1].map = main_map;
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
In file included from ../sysdeps/x86_64/ldsodefs.h:54,
                 from ../sysdeps/gnu/ldsodefs.h:46,
                 from ../sysdeps/unix/sysv/linux/ldsodefs.h:25,
                 from libc-tls.c:20:
../sysdeps/generic/ldsodefs.h:398:7: note: while referencing ‘slotinfo’
  398 |     } slotinfo[0];
      |       ^~~~~~~~
```

While we could try and backport all the patches required to fix these up, it would
currently seem easier to disable -Werror, which Guix uses by default when building
glibc.
The actual macro is __has_include(), not __has_include__(), using the
later would result in build failures when using GCC 10. i.e:
```bash
../sysdeps/unix/sysv/linux/riscv/flush-icache.c:24:5: warning: "__has_include__" is not defined, evaluates to 0 [-Wundef]
   24 | #if __has_include__ (<asm/syscalls.h>)
```

Looks like at least someone else has run into the same thing, see:
http://lists.busybox.net/pipermail/buildroot/2020-July/590376.html.

See also:
https://gcc.gnu.org/onlinedocs/cpp/_005f_005fhas_005finclude.html
https://clang.llvm.org/docs/LanguageExtensions.html#has-include
GCC 10 started using -fno-common by default, which causes issues with
the powerpc builds using gibc 2.24. A patch was commited to glibc to fix
the issue, 18363b4f010da9ba459b13310b113ac0647c2fcc but is non-trvial
to backport, and was broken in at least one way, see the followup in
commit 7650321ce037302bfc2f026aa19e0213b8d02fe6.

For now, retain the legacy GCC behaviour by passing -fcommon when
building glibc 2.24.

https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html.
https://sourceware.org/git/?p=glibc.git;a=commit;h=18363b4f010da9ba459b13310b113ac0647c2fcc
https://sourceware.org/git/?p=glibc.git;a=commit;h=7650321ce037302bfc2f026aa19e0213b8d02fe6
@fanquake fanquake force-pushed the native_gcc_10_linux branch from 7a69835 to 6b9d53e Compare May 12, 2022 07:21
@fanquake
Copy link
Member Author

Rebased over #25099. Will update Guix builds in PR description.

@DrahtBot
Copy link
Contributor

Guix builds

File commit 225e5b5
(master)
commit f7bda69
(master and this pull)
SHA256SUMS.part 1b58b80ca65983b3... 7827935bc9abe6a0...
*-aarch64-linux-gnu-debug.tar.gz 26b50f702207b949... 0cc3d15ad561da34...
*-aarch64-linux-gnu.tar.gz 93156ddbf46f81df... 1e2402fc19808bb7...
*-arm-linux-gnueabihf-debug.tar.gz 448908d67e456427... 77773a4b01d41737...
*-arm-linux-gnueabihf.tar.gz 595189752c32bf97... d7f0bd6ce6db0625...
*-arm64-apple-darwin-unsigned.dmg 8fe9a774204a88c7... 62f0348638c02965...
*-arm64-apple-darwin-unsigned.tar.gz 293f411c2dc51edb... 708c3dd792591e2b...
*-arm64-apple-darwin.tar.gz abca1d81d437a08a... 6ca9b3e4b0be985f...
*-powerpc64-linux-gnu-debug.tar.gz 1744beebac78a5d6... 0273b4820c7adee4...
*-powerpc64-linux-gnu.tar.gz ec4d4712136dc767... f8c8b29c81e74a87...
*-powerpc64le-linux-gnu-debug.tar.gz ac1890b8743df6a5... 84f22e58139a8dea...
*-powerpc64le-linux-gnu.tar.gz b0ebc5e4120bf000... 17106401a3629fd9...
*-riscv64-linux-gnu-debug.tar.gz 702be3dc495a5a10... b36f2867d0724360...
*-riscv64-linux-gnu.tar.gz ad1394d672c7b965... c468395f488ec18c...
*-win64-debug.zip 5464743530003d4d... 7241d7988c85dda3...
*-win64-setup-unsigned.exe 955c755466eb2b07... 7710fae05dd58fe8...
*-win64-unsigned.tar.gz 0126640c2d061f14... 30f9cfa94039a628...
*-win64.zip 5b07889e2dce9103... fd20235443cebe77...
*-x86_64-apple-darwin-unsigned.dmg c5526437a0193c3b... 0d4556e3fbe2f2d4...
*-x86_64-apple-darwin-unsigned.tar.gz e1d81f18176fab2e... 6f61ab3ff56c743a...
*-x86_64-apple-darwin.tar.gz d34e5f7fe086c51f... 02cc9be86213bbfa...
*-x86_64-linux-gnu-debug.tar.gz acb6561a5919c80f... 64d3b28ca41c73ba...
*-x86_64-linux-gnu.tar.gz 00bb67a5b4e29ca3... 33f6b208ab9adeab...
*.tar.gz ab4e54f5d920eb45... e6a3ff55fb0955fc...
guix_build.log 68d9a71f1973680b... 162ad068cf311ce2...
guix_build.log.diff bf75ddfef255dc21...

@hebasto
Copy link
Member

hebasto commented May 18, 2022

Guix builds on x86_64:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
9f7ef2dc4421aded7f594c272c4feb1fe04f70b6c3f1ab85ed40242851cc6193  guix-build-6b9d53e1ff00/output/aarch64-linux-gnu/SHA256SUMS.part
216fde83c860a59d14a03c0a5f27c1d11ba40388da280dd42843d7c24b652a47  guix-build-6b9d53e1ff00/output/aarch64-linux-gnu/bitcoin-6b9d53e1ff00-aarch64-linux-gnu-debug.tar.gz
55b8bef29285dcd066156c2eaccd99f7d6956c3d9691363ac7482ad459856fdc  guix-build-6b9d53e1ff00/output/aarch64-linux-gnu/bitcoin-6b9d53e1ff00-aarch64-linux-gnu.tar.gz
f190e12f5d2fe8bfd891421752c8f31f728c7db66736ca46f97c1c2f3a346583  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/SHA256SUMS.part
ac4abd22b115896ba870a3f2149c66b3ce9bd25b401a75cf560681276bacc99d  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf-debug.tar.gz
9a9a26f15b90ca5e22687272b7c9487863106f358f54b4a4cd9bcc844e96259f  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf.tar.gz
96f73e9f17e19720e3517ebfed06a4b5295759906186770627fb8c0beb18508a  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/SHA256SUMS.part
4c9937e7221c56373808feacff38492f4530a4db986a07da3e56d1a293a59569  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.dmg
f7c447fb40fa0d1382db0ec6b20a45c6dbc8660c004d41fa7418e40cc684200f  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.tar.gz
067bbc0f7a50be93e469af855ab8bbb9dd598ee970db9ccfc99621a93d725348  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin.tar.gz
d8ac116bec19dde955c5d19c85d41e3899a75def3e1c27bc047aa17906d094af  guix-build-6b9d53e1ff00/output/dist-archive/bitcoin-6b9d53e1ff00.tar.gz
822085203ae9a64de3443141cd0a5f222a344451a7fdc69820efd0aeee8eca5e  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/SHA256SUMS.part
78a488dad3acf22d99f97d7874c5bf0fc0bd83bd33d27af8f1a723cd949df1d9  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu-debug.tar.gz
918477bee628771f3b927dba0e0e0ca0d0708cfe60a0cb47c10b98c403c9b266  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu.tar.gz
738e2771d4a6141cd69838bb65f54d853032075c077e428c6daf1eabc9046fc0  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/SHA256SUMS.part
5e7ce848931c790780154f276fae9d2b8dc03c0e995bb123d950e432a54803bb  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu-debug.tar.gz
8caaf8bdc5e0a13a2e1c7242940d505c28a5fd2f2727c592b18f55530558f8c3  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu.tar.gz
8aeed7814f839aa0624752090ae75dc77f6098d2ac2b4d526945e42efeff16b8  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/SHA256SUMS.part
e694fa6a3ca56fd121afe3cbf26cf9c17d0b4bac424e1b9086a095d63fc6f0fb  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu-debug.tar.gz
8241e6c1f1a669ca5144b90796235d2a4b9c08bf75d6d2bf1b2862df8da626b3  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu.tar.gz
84d0d1391e07ac55684e107492def79fa0a6e404f2ec10f3130bd0734d031ad9  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/SHA256SUMS.part
cde5bf4c3b1880b81b887b1b13293c1e91aac3f4ca9895aba515675e3dc69d1a  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.dmg
906cebff955e514202a0d93fcf0782441f42c7592ade3205c908554086322440  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.tar.gz
c8a4522380d5ff22c800d73968b4758ed5edde346fc6720558285ce02251dec0  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin.tar.gz
de2e24dfe08f31bfeca03aff70f3e38b2671272f357b430ce8a3d3879020745f  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/SHA256SUMS.part
32c01add177f3a1c7fb85f1c687b502105a98919a0fa9e8675917c68cb651dfb  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu-debug.tar.gz
c2af2390d8232463c824756ba4d88194f6fc3bfd0f71286237f2d3067d67ff25  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu.tar.gz
b3fa5cc4dbe908274f84ca4ee4bd8fad7b0d0678b5e47ca8e0134b8872d1262c  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/SHA256SUMS.part
69cff7bfa42918434f7aee4a5c1f87c824bfe387d5a40bea502437e320703b68  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-debug.zip
6c4ce699bdc9cd0fd5b3626b7c740b0d9f381f126a6581b38d481bddca74c25d  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-setup-unsigned.exe
f5ca2fc6988e9a90ed7c47bd05c120a8d5a2c2a0bc0abcc076739d27869779b7  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-unsigned.tar.gz
73862bfc4c6a614e467b0b4f07a7264e4a758bacbf75c0ac49b76d253385dcec  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64.zip

@hebasto
Copy link
Member

hebasto commented May 18, 2022

Guix builds on arm64:

# find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
63fd172e3bf01fe47e845c7b5af76b56b40ecd26f77363c9e5782c12997a1f3b  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/SHA256SUMS.part
6007a3ab95315a9e7206f32f13b6fc574833afd3e3d1ea0ed905800016fbf786  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf-debug.tar.gz
a172a098403a29cc6c2fdb8fdd388fab10e0e2477f78cb8c7ee0d8112442c5f4  guix-build-6b9d53e1ff00/output/arm-linux-gnueabihf/bitcoin-6b9d53e1ff00-arm-linux-gnueabihf.tar.gz
e07565d39160db87a857edc8ea4dc4444476837fc9d85fb17245efaa68b4ec41  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/SHA256SUMS.part
b9cc419a750afd5688c5f2dbfb717fccb5f177fb60b07bfede792336f7a4c563  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.dmg
d9105b702f6756645efba5a4e47fc1efbca178e0a76b30c46dd6333f2362c1a2  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin-unsigned.tar.gz
d46ecdc6f485d78d8afe4e6d679e97844dc6f817cd470226290843b9e0a5c677  guix-build-6b9d53e1ff00/output/arm64-apple-darwin/bitcoin-6b9d53e1ff00-arm64-apple-darwin.tar.gz
d8ac116bec19dde955c5d19c85d41e3899a75def3e1c27bc047aa17906d094af  guix-build-6b9d53e1ff00/output/dist-archive/bitcoin-6b9d53e1ff00.tar.gz
8f35311efd75f1a2a27c5090a3134648a3e58d40692d363f1fe0afce08925bcb  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/SHA256SUMS.part
b012ce67aa18f54ea688961a01de30f9b4127fee7184d1292ac8f664449972f5  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu-debug.tar.gz
3ebd59090b02a295965923a1d74a2ce0aa23774d59116f62668e2a246343d971  guix-build-6b9d53e1ff00/output/powerpc64-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64-linux-gnu.tar.gz
2017c04652d18a29107e06a1efee44d93d01607f12f7af626e687a72eca06a7c  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/SHA256SUMS.part
4520225674157af40168813a2497a2f79df8131b0a73251a3d44dbe67cb002d2  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu-debug.tar.gz
9e7660470d56573c9c08470383d745910f2834586182a51b661eb10cc41fbf1d  guix-build-6b9d53e1ff00/output/powerpc64le-linux-gnu/bitcoin-6b9d53e1ff00-powerpc64le-linux-gnu.tar.gz
2015b8d13798746e4d7e3a75250a2b83bb8cb9289410a1576f0e9892732e1931  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/SHA256SUMS.part
735c1a285933499406a4f6c396a12b13fcf79188100b541d532055c06092741c  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu-debug.tar.gz
f541d5397e28558dea1976a79f6bfdb01f12d7b4031925247cb32ace2360782e  guix-build-6b9d53e1ff00/output/riscv64-linux-gnu/bitcoin-6b9d53e1ff00-riscv64-linux-gnu.tar.gz
84d0d1391e07ac55684e107492def79fa0a6e404f2ec10f3130bd0734d031ad9  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/SHA256SUMS.part
cde5bf4c3b1880b81b887b1b13293c1e91aac3f4ca9895aba515675e3dc69d1a  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.dmg
906cebff955e514202a0d93fcf0782441f42c7592ade3205c908554086322440  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin-unsigned.tar.gz
c8a4522380d5ff22c800d73968b4758ed5edde346fc6720558285ce02251dec0  guix-build-6b9d53e1ff00/output/x86_64-apple-darwin/bitcoin-6b9d53e1ff00-x86_64-apple-darwin.tar.gz
51c1c6f683896a23767af2a7c6afe07030b6d5ad5a136b65f31b7e1f685c0f28  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/SHA256SUMS.part
6276d1ee54575b16386866f4898033d4dce9ea5a4e4635f7ae65d5bddecba35b  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu-debug.tar.gz
c553c0dfdd85f9af8e41741557c9eb5a6ee48a9f4a025df84eed21330927be89  guix-build-6b9d53e1ff00/output/x86_64-linux-gnu/bitcoin-6b9d53e1ff00-x86_64-linux-gnu.tar.gz
3dc586f08f454cfba3e8f66588a1017490fc6014bcd2aee0b0c5f557267aa961  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/SHA256SUMS.part
bc5ed4302603fe2f574e83a0e5612cff306081f65c74d817bb0f977bef01fb7a  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-debug.zip
6c4ce699bdc9cd0fd5b3626b7c740b0d9f381f126a6581b38d481bddca74c25d  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-setup-unsigned.exe
f5ca2fc6988e9a90ed7c47bd05c120a8d5a2c2a0bc0abcc076739d27869779b7  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64-unsigned.tar.gz
761c97a37473f91dee8630a1409597ee400a8c8c99937f0a111e4572f084bdd9  guix-build-6b9d53e1ff00/output/x86_64-w64-mingw32/bitcoin-6b9d53e1ff00-win64.zip

Copy link
Member

@hebasto hebasto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 6b9d53e

Maybe reword "we'll now use GCC 10 when compiling glibc and friends..., which is the same as our release compiler" in the PR description as it does not look as a true justification, and replace it with "Guix has moved from gcc-7 to gcc-10 as the default toolchain" from #25076 (comment)?

@fanquake
Copy link
Member Author

I've added a sentence about Guix having swapped it's default compiler; note that Guix having swapped to GCC 10 as their default compiler was also part of the reasoning for #23778.

@fanquake fanquake merged commit 84bf31f into bitcoin:master May 18, 2022
@fanquake fanquake deleted the native_gcc_10_linux branch May 18, 2022 08:58
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request May 28, 2022
kwvg added a commit to kwvg/dash that referenced this pull request May 13, 2023
kwvg added a commit to kwvg/dash that referenced this pull request May 13, 2023
kwvg added a commit to kwvg/dash that referenced this pull request May 13, 2023
@bitcoin bitcoin locked and limited conversation to collaborators May 18, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

guix: migrate to native GCC 10 toolchain for Linux builds
7 participants