bitcoin icon indicating copy to clipboard operation
bitcoin copied to clipboard

build: Add -fvisibility=hidden flag for macOS host

Open hebasto opened this issue 2 years ago • 16 comments

On master (a213bd63ca0c96e8c98e84ec916f83c4ba28d486) when building bitcoin-qt with depends for macOS, clang spams with a load of warnings like this one:

ld: warning: direct access in function 'QMetaTypeIdQObject<QWindow*, 8>::qt_metatype_id()' from file '/Users/hebasto/bitcoin/depends/aarch64-apple-darwin21.1.0/plugins/platforms/libqcocoa.a(qcocoaintegration.o)' to global weak symbol 'QtMetaTypePrivate::QMetaTypeFunctionHelper<QWindow*, true>::Construct(void*, void const*)' from file 'qt/libbitcoinqt.a(libbitcoinqt_a-walletcontroller.o)' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.

The cause of such warnings is the fact that -fvisibility=hidden is used during building of the qt package by default, but not for all of other building stages. That is fixed in this PR.

hebasto avatar Nov 26 '21 17:11 hebasto

@jarolrod

You were reporting about such an issue before.

hebasto avatar Nov 26 '21 18:11 hebasto

Guix builds:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
4498a4450d0224b3da10d5c919a5c227084e44d91ebfb9ec3046555355a52fe0  guix-build-f0474eb84f97/output/aarch64-linux-gnu/SHA256SUMS.part
a789916b0dbaf7f125cf825e4b7fb666a187e4c23a71b5d239d6ae7038e73dae  guix-build-f0474eb84f97/output/aarch64-linux-gnu/bitcoin-f0474eb84f97-aarch64-linux-gnu-debug.tar.gz
87471634b55a27eff5d8eda37bee12ed5b061f322be6378544e05089e5d684ec  guix-build-f0474eb84f97/output/aarch64-linux-gnu/bitcoin-f0474eb84f97-aarch64-linux-gnu.tar.gz
c320a995284f080c158290dfd03cbb48d3ee3794456df8a1ac166ddf09214827  guix-build-f0474eb84f97/output/arm-linux-gnueabihf/SHA256SUMS.part
da7120471220a47937ed7992fc14090e6078c6a751effe579de6c6f0e6e1382f  guix-build-f0474eb84f97/output/arm-linux-gnueabihf/bitcoin-f0474eb84f97-arm-linux-gnueabihf-debug.tar.gz
e0373de6ef389bbc9526ea55af82245c866e0fec21a1eeb1270075fd3c7c3387  guix-build-f0474eb84f97/output/arm-linux-gnueabihf/bitcoin-f0474eb84f97-arm-linux-gnueabihf.tar.gz
1b91d4c6198ad9a8e0d9e13f0c663eb3ecbe0dea38306a76a4a61788213092d8  guix-build-f0474eb84f97/output/dist-archive/bitcoin-f0474eb84f97.tar.gz
2e89486ccb2277c5867797dee8916bfec9c9ae226e8721302067051b1e555b94  guix-build-f0474eb84f97/output/powerpc64-linux-gnu/SHA256SUMS.part
30af923cb52c19af01172c97da68215d72c6e247262cffc589fd9413bda61a2b  guix-build-f0474eb84f97/output/powerpc64-linux-gnu/bitcoin-f0474eb84f97-powerpc64-linux-gnu-debug.tar.gz
b811e23bf17154743926fd6a39bbaffe7e4fe6dbb6fc80687eb7dfd1aff3d0ee  guix-build-f0474eb84f97/output/powerpc64-linux-gnu/bitcoin-f0474eb84f97-powerpc64-linux-gnu.tar.gz
9af6b62937732dd382e4cd9f990c9adb70da0eaa2ae225a6963b8346f60ecbb4  guix-build-f0474eb84f97/output/powerpc64le-linux-gnu/SHA256SUMS.part
1090d4f3e91eae012093cc9087712cca96055bb1ccf7fa988d4a84be73a50ce4  guix-build-f0474eb84f97/output/powerpc64le-linux-gnu/bitcoin-f0474eb84f97-powerpc64le-linux-gnu-debug.tar.gz
519f5f5c695c489bb5d46dce2251d4bc57141830a45217c2f404b63ff95f62bc  guix-build-f0474eb84f97/output/powerpc64le-linux-gnu/bitcoin-f0474eb84f97-powerpc64le-linux-gnu.tar.gz
e690b696565b4a8f77d20938e53ceb08df6dc47c1e818bb647a56cee1ddc78d4  guix-build-f0474eb84f97/output/riscv64-linux-gnu/SHA256SUMS.part
1ee6afaf982855554cd44004677727f4785d60ee8de2a9ec138357ffc0c8cb2d  guix-build-f0474eb84f97/output/riscv64-linux-gnu/bitcoin-f0474eb84f97-riscv64-linux-gnu-debug.tar.gz
2dea5c7505b43f6e97628861f32c70ab383f2d7cfc3a3e50c14e10b6103b6f8b  guix-build-f0474eb84f97/output/riscv64-linux-gnu/bitcoin-f0474eb84f97-riscv64-linux-gnu.tar.gz
c38f1340b4f220f678de4cb00f143201a5260ab2fa36a211b6171944c1bba73e  guix-build-f0474eb84f97/output/x86_64-apple-darwin19/SHA256SUMS.part
3593609a149ffcd8ce04897bb0145de7b7ea0a82a408d9e7db851fbeb8894164  guix-build-f0474eb84f97/output/x86_64-apple-darwin19/bitcoin-f0474eb84f97-osx-unsigned.dmg
fb75165490cb893ee731639d0d9b9029d829d08b46a59d4596fbb5428ad92d15  guix-build-f0474eb84f97/output/x86_64-apple-darwin19/bitcoin-f0474eb84f97-osx-unsigned.tar.gz
8d1ba677f53120b075ea4288c27ff00e4d0e377d349c03ee118f9151da790213  guix-build-f0474eb84f97/output/x86_64-apple-darwin19/bitcoin-f0474eb84f97-osx64.tar.gz
c0faa284a22812fbcdbf0e1ec0d8edfeb384c827080ae1072d2e1ff99d391584  guix-build-f0474eb84f97/output/x86_64-linux-gnu/SHA256SUMS.part
4f717a6ea20449ebf371e7dbf2785096775e6faec07192bd98813d834723bd5d  guix-build-f0474eb84f97/output/x86_64-linux-gnu/bitcoin-f0474eb84f97-x86_64-linux-gnu-debug.tar.gz
f741481b60f1c1951782063101a350f004e018d901c7b24c25c91bbfb2318409  guix-build-f0474eb84f97/output/x86_64-linux-gnu/bitcoin-f0474eb84f97-x86_64-linux-gnu.tar.gz
1a9552a2315eb5a57a35c1e545c9ce83ce5986b419df64c55e6fe1e30d6138d8  guix-build-f0474eb84f97/output/x86_64-w64-mingw32/SHA256SUMS.part
4c8235a0b40cd3d7f3eff9945ef54b89484e696d928820aa8875472bd62e5ccb  guix-build-f0474eb84f97/output/x86_64-w64-mingw32/bitcoin-f0474eb84f97-win-unsigned.tar.gz
6cdefe75985b5ab33fd5f8f6ffe8868a6c8b15e2d2cf9c5483ce6e26fd7d10c6  guix-build-f0474eb84f97/output/x86_64-w64-mingw32/bitcoin-f0474eb84f97-win64-debug.zip
21b6f0ab5bb166cef8e57927f418bb4dd7723dc383e4a957386505333ae29911  guix-build-f0474eb84f97/output/x86_64-w64-mingw32/bitcoin-f0474eb84f97-win64-setup-unsigned.exe
6bc27d50cfb48e54cba864accce668bd0889cf54860c13fd96e191ceaba6303b  guix-build-f0474eb84f97/output/x86_64-w64-mingw32/bitcoin-f0474eb84f97-win64.zip

hebasto avatar Nov 26 '21 20:11 hebasto

Fixing these warnings is fine, they've been around forever. However concept NACK on the approach. Similar to #23612, creating (undocumented) special-cases in depends, should be a last resort, especially if it's just to suppress some warnings. It would probably be unexpected to someone using depends, that when they happen to build a certain dependency, on a particular OS, they get additional (unrelated) configure options turned on, with no explanation.

The cause of such warnings is the fact that -fvisibility=hidden is used during building of the qt package by default.

-fvisibility=hidden is used by default by other packages as well. i.e Boost.

Would there be any downside to just building everything in depends, for darwin, with -fvisibility=hidden?

fanquake avatar Dec 01 '21 04:12 fanquake

@fanquake

It would probably be unexpected to someone using depends, that when they happen to build a certain dependency, on a particular OS, they get additional (unrelated) configure options turned on, with no explanation.

Got it. Just a note that a similar approach is already used: https://github.com/bitcoin/bitcoin/blob/e7507f333bc93047d0baadea4fde19f770dacb56/depends/config.site.in#L114-L116

... creating (undocumented) special-cases in depends...

Is printing reduce_exports value in the ./configure summary a proper way to document the actual behavior?

Would there be any downside to just building everything in depends, for darwin, with -fvisibility=hidden?

Building everything in depends with -fvisibility=hidden won't help. It requires to build with depends with -fvisibility=hidden. And that, btw, was my initial approach to handle those warnings.

hebasto avatar Dec 01 '21 15:12 hebasto

Reworked.

hebasto avatar Dec 01 '21 16:12 hebasto

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

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK TheCharlatan
Concept NACK fanquake

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

Conflicts

No conflicts as of last run.

DrahtBot avatar Dec 02 '21 00:12 DrahtBot

Got it. Just a note that a similar approach is already used:

Yes, however always turning off reduced exports when debugging, isn't really the same as turning it on when building a certain dependency, on a single OS. One is a generic, likely expected behavior, the other is a special case that's (undocumented) existence wouldn't be clear to anyone looking at the code.

Building everything in depends with -fvisibility=hidden won't help. It requires to build with depends with -fvisibility=hidden.

I think you've misunderstood my suggestion. I meant add -fvisibility=hidden to the darwin CC & CXX, which "builds everything" in depends with the flag, and then passes it though to configure. i.e https://github.com/fanquake/bitcoin/commit/fe7807d43463e9deeb2fd2a1cd36e6d80d3aa1b8. That would seem to achieve the same outcome as what's being proposed in this PR.

fanquake avatar Dec 02 '21 03:12 fanquake

~Closing in favor of #23817.~

hebasto avatar Dec 19 '21 10:12 hebasto

Reworked:

  • based on #23817
  • implemented @fanquake's idea

hebasto avatar Dec 24 '21 11:12 hebasto

Rebased 9992b85464235871a6ca9f027680f7e157283b78 -> 856efb0aabbca559cb65a5f539b5a04338610092 (pr23609.03 -> pr23609.04) due to the conflict with #23817.

hebasto avatar Dec 27 '21 08:12 hebasto

Guix builds:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
3bd0f565f675a9564583e0469ca8116f5c748f2179f6efcdf31b0bafec185725  guix-build-856efb0aabbc/output/aarch64-linux-gnu/SHA256SUMS.part
d140a2d302cd1e22e594fb03da3a956516e6fb8b40e08f618a0964df90949c72  guix-build-856efb0aabbc/output/aarch64-linux-gnu/bitcoin-856efb0aabbc-aarch64-linux-gnu-debug.tar.gz
fafcab9f9250d5d65adb0435cedbebda07c8ed1d4f2841e27c60484336bd61d6  guix-build-856efb0aabbc/output/aarch64-linux-gnu/bitcoin-856efb0aabbc-aarch64-linux-gnu.tar.gz
b34f67a272b6ff39b42eb653a97630161a5c7f4ee0d3f33cdd176a8f0066113a  guix-build-856efb0aabbc/output/arm-linux-gnueabihf/SHA256SUMS.part
51f67ae3e4840cc78d4f9365f20c10b0a8bbeec827ac3131506017cc612ce6ea  guix-build-856efb0aabbc/output/arm-linux-gnueabihf/bitcoin-856efb0aabbc-arm-linux-gnueabihf-debug.tar.gz
b56d79025f84508fbcd81cf91d10d183ac001ccc88a8e32708968cff8031eb2e  guix-build-856efb0aabbc/output/arm-linux-gnueabihf/bitcoin-856efb0aabbc-arm-linux-gnueabihf.tar.gz
176ce4ab1b5a1bd483ed110415814a4b118aee53e01a6c3f9236346758abd069  guix-build-856efb0aabbc/output/dist-archive/bitcoin-856efb0aabbc.tar.gz
51e0b406303ca5e787e15d2ec526b8c443ef55054dbdcd06a4d84c15324040bd  guix-build-856efb0aabbc/output/powerpc64-linux-gnu/SHA256SUMS.part
4bda12b4e9b8316d9981b3b0d8806f0ece54f3ee5574d54e260f2324a1fff01c  guix-build-856efb0aabbc/output/powerpc64-linux-gnu/bitcoin-856efb0aabbc-powerpc64-linux-gnu-debug.tar.gz
95c827177e4a9018eeec57bd61d89475749671587310d8842ec656748e090bb7  guix-build-856efb0aabbc/output/powerpc64-linux-gnu/bitcoin-856efb0aabbc-powerpc64-linux-gnu.tar.gz
7212938038e36cae4a42c756bf6c2ea9662f3bb17a27700053e46b1d5a6953b3  guix-build-856efb0aabbc/output/powerpc64le-linux-gnu/SHA256SUMS.part
b9c53189bc86e38889682ccfbe2291e3525852b7e2f403c5afe0bc71f30260dd  guix-build-856efb0aabbc/output/powerpc64le-linux-gnu/bitcoin-856efb0aabbc-powerpc64le-linux-gnu-debug.tar.gz
6ae91eba965e88fe18334851e04733f07001b590051cf2fa5cc81c0aa2d269f2  guix-build-856efb0aabbc/output/powerpc64le-linux-gnu/bitcoin-856efb0aabbc-powerpc64le-linux-gnu.tar.gz
1a3dcbe1b710fb89479175516468fc1374cb7d81d49067a87678bea134a962cc  guix-build-856efb0aabbc/output/riscv64-linux-gnu/SHA256SUMS.part
b69decbad01acc78e79f22762767d6f999f240a9ff6644a81582d50400c2652c  guix-build-856efb0aabbc/output/riscv64-linux-gnu/bitcoin-856efb0aabbc-riscv64-linux-gnu-debug.tar.gz
48670b81f62061cd1b032612910755efa138a21cc869df605236da2dcb039543  guix-build-856efb0aabbc/output/riscv64-linux-gnu/bitcoin-856efb0aabbc-riscv64-linux-gnu.tar.gz
4cfd4396632d5283ea377df62aead0d9c6a5bde846c4cd75dc49d9d1c5cf374d  guix-build-856efb0aabbc/output/x86_64-apple-darwin/SHA256SUMS.part
80f7500b31c8ea905868361e96ca0ffe3d948b6648dfdac0df8f4892474e4060  guix-build-856efb0aabbc/output/x86_64-apple-darwin/bitcoin-856efb0aabbc-osx-unsigned.dmg
ccc7ecb4acb7a155971e871a3f5872dc820f28d569abd612042022cb6a913858  guix-build-856efb0aabbc/output/x86_64-apple-darwin/bitcoin-856efb0aabbc-osx-unsigned.tar.gz
495000451cf3d6d5afe966818530c3680e03153bf1968d47fca25aa27bc0a9e3  guix-build-856efb0aabbc/output/x86_64-apple-darwin/bitcoin-856efb0aabbc-osx64.tar.gz
02872bda57ced131592cdbb5b66b85b4aa9bc94083eb8289373bc7da80720f0b  guix-build-856efb0aabbc/output/x86_64-linux-gnu/SHA256SUMS.part
88d56d68450caaaab0a3fc7050421e77c40a0173639f366c1b90c4699c473fe0  guix-build-856efb0aabbc/output/x86_64-linux-gnu/bitcoin-856efb0aabbc-x86_64-linux-gnu-debug.tar.gz
d40a740f2e03ab3e99a2a4b027e715c1762f349b84388e9a2fb5a1a99384c485  guix-build-856efb0aabbc/output/x86_64-linux-gnu/bitcoin-856efb0aabbc-x86_64-linux-gnu.tar.gz
8afc1733dd7b2d0081098dad31cf436517660dd7e40254c65d491d1cc64b3a54  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/SHA256SUMS.part
add785329869b40f28fcb259cfa52eca226c1663d2d112aab40062dc10143812  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win-unsigned.tar.gz
a48446a8e5a5ab5e32b4f87cd05e506f0462c7c8499668c50b4efc8af523bcf6  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win64-debug.zip
e5182e3ce6ea8adf4fe9c2420f35d77e5363ebe20f256044ebc739ff1ec2c2ff  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win64-setup-unsigned.exe
bef1d5cb5e54963553b6e19febe8e561e5460eaaae689d9ca91bfb7440204b83  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win64.zip

hebasto avatar Dec 27 '21 15:12 hebasto

Guix hashes, mine match @hebasto:

find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum

3bd0f565f675a9564583e0469ca8116f5c748f2179f6efcdf31b0bafec185725  guix-build-856efb0aabbc/output/aarch64-linux-gnu/SHA256SUMS.part
d140a2d302cd1e22e594fb03da3a956516e6fb8b40e08f618a0964df90949c72  guix-build-856efb0aabbc/output/aarch64-linux-gnu/bitcoin-856efb0aabbc-aarch64-linux-gnu-debug.tar.gz
fafcab9f9250d5d65adb0435cedbebda07c8ed1d4f2841e27c60484336bd61d6  guix-build-856efb0aabbc/output/aarch64-linux-gnu/bitcoin-856efb0aabbc-aarch64-linux-gnu.tar.gz
b34f67a272b6ff39b42eb653a97630161a5c7f4ee0d3f33cdd176a8f0066113a  guix-build-856efb0aabbc/output/arm-linux-gnueabihf/SHA256SUMS.part
51f67ae3e4840cc78d4f9365f20c10b0a8bbeec827ac3131506017cc612ce6ea  guix-build-856efb0aabbc/output/arm-linux-gnueabihf/bitcoin-856efb0aabbc-arm-linux-gnueabihf-debug.tar.gz
b56d79025f84508fbcd81cf91d10d183ac001ccc88a8e32708968cff8031eb2e  guix-build-856efb0aabbc/output/arm-linux-gnueabihf/bitcoin-856efb0aabbc-arm-linux-gnueabihf.tar.gz
176ce4ab1b5a1bd483ed110415814a4b118aee53e01a6c3f9236346758abd069  guix-build-856efb0aabbc/output/dist-archive/bitcoin-856efb0aabbc.tar.gz
51e0b406303ca5e787e15d2ec526b8c443ef55054dbdcd06a4d84c15324040bd  guix-build-856efb0aabbc/output/powerpc64-linux-gnu/SHA256SUMS.part
4bda12b4e9b8316d9981b3b0d8806f0ece54f3ee5574d54e260f2324a1fff01c  guix-build-856efb0aabbc/output/powerpc64-linux-gnu/bitcoin-856efb0aabbc-powerpc64-linux-gnu-debug.tar.gz
95c827177e4a9018eeec57bd61d89475749671587310d8842ec656748e090bb7  guix-build-856efb0aabbc/output/powerpc64-linux-gnu/bitcoin-856efb0aabbc-powerpc64-linux-gnu.tar.gz
7212938038e36cae4a42c756bf6c2ea9662f3bb17a27700053e46b1d5a6953b3  guix-build-856efb0aabbc/output/powerpc64le-linux-gnu/SHA256SUMS.part
b9c53189bc86e38889682ccfbe2291e3525852b7e2f403c5afe0bc71f30260dd  guix-build-856efb0aabbc/output/powerpc64le-linux-gnu/bitcoin-856efb0aabbc-powerpc64le-linux-gnu-debug.tar.gz
6ae91eba965e88fe18334851e04733f07001b590051cf2fa5cc81c0aa2d269f2  guix-build-856efb0aabbc/output/powerpc64le-linux-gnu/bitcoin-856efb0aabbc-powerpc64le-linux-gnu.tar.gz
1a3dcbe1b710fb89479175516468fc1374cb7d81d49067a87678bea134a962cc  guix-build-856efb0aabbc/output/riscv64-linux-gnu/SHA256SUMS.part
b69decbad01acc78e79f22762767d6f999f240a9ff6644a81582d50400c2652c  guix-build-856efb0aabbc/output/riscv64-linux-gnu/bitcoin-856efb0aabbc-riscv64-linux-gnu-debug.tar.gz
48670b81f62061cd1b032612910755efa138a21cc869df605236da2dcb039543  guix-build-856efb0aabbc/output/riscv64-linux-gnu/bitcoin-856efb0aabbc-riscv64-linux-gnu.tar.gz
4cfd4396632d5283ea377df62aead0d9c6a5bde846c4cd75dc49d9d1c5cf374d  guix-build-856efb0aabbc/output/x86_64-apple-darwin/SHA256SUMS.part
80f7500b31c8ea905868361e96ca0ffe3d948b6648dfdac0df8f4892474e4060  guix-build-856efb0aabbc/output/x86_64-apple-darwin/bitcoin-856efb0aabbc-osx-unsigned.dmg
ccc7ecb4acb7a155971e871a3f5872dc820f28d569abd612042022cb6a913858  guix-build-856efb0aabbc/output/x86_64-apple-darwin/bitcoin-856efb0aabbc-osx-unsigned.tar.gz
495000451cf3d6d5afe966818530c3680e03153bf1968d47fca25aa27bc0a9e3  guix-build-856efb0aabbc/output/x86_64-apple-darwin/bitcoin-856efb0aabbc-osx64.tar.gz
02872bda57ced131592cdbb5b66b85b4aa9bc94083eb8289373bc7da80720f0b  guix-build-856efb0aabbc/output/x86_64-linux-gnu/SHA256SUMS.part
88d56d68450caaaab0a3fc7050421e77c40a0173639f366c1b90c4699c473fe0  guix-build-856efb0aabbc/output/x86_64-linux-gnu/bitcoin-856efb0aabbc-x86_64-linux-gnu-debug.tar.gz
d40a740f2e03ab3e99a2a4b027e715c1762f349b84388e9a2fb5a1a99384c485  guix-build-856efb0aabbc/output/x86_64-linux-gnu/bitcoin-856efb0aabbc-x86_64-linux-gnu.tar.gz
8afc1733dd7b2d0081098dad31cf436517660dd7e40254c65d491d1cc64b3a54  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/SHA256SUMS.part
add785329869b40f28fcb259cfa52eca226c1663d2d112aab40062dc10143812  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win-unsigned.tar.gz
a48446a8e5a5ab5e32b4f87cd05e506f0462c7c8499668c50b4efc8af523bcf6  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win64-debug.zip
e5182e3ce6ea8adf4fe9c2420f35d77e5363ebe20f256044ebc739ff1ec2c2ff  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win64-setup-unsigned.exe
bef1d5cb5e54963553b6e19febe8e561e5460eaaae689d9ca91bfb7440204b83  guix-build-856efb0aabbc/output/x86_64-w64-mingw32/bitcoin-856efb0aabbc-win64.zip

jarolrod avatar Jan 14 '22 03:01 jarolrod

Rebased 856efb0aabbca559cb65a5f539b5a04338610092 -> 047d211b18a33be00685c4e494fa1a9d315c7d12 (pr23609.04 -> pr23609.05) on top of the merged #24348.

hebasto avatar Feb 18 '22 09:02 hebasto

Guix builds:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
ca401e90c1d15a870de271469846038184858bdbfd09f77f140cf63ee4953948  guix-build-047d211b18a3/output/aarch64-linux-gnu/SHA256SUMS.part
72d565fe193d5268ebe3d0f0404709ba893a45841d3316ae7fc0ed92e1fe8e28  guix-build-047d211b18a3/output/aarch64-linux-gnu/bitcoin-047d211b18a3-aarch64-linux-gnu-debug.tar.gz
28a0b38829c2af38d7f6b5ed2949e09a0b56d6b4b2d151cdf055ab647ed2d714  guix-build-047d211b18a3/output/aarch64-linux-gnu/bitcoin-047d211b18a3-aarch64-linux-gnu.tar.gz
ac732ed36b7c921850f90b72b0b50e46685488ae5bc532af4d9b288c57d07917  guix-build-047d211b18a3/output/arm-linux-gnueabihf/SHA256SUMS.part
29c881ae26b64cf12b297eb569499ab96b2301baf4e22243678567b54bcd7c76  guix-build-047d211b18a3/output/arm-linux-gnueabihf/bitcoin-047d211b18a3-arm-linux-gnueabihf-debug.tar.gz
b0b7c5a0dcaf1963aa67e02a4c671b80e1b463ea466807bb83630c2f1055b25a  guix-build-047d211b18a3/output/arm-linux-gnueabihf/bitcoin-047d211b18a3-arm-linux-gnueabihf.tar.gz
76d7b98ddbe4ce3a276f2f1449e23b0da4c75c969e801f4c723c5b296b8a6526  guix-build-047d211b18a3/output/arm64-apple-darwin/SHA256SUMS.part
00a1b83f401d5e0f1d0b591cc84e1bd07abad6cbe46ad804543bcfa245ca633c  guix-build-047d211b18a3/output/arm64-apple-darwin/bitcoin-047d211b18a3-arm64-apple-darwin.tar.gz
c1ee0369b90f024af496debea5f2bb4428146d66bf386fab7ed802ec3a45c0bb  guix-build-047d211b18a3/output/arm64-apple-darwin/bitcoin-047d211b18a3-osx-unsigned.dmg
b2d0e2b38d441caa32334911bf2acb9c563d3823c2e5ee43b1b004dc5f76a697  guix-build-047d211b18a3/output/arm64-apple-darwin/bitcoin-047d211b18a3-osx-unsigned.tar.gz
0454d3de2e912fca76b087bd36c13a8296c145764ae7bcfd7baff9f2c54a9bdb  guix-build-047d211b18a3/output/dist-archive/bitcoin-047d211b18a3.tar.gz
e2cb77c10f92741d2bbc1a7bad863469b4977c9020377c8ec43cc6df7a6e1d69  guix-build-047d211b18a3/output/powerpc64-linux-gnu/SHA256SUMS.part
a6a2f92284761c85b0704be5c088fb9b48a7c35ecc695057d39aa23e9af46f5a  guix-build-047d211b18a3/output/powerpc64-linux-gnu/bitcoin-047d211b18a3-powerpc64-linux-gnu-debug.tar.gz
0a5a8ee72a7da448a01fa5b9ef49fb217aea8502ed698ae61e99729e85899c8f  guix-build-047d211b18a3/output/powerpc64-linux-gnu/bitcoin-047d211b18a3-powerpc64-linux-gnu.tar.gz
10bfe4f68dd3822c44db0e631c7983c02d61b77389f62e89938c11118f630c40  guix-build-047d211b18a3/output/powerpc64le-linux-gnu/SHA256SUMS.part
b1012108a9277a642b6b75d0e3c77e2078ce638ea9983723cdcacde28d388e83  guix-build-047d211b18a3/output/powerpc64le-linux-gnu/bitcoin-047d211b18a3-powerpc64le-linux-gnu-debug.tar.gz
a3ff4ddf1de3fc875c5c077d14e00061b8bc087bc5ac018eff63d1affeb14211  guix-build-047d211b18a3/output/powerpc64le-linux-gnu/bitcoin-047d211b18a3-powerpc64le-linux-gnu.tar.gz
11ec24a013a24e80a2ca091ed1d016bd35077e99ebf4ecd0834795d57182e28d  guix-build-047d211b18a3/output/riscv64-linux-gnu/SHA256SUMS.part
b251bf57f5fc5a1b221070bd766ba4c4e0d5d142294ed5bed2b3b1b4ba3337dc  guix-build-047d211b18a3/output/riscv64-linux-gnu/bitcoin-047d211b18a3-riscv64-linux-gnu-debug.tar.gz
0e27cfafec8ea45d8187214eb6d5ec28466a133e9322ae0c15b458b255d851a9  guix-build-047d211b18a3/output/riscv64-linux-gnu/bitcoin-047d211b18a3-riscv64-linux-gnu.tar.gz
8c985294c5e9a3631f7c15361dc9d0066d959f42277692600110c318318839ba  guix-build-047d211b18a3/output/x86_64-apple-darwin/SHA256SUMS.part
d49d44144a4bac717921329288081966c84a8eeb1a5282b1461a1bf961337d78  guix-build-047d211b18a3/output/x86_64-apple-darwin/bitcoin-047d211b18a3-osx-unsigned.dmg
de329d2f6229414ae225ab6a2f0a10fd7200d226eb843f13b47d4bbe585c2296  guix-build-047d211b18a3/output/x86_64-apple-darwin/bitcoin-047d211b18a3-osx-unsigned.tar.gz
eaddfdea8b4a3a2b579d93e9731c9ca5b7968c03b5705da738f952af2cc3cb88  guix-build-047d211b18a3/output/x86_64-apple-darwin/bitcoin-047d211b18a3-osx64.tar.gz
21189667a661dae90bb5fcc030d8ed85e0eb8f016cf5e7327deceaa2e69c7357  guix-build-047d211b18a3/output/x86_64-linux-gnu/SHA256SUMS.part
ae2a0d8ac7762cdaada000ef037e60a0669d96568bae1b6a2fcb97b3a3ff15f3  guix-build-047d211b18a3/output/x86_64-linux-gnu/bitcoin-047d211b18a3-x86_64-linux-gnu-debug.tar.gz
4f973846f3e30db09b9512e46c74ee704f22711dbc7fd8d466fac62f6893c43f  guix-build-047d211b18a3/output/x86_64-linux-gnu/bitcoin-047d211b18a3-x86_64-linux-gnu.tar.gz
3037f3409431abe6c363db21ec23ebfcb792dae58cdddeca7f9192ee8ec38cdc  guix-build-047d211b18a3/output/x86_64-w64-mingw32/SHA256SUMS.part
d79671a9a6cddd2cbb6bbd15988a0b401618f65855bade0c3bfc620814a625e5  guix-build-047d211b18a3/output/x86_64-w64-mingw32/bitcoin-047d211b18a3-win-unsigned.tar.gz
1bb39d3079907c10e756b49d5b39a428dcfff5c898e41300a9d2881b4c30000b  guix-build-047d211b18a3/output/x86_64-w64-mingw32/bitcoin-047d211b18a3-win64-debug.zip
c5c4954eb81d089e2a767793c846fbb9824875b8a608bea347f47502160556a9  guix-build-047d211b18a3/output/x86_64-w64-mingw32/bitcoin-047d211b18a3-win64-setup-unsigned.exe
98a643532295fef32fe3b2f40ccaca7711fdd0cd1e553ebafde1dbd9ac24d552  guix-build-047d211b18a3/output/x86_64-w64-mingw32/bitcoin-047d211b18a3-win64.zip

hebasto avatar Feb 18 '22 12:02 hebasto

GUIX hashes:

x86:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum

139d2d636d0bccbbdff73773b69b4e20c521596b50efa407ab62ca5abac72220  guix-build-258921a8f7e1/output/aarch64-linux-gnu/SHA256SUMS.part
b30b46b94e100afd3982697a492fbef2dc40cf6eea7ed6dc522e297ed00e534d  guix-build-258921a8f7e1/output/aarch64-linux-gnu/bitcoin-258921a8f7e1-aarch64-linux-gnu-debug.tar.gz
d6d9ff3287177b0094b01bc745e6e77bf900f95dbdd798a3b62086d1032133cb  guix-build-258921a8f7e1/output/aarch64-linux-gnu/bitcoin-258921a8f7e1-aarch64-linux-gnu.tar.gz
2354953d3ccb5113101e0762edd974848996caae50133fad017681643ff91f62  guix-build-258921a8f7e1/output/arm-linux-gnueabihf/SHA256SUMS.part
34d77dc01885822ca1789dfab4221635349155d095290d0d6601b6db251917d5  guix-build-258921a8f7e1/output/arm-linux-gnueabihf/bitcoin-258921a8f7e1-arm-linux-gnueabihf-debug.tar.gz
a805d3d15135375c5551cd5f2d6aca2bd4965abcd23177b3dbd5a98f41a94063  guix-build-258921a8f7e1/output/arm-linux-gnueabihf/bitcoin-258921a8f7e1-arm-linux-gnueabihf.tar.gz
c5708ff477e52ceedaeba0f0973df5bac079dd2d17645ecc9f0ff90d290f204b  guix-build-258921a8f7e1/output/arm64-apple-darwin/SHA256SUMS.part
9862ddb651ae5b1badf99457231d6bfafe517190a2f7f35ccf51ee73ddff3890  guix-build-258921a8f7e1/output/arm64-apple-darwin/bitcoin-258921a8f7e1-arm64-apple-darwin-unsigned.dmg
a08e84691501c64b30ec7bc11db1a44263249f11c3d338c22aed06bc6eff83a8  guix-build-258921a8f7e1/output/arm64-apple-darwin/bitcoin-258921a8f7e1-arm64-apple-darwin-unsigned.tar.gz
6369f77d8b2e716d6b8bf1ac402110f6a7fd721b361a4d5bb7823d8d5660a566  guix-build-258921a8f7e1/output/arm64-apple-darwin/bitcoin-258921a8f7e1-arm64-apple-darwin.tar.gz
0a8439ceb7b78fb9af5c46735e49e3b36c2f1934b8382eb981c3c673731ee894  guix-build-258921a8f7e1/output/dist-archive/bitcoin-258921a8f7e1.tar.gz
a36e0ff9255c218d76eafe7f6678567ea7fafc9b78a006d8e2fbaf6a8c0d3413  guix-build-258921a8f7e1/output/powerpc64-linux-gnu/SHA256SUMS.part
6598e11af725f5916ac6c0dec583f0030c2a6a130134d1bfc726c3806bf4f6f9  guix-build-258921a8f7e1/output/powerpc64-linux-gnu/bitcoin-258921a8f7e1-powerpc64-linux-gnu-debug.tar.gz
4f3d2556314bf58eab747062a65c0521557441c1fa223e1f7a92bace866cc43b  guix-build-258921a8f7e1/output/powerpc64-linux-gnu/bitcoin-258921a8f7e1-powerpc64-linux-gnu.tar.gz
abeea34a69880fa1df3c4ae88cbfc966667195913bdb0c95b6a55dc6d1170170  guix-build-258921a8f7e1/output/powerpc64le-linux-gnu/SHA256SUMS.part
c1effa94d6d4988ac8195059c0e4d197be8e0ff05531671cb4f83fb4c221cb6f  guix-build-258921a8f7e1/output/powerpc64le-linux-gnu/bitcoin-258921a8f7e1-powerpc64le-linux-gnu-debug.tar.gz
d902856c26c1b525b5752d249145bd62c00f13da1eb831f5a4afd070471f4a21  guix-build-258921a8f7e1/output/powerpc64le-linux-gnu/bitcoin-258921a8f7e1-powerpc64le-linux-gnu.tar.gz
fb3c3c711f3cd9f18cdc4abda237f8c988c2a4c5ab612b661996a65d5f1202e8  guix-build-258921a8f7e1/output/riscv64-linux-gnu/SHA256SUMS.part
a39a71536459dbfad0281ef0f3d4e6ea36b86ffc92241449819c665e23ca67e3  guix-build-258921a8f7e1/output/riscv64-linux-gnu/bitcoin-258921a8f7e1-riscv64-linux-gnu-debug.tar.gz
e1aa3e157c719b59dc30b104fa4052a31d5bef949db57706b1a03b2b7c7a5828  guix-build-258921a8f7e1/output/riscv64-linux-gnu/bitcoin-258921a8f7e1-riscv64-linux-gnu.tar.gz
087e87b07455711c8e638c7ffe7fd25a070d336a122bcecbb70b2593a38e8c71  guix-build-258921a8f7e1/output/x86_64-apple-darwin/SHA256SUMS.part
ad501ebeaafae4f9c530ae7bd683abce7eaee0af1543abe05748b149137e281b  guix-build-258921a8f7e1/output/x86_64-apple-darwin/bitcoin-258921a8f7e1-x86_64-apple-darwin-unsigned.dmg
c000eeefe3a658a19809ec43a98582a58ea0e7c12b81188d7cf246967f03a62f  guix-build-258921a8f7e1/output/x86_64-apple-darwin/bitcoin-258921a8f7e1-x86_64-apple-darwin-unsigned.tar.gz
98bd23a4bc46efec2cee82751665a78c25df10e7e4d0ea4ee6b99c5a30fbabb7  guix-build-258921a8f7e1/output/x86_64-apple-darwin/bitcoin-258921a8f7e1-x86_64-apple-darwin.tar.gz
eb0d3d9c8d7bbec960a16df1415620e22c0aee0df73b34411e1e1e868af2b98e  guix-build-258921a8f7e1/output/x86_64-linux-gnu/SHA256SUMS.part
6a050dea598ab4e4e04970775abba64ba6b4085017f5483e08314f859cb53bee  guix-build-258921a8f7e1/output/x86_64-linux-gnu/bitcoin-258921a8f7e1-x86_64-linux-gnu-debug.tar.gz
2ce170707e031030d475de7e27ecbae8417d227d56daaee8f70e9e61a246f41b  guix-build-258921a8f7e1/output/x86_64-linux-gnu/bitcoin-258921a8f7e1-x86_64-linux-gnu.tar.gz
88bef1f25507acfcf7fda417540a5a824a4a5010f2d80c46da3fc096d5f19e73  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/SHA256SUMS.part
e16f5d4f286799706d6f1cd5bf065831382cc95a22b6b760cd38884409cdc18d  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64-debug.zip
f5dd76204fcac5a438b0f72458f5d411d89714fdd0fbaeb952570333d51c9073  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64-setup-unsigned.exe
7ab44a2d3b708978f45ebf3bf0948916ef490271c9f32d5edc844962571fcf46  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64-unsigned.tar.gz
5330b2a703bc78f8c9b075acb672bdfc0dd22801af68b3bd41c159507702d9ff  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64.zip

arm64:

$ env HOSTS='arm-linux-gnueabihf arm64-apple-darwin powerpc64-linux-gnu powerpc64le-linux-gnu riscv64-linux-gnu x86_64-apple-darwin x86_64-linux-gnu x86_64-w64-mingw32' ./contrib/guix/guix-build
$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum

2354953d3ccb5113101e0762edd974848996caae50133fad017681643ff91f62  guix-build-258921a8f7e1/output/arm-linux-gnueabihf/SHA256SUMS.part
34d77dc01885822ca1789dfab4221635349155d095290d0d6601b6db251917d5  guix-build-258921a8f7e1/output/arm-linux-gnueabihf/bitcoin-258921a8f7e1-arm-linux-gnueabihf-debug.tar.gz
a805d3d15135375c5551cd5f2d6aca2bd4965abcd23177b3dbd5a98f41a94063  guix-build-258921a8f7e1/output/arm-linux-gnueabihf/bitcoin-258921a8f7e1-arm-linux-gnueabihf.tar.gz
ee9feb4417cbae83b53c4f32b671d8f522690b77779fed87520dc493c2f6f730  guix-build-258921a8f7e1/output/arm64-apple-darwin/SHA256SUMS.part
4eafc051b594c03075708a05c191f94bdde46050002ed15b0154ea57b0c0deca  guix-build-258921a8f7e1/output/arm64-apple-darwin/bitcoin-258921a8f7e1-arm64-apple-darwin-unsigned.dmg
8735a77dcb6f8cb3ef332c537a25475f67d153019603c9591a2ea25c32d13657  guix-build-258921a8f7e1/output/arm64-apple-darwin/bitcoin-258921a8f7e1-arm64-apple-darwin-unsigned.tar.gz
14f72e3704a1c6c66787c324898be5622afe4f0cce6412ef50161c6b4597457f  guix-build-258921a8f7e1/output/arm64-apple-darwin/bitcoin-258921a8f7e1-arm64-apple-darwin.tar.gz
0a8439ceb7b78fb9af5c46735e49e3b36c2f1934b8382eb981c3c673731ee894  guix-build-258921a8f7e1/output/dist-archive/bitcoin-258921a8f7e1.tar.gz
a36e0ff9255c218d76eafe7f6678567ea7fafc9b78a006d8e2fbaf6a8c0d3413  guix-build-258921a8f7e1/output/powerpc64-linux-gnu/SHA256SUMS.part
6598e11af725f5916ac6c0dec583f0030c2a6a130134d1bfc726c3806bf4f6f9  guix-build-258921a8f7e1/output/powerpc64-linux-gnu/bitcoin-258921a8f7e1-powerpc64-linux-gnu-debug.tar.gz
4f3d2556314bf58eab747062a65c0521557441c1fa223e1f7a92bace866cc43b  guix-build-258921a8f7e1/output/powerpc64-linux-gnu/bitcoin-258921a8f7e1-powerpc64-linux-gnu.tar.gz
abeea34a69880fa1df3c4ae88cbfc966667195913bdb0c95b6a55dc6d1170170  guix-build-258921a8f7e1/output/powerpc64le-linux-gnu/SHA256SUMS.part
c1effa94d6d4988ac8195059c0e4d197be8e0ff05531671cb4f83fb4c221cb6f  guix-build-258921a8f7e1/output/powerpc64le-linux-gnu/bitcoin-258921a8f7e1-powerpc64le-linux-gnu-debug.tar.gz
d902856c26c1b525b5752d249145bd62c00f13da1eb831f5a4afd070471f4a21  guix-build-258921a8f7e1/output/powerpc64le-linux-gnu/bitcoin-258921a8f7e1-powerpc64le-linux-gnu.tar.gz
fb3c3c711f3cd9f18cdc4abda237f8c988c2a4c5ab612b661996a65d5f1202e8  guix-build-258921a8f7e1/output/riscv64-linux-gnu/SHA256SUMS.part
a39a71536459dbfad0281ef0f3d4e6ea36b86ffc92241449819c665e23ca67e3  guix-build-258921a8f7e1/output/riscv64-linux-gnu/bitcoin-258921a8f7e1-riscv64-linux-gnu-debug.tar.gz
e1aa3e157c719b59dc30b104fa4052a31d5bef949db57706b1a03b2b7c7a5828  guix-build-258921a8f7e1/output/riscv64-linux-gnu/bitcoin-258921a8f7e1-riscv64-linux-gnu.tar.gz
087e87b07455711c8e638c7ffe7fd25a070d336a122bcecbb70b2593a38e8c71  guix-build-258921a8f7e1/output/x86_64-apple-darwin/SHA256SUMS.part
ad501ebeaafae4f9c530ae7bd683abce7eaee0af1543abe05748b149137e281b  guix-build-258921a8f7e1/output/x86_64-apple-darwin/bitcoin-258921a8f7e1-x86_64-apple-darwin-unsigned.dmg
c000eeefe3a658a19809ec43a98582a58ea0e7c12b81188d7cf246967f03a62f  guix-build-258921a8f7e1/output/x86_64-apple-darwin/bitcoin-258921a8f7e1-x86_64-apple-darwin-unsigned.tar.gz
98bd23a4bc46efec2cee82751665a78c25df10e7e4d0ea4ee6b99c5a30fbabb7  guix-build-258921a8f7e1/output/x86_64-apple-darwin/bitcoin-258921a8f7e1-x86_64-apple-darwin.tar.gz
eb0d3d9c8d7bbec960a16df1415620e22c0aee0df73b34411e1e1e868af2b98e  guix-build-258921a8f7e1/output/x86_64-linux-gnu/SHA256SUMS.part
6a050dea598ab4e4e04970775abba64ba6b4085017f5483e08314f859cb53bee  guix-build-258921a8f7e1/output/x86_64-linux-gnu/bitcoin-258921a8f7e1-x86_64-linux-gnu-debug.tar.gz
2ce170707e031030d475de7e27ecbae8417d227d56daaee8f70e9e61a246f41b  guix-build-258921a8f7e1/output/x86_64-linux-gnu/bitcoin-258921a8f7e1-x86_64-linux-gnu.tar.gz
88bef1f25507acfcf7fda417540a5a824a4a5010f2d80c46da3fc096d5f19e73  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/SHA256SUMS.part
e16f5d4f286799706d6f1cd5bf065831382cc95a22b6b760cd38884409cdc18d  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64-debug.zip
f5dd76204fcac5a438b0f72458f5d411d89714fdd0fbaeb952570333d51c9073  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64-setup-unsigned.exe
7ab44a2d3b708978f45ebf3bf0948916ef490271c9f32d5edc844962571fcf46  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64-unsigned.tar.gz
5330b2a703bc78f8c9b075acb672bdfc0dd22801af68b3bd41c159507702d9ff  guix-build-258921a8f7e1/output/x86_64-w64-mingw32/bitcoin-258921a8f7e1-win64.zip

jarolrod avatar Apr 14 '22 02:04 jarolrod

Rebased 047d211b18a33be00685c4e494fa1a9d315c7d12 -> 258921a8f7e1834e02f48c2bfb0491ce88ed0508 (pr23609.05 -> pr23609.06).

hebasto avatar Jul 20 '22 09:07 hebasto

@jarolrod

but i wonder if this is worth it considering the drop, perhaps attack the spamming from a different angle? Most of the warnings are coming out of boost. Put the 12100 warning in contrast with the amount of warnings i get building on linux

I'd say most of the warnings are emitted by a compiler, and most of them can be silenced with --enable-suppress-external-warnings configure option.

But this PR deals with linker warnings.

hebasto avatar Aug 10 '22 08:08 hebasto

@fanquake

Friendly ping :)

hebasto avatar Jan 31 '23 13:01 hebasto

Personally I don't think the warnings matter. I think if you want to avoid them, use --enable-reduce-exports, which already exists, and has the same effect. I know this PR was changed to append to cflags based on what I said above, but thinking about this more, it's weird to do this and make it such that macOS depends builds are basically always using --enable-reduce-exports by default.

fanquake avatar Feb 02 '23 16:02 fanquake