Skip to content
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

build: Check for std::atomic::exchange rather than std::atomic_exchange #25599

Merged
merged 1 commit into from
Jul 18, 2022

Conversation

achow101
Copy link
Member

Our usage of std::atomic is with it's own exchange function, not std::atomic_exchange. So we should be looking specifically for that function.

This removes the need for -latomic for riscv builds, which resolves a guix cross architecture reproducibility issue.

@hebasto
Copy link
Member

hebasto commented Jul 13, 2022

This removes the need for -latomic for riscv builds, which resolves a guix cross architecture reproducibility issue.

Out of curiosity, how did you find it out?

@fanquake
Copy link
Member

Concept ACK over #25559. We just also need to test with older GCC.

@fanquake
Copy link
Member

Looks like this isn't quite enough for matching builds. I'm still seeing a store path:

guix-build-bc3528bf224c/output/riscv64-linux-gnu/bitcoin-bc3528bf224c/bin$ strings bitcoin-cli | grep "gnu/store"
/gnu/store/xkwi4lbycx9wilxfbgkkpdin0kjnlwwl-gcc-cross-riscv64-linux-gnu-10.3.0-lib/riscv64-linux-gnu/lib

x86_64:

b0bdb6899ea90e44790c2220e255a5c7a5b4b412028f4f0a50fe27c0aad76908  guix-build-bc3528bf224c/output/dist-archive/bitcoin-bc3528bf224c.tar.gz
1abfcac48d50a4c2897f325162dd0db2a4a07ee69283ac4111da05114822f936  guix-build-bc3528bf224c/output/riscv64-linux-gnu/SHA256SUMS.part
8030227acc2c34feefb3faf6ac5931f2234d57aa2dccc1a829f77b33d5fc0251  guix-build-bc3528bf224c/output/riscv64-linux-gnu/bitcoin-bc3528bf224c-riscv64-linux-gnu-debug.tar.gz
6788a3d89284c50038bdbe9af37926649b1ccb2a12c0815a4cabd3bb2a40f680  guix-build-bc3528bf224c/output/riscv64-linux-gnu/bitcoin-bc3528bf224c-riscv64-linux-gnu.tar.gz

arm64:

b0bdb6899ea90e44790c2220e255a5c7a5b4b412028f4f0a50fe27c0aad76908  guix-build-bc3528bf224c/output/dist-archive/bitcoin-bc3528bf224c.tar.gz
a5b54f1c209b271ba14ca5285a02c35d1bb958e71e61e775bb152f8efeab61e4  guix-build-bc3528bf224c/output/riscv64-linux-gnu/SHA256SUMS.part
8030227acc2c34feefb3faf6ac5931f2234d57aa2dccc1a829f77b33d5fc0251  guix-build-bc3528bf224c/output/riscv64-linux-gnu/bitcoin-bc3528bf224c-riscv64-linux-gnu-debug.tar.gz
7bbf5566d71d57abeeeafe1d7a4f83301bac8d929505a3923698aeb6492d21b8  guix-build-bc3528bf224c/output/riscv64-linux-gnu/bitcoin-bc3528bf224c-riscv64-linux-gnu.tar.gz

@achow101 achow101 force-pushed the specifc-atomics-check branch from bc3528b to e663787 Compare July 13, 2022 17:58
@achow101
Copy link
Member Author

achow101 commented Jul 13, 2022

Apparently -pthread has an effect on whether -latomic is needed, so I've updated the check to also include the pthreads flags that we would use for the actual build. This (for some reason) eliminates the need for -latomic and so riscv will not have the store path

x86_64

8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

arm64

8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

@fanquake
Copy link
Member

Guix Build (x86_64):

8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

Guix Build (arm64):

8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

@DrahtBot
Copy link
Contributor

Guix builds

File commit 1d89fc6
(master)
commit 378963f
(master and this pull)
SHA256SUMS.part 040a20b01cc3e1c8... 21190638c43dd2cd...
*-aarch64-linux-gnu-debug.tar.gz 56017c6d2db18ad9... ca1d9fed5f246a93...
*-aarch64-linux-gnu.tar.gz 5a93d659668679f4... 1bae3f64af5c4d6b...
*-arm-linux-gnueabihf-debug.tar.gz 002cd2af12d57c35... 8dad66275cb1056e...
*-arm-linux-gnueabihf.tar.gz 19cb3a7d9585279b... f4370f160b76f042...
*-arm64-apple-darwin-unsigned.dmg a3848d04c8ca26e3... 22569eb76106fb4c...
*-arm64-apple-darwin-unsigned.tar.gz 55e3ae4038758e6b... 26c523d3d3910be7...
*-arm64-apple-darwin.tar.gz 4d2dcf75335a6cf7... 1c21d4dd5f003186...
*-powerpc64-linux-gnu-debug.tar.gz e46b28154dc314db... 73c13b506728cb44...
*-powerpc64-linux-gnu.tar.gz 61adf9530c3ccfa8... b913f2c6bf99c640...
*-powerpc64le-linux-gnu-debug.tar.gz 350ab7d1be444bf5... 276cd372b30c72a9...
*-powerpc64le-linux-gnu.tar.gz bcfbddb1fe67357f... e7b2e53666ffec03...
*-riscv64-linux-gnu-debug.tar.gz 101a4389989874e4... c660d681b24311f6...
*-riscv64-linux-gnu.tar.gz 642508f58b5982af... dbc38e6cd4d73bc0...
*-win64-debug.zip 1812d54be66789fc... 01e4a6996e499518...
*-win64-setup-unsigned.exe 7b2b98eca1d8aaf0... 3ec1396c5bacaead...
*-win64-unsigned.tar.gz 3e5ce015d3ed1ed0... 2eda4479463614af...
*-win64.zip 18be84e6e2e208ff... 5ef35f94dbaa7b3e...
*-x86_64-apple-darwin-unsigned.dmg c311a0f445ad9902... 7d24ae5cb83ca36d...
*-x86_64-apple-darwin-unsigned.tar.gz 4f7f40dfaef0abc0... b21172a8d547ce87...
*-x86_64-apple-darwin.tar.gz 420de2d1def18b1c... aabf61c1a81301f7...
*-x86_64-linux-gnu-debug.tar.gz dc46da902834dafe... a63437d4bfd819b0...
*-x86_64-linux-gnu.tar.gz 6be28a23d66b3b5a... 683b8a57cce38c66...
*.tar.gz de6bc76ab68358b7... 1249494da08ad1d1...
guix_build.log a7dca2a54a90c9d6... 3c811e963e0e55fa...
guix_build.log.diff 5c810aab1bec4f9b...

@hebasto
Copy link
Member

hebasto commented Jul 14, 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
8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

@fanquake
Copy link
Member

Apparently -pthread has an effect on whether -latomic is needed,

When you use -pthread you end up with --push-state --as-needed -latomic --pop-state on the link line. This is done by GCC, see here:

/* Because RISC-V only has word-sized atomics, it requries libatomic where
   others do not.  So link libatomic by default, as needed.  */
#undef LIB_SPEC
#ifdef LD_AS_NEEDED_OPTION
#define LIB_SPEC GNU_USER_TARGET_LIB_SPEC \
  " %{pthread:" LD_AS_NEEDED_OPTION " -latomic " LD_NO_AS_NEEDED_OPTION "}"
#else
#define LIB_SPEC GNU_USER_TARGET_LIB_SPEC " -latomic "
#endif

If you take the code from our atomic check code, and compile it once with -latomic, and once with -pthread, i.e:

# riscv64-linux-gnu-g++ (Ubuntu 11.2.0-16ubuntu1) 11.2.0

riscv64-linux-gnu-g++ atomic.cpp -v -latomic -o a.atomic
# vs
riscv64-linux-gnu-g++ atomic.cpp -v -pthread -o a.pthread

you end up with "basically" the same binary. The assembly is identical, but the ELF headers and some sections differ, but this is just ordering:

Comparing a.pthread & a.atomic

File has been modified after NT_GNU_BUILD_ID has been applied.

readelf --wide --dynamic {}

@@ -1,13 +1,13 @@
 
 Dynamic section at offset 0xdf0 contains 29 entries:
   Tag        Type                         Name/Value
+ 0x0000000000000001 (NEEDED)             Shared library: [libatomic.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
  0x0000000000000001 (NEEDED)             Shared library: [ld-linux-riscv64-lp64d.so.1]
- 0x0000000000000001 (NEEDED)             Shared library: [libatomic.so.1]
  0x0000000000000020 (PREINIT_ARRAY)      0x1dd8
  0x0000000000000021 (PREINIT_ARRAYSZ)    8 (bytes)
  0x0000000000000019 (INIT_ARRAY)         0x1de0
  0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
  0x000000000000001a (FINI_ARRAY)         0x1de8
  0x000000000000001c (FINI_ARRAYSZ)       8 (bytes)
  0x000000006ffffef5 (GNU_HASH)           0x2d8

readelf --wide --notes {}

@@ -1,8 +1,8 @@
 
 Displaying notes found in: .note.gnu.build-id
   Owner                Data size 	Description
-  GNU                  0x00000014	NT_GNU_BUILD_ID (unique build ID bitstring)	    Build ID: 72a32f5b7270a5f338c45e3c74cc8764757f06e8
+  GNU                  0x00000014	NT_GNU_BUILD_ID (unique build ID bitstring)	    Build ID: 9beb4114ca7d27988c3cac8e257c717dbf6b7bb2
 
 Displaying notes found in: .note.ABI-tag
   Owner                Data size 	Description
   GNU                  0x00000010	NT_GNU_ABI_TAG (ABI version tag)	    OS: Linux, ABI: 4.15.0

strings --all --bytes=8 {}

@@ -1,18 +1,18 @@
 /lib/ld-linux-riscv64-lp64d.so.1
+_ITM_deregisterTMCloneTable
+_ITM_registerTMCloneTable
+__atomic_exchange_1
 __cxa_finalize
 __libc_start_main
 __stack_chk_fail
 __stack_chk_guard
-_ITM_deregisterTMCloneTable
-_ITM_registerTMCloneTable
-__atomic_exchange_1
+libatomic.so.1
 libc.so.6
 ld-linux-riscv64-lp64d.so.1
-libatomic.so.1
 LIBATOMIC_1.0
 GLIBC_2.27
 GLIBC_2.34
 GCC: (Ubuntu 11.2.0-16ubuntu1) 11.2.0
 rv64i2p0_m2p0_a2p0_f2p0_d2p0_c2p0
 __abi_tag
 crtstuff.c

readelf --wide --decompress --hex-dump=.dynstr {}

@@ -1,18 +1,18 @@
 
 Hex dump of section '.dynstr':
-  0x000003f0 005f5f63 78615f66 696e616c 697a6500 .__cxa_finalize.
-  0x00000400 5f5f6c69 62635f73 74617274 5f6d6169 __libc_start_mai
-  0x00000410 6e005f5f 73746163 6b5f6368 6b5f6661 n.__stack_chk_fa
-  0x00000420 696c005f 5f737461 636b5f63 686b5f67 il.__stack_chk_g
-  0x00000430 75617264 005f4954 4d5f6465 72656769 uard._ITM_deregi
-  0x00000440 73746572 544d436c 6f6e6554 61626c65 sterTMCloneTable
-  0x00000450 005f4954 4d5f7265 67697374 6572544d ._ITM_registerTM
-  0x00000460 436c6f6e 65546162 6c65005f 5f61746f CloneTable.__ato
-  0x00000470 6d69635f 65786368 616e6765 5f31006c mic_exchange_1.l
-  0x00000480 6962632e 736f2e36 006c642d 6c696e75 ibc.so.6.ld-linu
-  0x00000490 782d7269 73637636 342d6c70 3634642e x-riscv64-lp64d.
-  0x000004a0 736f2e31 006c6962 61746f6d 69632e73 so.1.libatomic.s
+  0x000003f0 005f4954 4d5f6465 72656769 73746572 ._ITM_deregister
+  0x00000400 544d436c 6f6e6554 61626c65 005f4954 TMCloneTable._IT
+  0x00000410 4d5f7265 67697374 6572544d 436c6f6e M_registerTMClon
+  0x00000420 65546162 6c65005f 5f61746f 6d69635f eTable.__atomic_
+  0x00000430 65786368 616e6765 5f31005f 5f637861 exchange_1.__cxa
+  0x00000440 5f66696e 616c697a 65005f5f 6c696263 _finalize.__libc
+  0x00000450 5f737461 72745f6d 61696e00 5f5f7374 _start_main.__st
+  0x00000460 61636b5f 63686b5f 6661696c 005f5f73 ack_chk_fail.__s
+  0x00000470 7461636b 5f63686b 5f677561 7264006c tack_chk_guard.l
+  0x00000480 69626174 6f6d6963 2e736f2e 31006c69 ibatomic.so.1.li
+  0x00000490 62632e73 6f2e3600 6c642d6c 696e7578 bc.so.6.ld-linux
+  0x000004a0 2d726973 63763634 2d6c7036 34642e73 -riscv64-lp64d.s
   0x000004b0 6f2e3100 4c494241 544f4d49 435f312e o.1.LIBATOMIC_1.
   0x000004c0 3000474c 4942435f 322e3237 00474c49 0.GLIBC_2.27.GLI
   0x000004d0 42435f32 2e333400                   BC_2.34.

cc @laanwj @jarolrod as you can actually test these changes / produced binaries on hardware.

@hebasto
Copy link
Member

hebasto commented Jul 14, 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
8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

@DrahtBot
Copy link
Contributor

Guix builds

File commit 062b9db
(master)
commit 2bd14f4
(master and this pull)
SHA256SUMS.part 90bfc40575c9ce38... 65c780d94495f025...
*-aarch64-linux-gnu-debug.tar.gz 815c173e572ce731... eaba6630ba1fcfc3...
*-aarch64-linux-gnu.tar.gz e41cde31acf92394... cc68432519b21682...
*-arm-linux-gnueabihf-debug.tar.gz 8671324d547eb696... affba2a54f2bafc3...
*-arm-linux-gnueabihf.tar.gz 0d191a575d78e25e... f408fe6a73c796fa...
*-riscv64-linux-gnu-debug.tar.gz 09f927da6da46f72... 4e93bdb95d425ed1...
*-riscv64-linux-gnu.tar.gz 9092c0ebbe32dcb6... 73d7e29fb7f02da1...
*-x86_64-linux-gnu-debug.tar.gz fd2b6388f647848e... 1df1499b1327673c...
*-x86_64-linux-gnu.tar.gz 4c378772cd12729c... cf05d58d097df580...
*.tar.gz 6e304ca904cdaa5a... ed52438767f2734f...
guix_build.log 11230304a9ef575c... c5affc0160161030...
*-arm64-apple-darwin-unsigned.dmg dbc69c1a08e7905a...
*-arm64-apple-darwin-unsigned.tar.gz 1b36b417ecac5b94...
*-arm64-apple-darwin.tar.gz cea2fc3c2c42e4c1...
*-powerpc64-linux-gnu-debug.tar.gz 08a21168b8d4d0dc...
*-powerpc64-linux-gnu.tar.gz c4222ffdaa1e69f5...
*-powerpc64le-linux-gnu-debug.tar.gz 122c230e1d1e1168...
*-powerpc64le-linux-gnu.tar.gz 722dc88b9c97f0fd...
*-win64-debug.zip fb9eacf1211d9f15...
*-win64-setup-unsigned.exe 0d6839b282e8d5d5...
*-win64-unsigned.tar.gz 2462f7ba69dcec11...
*-win64.zip aedf7d43d1422f94...
*-x86_64-apple-darwin-unsigned.dmg c7de069f27fefbe0...
*-x86_64-apple-darwin-unsigned.tar.gz ab97dfed1177851f...
*-x86_64-apple-darwin.tar.gz 3cd770e73f7d3868...
guix_build.log.diff d7e61b0a2730b3a7...

build-aux/m4/l_atomic.m4 Outdated Show resolved Hide resolved
build-aux/m4/l_atomic.m4 Outdated Show resolved Hide resolved
@jarolrod
Copy link
Member

jarolrod commented Jul 15, 2022

GUIX hashes

x86:

$ env HOSTS='riscv64-linux-gnu' ./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

8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

arm64:

$ env HOSTS='riscv64-linux-gnu' ./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

8ed44d4f8b34d9f71a0d4fef8fb6b0e3db8f6c99416cf651bffe84ff6e8a10b2  guix-build-e663787a4e4c/output/dist-archive/bitcoin-e663787a4e4c.tar.gz
0dc739fdebad85b659940747c7458532b53eead8cea7ceb1fe60e45ef65983d0  guix-build-e663787a4e4c/output/riscv64-linux-gnu/SHA256SUMS.part
cf7ea6fa5a08f0b20c70f7cbcdc98978ae7f795427734c3d6197fa4f04dc36f4  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu-debug.tar.gz
b28c757be27657b62d5239b8c21c9f1cd7e8509ad899118670ee5defbae6d513  guix-build-e663787a4e4c/output/riscv64-linux-gnu/bitcoin-e663787a4e4c-riscv64-linux-gnu.tar.gz

Our usage of std::atomic is with it's own exchange function, not
std::atomic_exchange. So we should be looking specifically for that
function.

Additionally, -pthread and -lpthread have an effect on whether -latomic
will be needed, so the atomics check needs to use these flags as well.
This will make the flags in use better match what is actually used when
linking.

This removes the need for -latomic for riscv builds, which resolves a
guix cross architecture reproducibility issue.
@achow101 achow101 force-pushed the specifc-atomics-check branch from e663787 to 4de4221 Compare July 18, 2022 14:47
@achow101
Copy link
Member Author

Builds for 4de4221

x86_64:

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

arm64:

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

@hebasto
Copy link
Member

hebasto commented Jul 18, 2022

Guix builds on x86_64:

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

@hebasto
Copy link
Member

hebasto commented Jul 18, 2022

Guix builds on arm64:

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

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 4de4221

Copy link
Member

@fanquake fanquake left a comment

Choose a reason for hiding this comment

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

ACK 4de4221

Guix Build (x86_64):

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

Guix Build (arm64):

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

@fanquake fanquake merged commit f002f8a into bitcoin:master Jul 18, 2022
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Jul 18, 2022
@jarolrod
Copy link
Member

post merge ack

guix built bitcoind binary from both an x86 host and arm64 host run fine on my riscv board

x86:

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

arm64:

dc9280f79e129d533fe69b4a44edf46ce9e640d737fe080e0cb1709d0f4561bb  guix-build-4de4221ab4b6/output/dist-archive/bitcoin-4de4221ab4b6.tar.gz
9d961549ce28292b8c632c40b071b80c77a9049a5b3f0b603e62dfad7c39aca2  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/SHA256SUMS.part
5d9b5094dc4da68148663a108a55df8c6a671aaa7af80afd38e26055d47c2daf  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu-debug.tar.gz
c77e83b003d9dd25f91dbc4aa5c00c9ee5ab66320cc94f85639bf8fb9a788d9a  guix-build-4de4221ab4b6/output/riscv64-linux-gnu/bitcoin-4de4221ab4b6-riscv64-linux-gnu.tar.gz

hebasto added a commit to hebasto/gui-qml that referenced this pull request Sep 21, 2022
The amended patch does not introduce cross architecture reproducibility
issues (also see bitcoin/bitcoin#25599).
hebasto added a commit to bitcoin-core/gui-qml that referenced this pull request Sep 26, 2022
33111dc build, qt: Amend `fix_riscv_atomic.patch` for riscv64 (Hennadii Stepanov)

Pull request description:

  The amended patch does not introduce cross architecture reproducibility issues (also see bitcoin/bitcoin#25599). Fixes #174 (comment).

  Guix builds on `x86_64`:
  ```
  7fa526befacec264600bcd19714540f616a2487126f66be4da87d9a7acdd13a1  guix-build-33111dca9e77/output/aarch64-linux-gnu/SHA256SUMS.part
  222e6e32db9dcde12a6ee52ee3bdbc54d7373d62972e3e2894b857ca5873c929  guix-build-33111dca9e77/output/aarch64-linux-gnu/bitcoin-33111dca9e77-aarch64-linux-gnu-debug.tar.gz
  feee26c4e067f644a9cacc739fd979c1625cbff7d2eaa8b3edc5a8d1c4626349  guix-build-33111dca9e77/output/aarch64-linux-gnu/bitcoin-33111dca9e77-aarch64-linux-gnu.tar.gz
  78058bc77f64522041921eb8c8f12739cba5d6490bbc5b8c98c88b8bbbd9a100  guix-build-33111dca9e77/output/arm-linux-gnueabihf/SHA256SUMS.part
  2c1e58c1efb51a65641ee9050aed983b360a7891f32fb02a5dea8003b71d2253  guix-build-33111dca9e77/output/arm-linux-gnueabihf/bitcoin-33111dca9e77-arm-linux-gnueabihf-debug.tar.gz
  969964dfaaa1ca19884ab738cb1bc74c7b930bdb3e30fdedaf1f9f2a547334ac  guix-build-33111dca9e77/output/arm-linux-gnueabihf/bitcoin-33111dca9e77-arm-linux-gnueabihf.tar.gz
  7237e351b399d8a04bbc99e1a8fdabd39459ad4baf37bd96679fb9c4bca71390  guix-build-33111dca9e77/output/arm64-apple-darwin/SHA256SUMS.part
  2bacf53c722be4146ff4113de0361f72ba153b9ba9131569eda8c83247ccba81  guix-build-33111dca9e77/output/arm64-apple-darwin/bitcoin-33111dca9e77-arm64-apple-darwin-unsigned.dmg
  a77772190890a447859e24e1aad6997a9d539d99694b482f70ef9183815b5f39  guix-build-33111dca9e77/output/arm64-apple-darwin/bitcoin-33111dca9e77-arm64-apple-darwin-unsigned.tar.gz
  55101027a3a71ac92069d617704629292efa6005ce26df93df79c30dd2b39702  guix-build-33111dca9e77/output/arm64-apple-darwin/bitcoin-33111dca9e77-arm64-apple-darwin.tar.gz
  2bd82ebd304712123ead459f0fa07871d12bb8f83713f048115034e5df42f39b  guix-build-33111dca9e77/output/dist-archive/bitcoin-33111dca9e77.tar.gz
  57f3f4878d5e8c7e574c649872f91ea45242f3e3a3d53fdc4d6db4485f152490  guix-build-33111dca9e77/output/powerpc64-linux-gnu/SHA256SUMS.part
  194b0fce73d94836e911cc24a5fae65e78d62e33e92e3bb81b6fc27f37eae347  guix-build-33111dca9e77/output/powerpc64-linux-gnu/bitcoin-33111dca9e77-powerpc64-linux-gnu-debug.tar.gz
  a9962e0b9c6052bf09ad8aeec1464bd0dad09fac9691f4e9f5eebee5cd2ded4d  guix-build-33111dca9e77/output/powerpc64-linux-gnu/bitcoin-33111dca9e77-powerpc64-linux-gnu.tar.gz
  4b56793cf80eb626a3a7196d4b1fb611b6b40bc8652db13eab51acab920cd6af  guix-build-33111dca9e77/output/powerpc64le-linux-gnu/SHA256SUMS.part
  67679f4f89eb6d5a5823216b72aaf92f8bad4b1e7c18f42b7503ccd4c7cea2f1  guix-build-33111dca9e77/output/powerpc64le-linux-gnu/bitcoin-33111dca9e77-powerpc64le-linux-gnu-debug.tar.gz
  3706c94162f450351b2819c7b2873e49f47b03a2ac94d85a9f077eaeb3196f02  guix-build-33111dca9e77/output/powerpc64le-linux-gnu/bitcoin-33111dca9e77-powerpc64le-linux-gnu.tar.gz
  2b51e3f33281fe065b8949ddf15895dc881cfe2a9992919975111c7d62c81968  guix-build-33111dca9e77/output/riscv64-linux-gnu/SHA256SUMS.part
  f4c3e0cdb08cbe75b9af5ad6e0a17fcf627ec95b4a70b3af69bb80b0248e1afd  guix-build-33111dca9e77/output/riscv64-linux-gnu/bitcoin-33111dca9e77-riscv64-linux-gnu-debug.tar.gz
  3f7169a7bee1ababb558de75766a2077d83acf2501d6f2e4897ceec520637a51  guix-build-33111dca9e77/output/riscv64-linux-gnu/bitcoin-33111dca9e77-riscv64-linux-gnu.tar.gz
  44fdf1930e4b13dc61c513c2ae541aa77cdc6dffc8c601d401364a90d7dfe976  guix-build-33111dca9e77/output/x86_64-apple-darwin/SHA256SUMS.part
  063aed3472e07356cd4835b6ba5922d41c4069e02ca6ffc7d18e23a12210b733  guix-build-33111dca9e77/output/x86_64-apple-darwin/bitcoin-33111dca9e77-x86_64-apple-darwin-unsigned.dmg
  a49873ab51199b54ce15d93ff42464aa6f46586f9384f54034e7842031c94a43  guix-build-33111dca9e77/output/x86_64-apple-darwin/bitcoin-33111dca9e77-x86_64-apple-darwin-unsigned.tar.gz
  c1565b606198b21f509b637b2ba14366ac63eb946f3390f288cfb1951bcdecac  guix-build-33111dca9e77/output/x86_64-apple-darwin/bitcoin-33111dca9e77-x86_64-apple-darwin.tar.gz
  994ad271ac404c96179afe483f7c299d9391220c9d1017a3bdfb2598ac00d8da  guix-build-33111dca9e77/output/x86_64-linux-gnu/SHA256SUMS.part
  1cf9a1049eaae654966fae2010bc4bb13a02130295c4a75a7db092e0d7069594  guix-build-33111dca9e77/output/x86_64-linux-gnu/bitcoin-33111dca9e77-x86_64-linux-gnu-debug.tar.gz
  39ace190cd64ac43c18741e9791b3971c3ad9e586a80ba537ffe9792b6252d72  guix-build-33111dca9e77/output/x86_64-linux-gnu/bitcoin-33111dca9e77-x86_64-linux-gnu.tar.gz
  70edc42345f9cb965723d099f907082327cabb649c9df15d3750a64433264a26  guix-build-33111dca9e77/output/x86_64-w64-mingw32/SHA256SUMS.part
  9b36f66a4fd2c4cd3afdec912bbf7c67c2c79d04498b3e52d27cae3d9c9ce0a1  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64-debug.zip
  6aa917a5ae2e37a54373a59c3cfb057f0927c06ed6dc5b144709ca56d8ecca75  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64-setup-unsigned.exe
  36f9a408bcb5256e8fe16a90b57c0498887f33fc4cb822c8de68f01ecc2d2d21  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64-unsigned.tar.gz
  2b1b5be8722021026ea48ba432acaa43188c737a2bebc3c64b4329bfe13f2f38  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64.zip
  ```

  Guix builds on `arm64`:
  ```
  7fa526befacec264600bcd19714540f616a2487126f66be4da87d9a7acdd13a1  guix-build-33111dca9e77/output/aarch64-linux-gnu/SHA256SUMS.part
  222e6e32db9dcde12a6ee52ee3bdbc54d7373d62972e3e2894b857ca5873c929  guix-build-33111dca9e77/output/aarch64-linux-gnu/bitcoin-33111dca9e77-aarch64-linux-gnu-debug.tar.gz
  feee26c4e067f644a9cacc739fd979c1625cbff7d2eaa8b3edc5a8d1c4626349  guix-build-33111dca9e77/output/aarch64-linux-gnu/bitcoin-33111dca9e77-aarch64-linux-gnu.tar.gz
  78058bc77f64522041921eb8c8f12739cba5d6490bbc5b8c98c88b8bbbd9a100  guix-build-33111dca9e77/output/arm-linux-gnueabihf/SHA256SUMS.part
  2c1e58c1efb51a65641ee9050aed983b360a7891f32fb02a5dea8003b71d2253  guix-build-33111dca9e77/output/arm-linux-gnueabihf/bitcoin-33111dca9e77-arm-linux-gnueabihf-debug.tar.gz
  969964dfaaa1ca19884ab738cb1bc74c7b930bdb3e30fdedaf1f9f2a547334ac  guix-build-33111dca9e77/output/arm-linux-gnueabihf/bitcoin-33111dca9e77-arm-linux-gnueabihf.tar.gz
  7237e351b399d8a04bbc99e1a8fdabd39459ad4baf37bd96679fb9c4bca71390  guix-build-33111dca9e77/output/arm64-apple-darwin/SHA256SUMS.part
  2bacf53c722be4146ff4113de0361f72ba153b9ba9131569eda8c83247ccba81  guix-build-33111dca9e77/output/arm64-apple-darwin/bitcoin-33111dca9e77-arm64-apple-darwin-unsigned.dmg
  a77772190890a447859e24e1aad6997a9d539d99694b482f70ef9183815b5f39  guix-build-33111dca9e77/output/arm64-apple-darwin/bitcoin-33111dca9e77-arm64-apple-darwin-unsigned.tar.gz
  55101027a3a71ac92069d617704629292efa6005ce26df93df79c30dd2b39702  guix-build-33111dca9e77/output/arm64-apple-darwin/bitcoin-33111dca9e77-arm64-apple-darwin.tar.gz
  2bd82ebd304712123ead459f0fa07871d12bb8f83713f048115034e5df42f39b  guix-build-33111dca9e77/output/dist-archive/bitcoin-33111dca9e77.tar.gz
  57f3f4878d5e8c7e574c649872f91ea45242f3e3a3d53fdc4d6db4485f152490  guix-build-33111dca9e77/output/powerpc64-linux-gnu/SHA256SUMS.part
  194b0fce73d94836e911cc24a5fae65e78d62e33e92e3bb81b6fc27f37eae347  guix-build-33111dca9e77/output/powerpc64-linux-gnu/bitcoin-33111dca9e77-powerpc64-linux-gnu-debug.tar.gz
  a9962e0b9c6052bf09ad8aeec1464bd0dad09fac9691f4e9f5eebee5cd2ded4d  guix-build-33111dca9e77/output/powerpc64-linux-gnu/bitcoin-33111dca9e77-powerpc64-linux-gnu.tar.gz
  4b56793cf80eb626a3a7196d4b1fb611b6b40bc8652db13eab51acab920cd6af  guix-build-33111dca9e77/output/powerpc64le-linux-gnu/SHA256SUMS.part
  67679f4f89eb6d5a5823216b72aaf92f8bad4b1e7c18f42b7503ccd4c7cea2f1  guix-build-33111dca9e77/output/powerpc64le-linux-gnu/bitcoin-33111dca9e77-powerpc64le-linux-gnu-debug.tar.gz
  3706c94162f450351b2819c7b2873e49f47b03a2ac94d85a9f077eaeb3196f02  guix-build-33111dca9e77/output/powerpc64le-linux-gnu/bitcoin-33111dca9e77-powerpc64le-linux-gnu.tar.gz
  2b51e3f33281fe065b8949ddf15895dc881cfe2a9992919975111c7d62c81968  guix-build-33111dca9e77/output/riscv64-linux-gnu/SHA256SUMS.part
  f4c3e0cdb08cbe75b9af5ad6e0a17fcf627ec95b4a70b3af69bb80b0248e1afd  guix-build-33111dca9e77/output/riscv64-linux-gnu/bitcoin-33111dca9e77-riscv64-linux-gnu-debug.tar.gz
  3f7169a7bee1ababb558de75766a2077d83acf2501d6f2e4897ceec520637a51  guix-build-33111dca9e77/output/riscv64-linux-gnu/bitcoin-33111dca9e77-riscv64-linux-gnu.tar.gz
  44fdf1930e4b13dc61c513c2ae541aa77cdc6dffc8c601d401364a90d7dfe976  guix-build-33111dca9e77/output/x86_64-apple-darwin/SHA256SUMS.part
  063aed3472e07356cd4835b6ba5922d41c4069e02ca6ffc7d18e23a12210b733  guix-build-33111dca9e77/output/x86_64-apple-darwin/bitcoin-33111dca9e77-x86_64-apple-darwin-unsigned.dmg
  a49873ab51199b54ce15d93ff42464aa6f46586f9384f54034e7842031c94a43  guix-build-33111dca9e77/output/x86_64-apple-darwin/bitcoin-33111dca9e77-x86_64-apple-darwin-unsigned.tar.gz
  c1565b606198b21f509b637b2ba14366ac63eb946f3390f288cfb1951bcdecac  guix-build-33111dca9e77/output/x86_64-apple-darwin/bitcoin-33111dca9e77-x86_64-apple-darwin.tar.gz
  994ad271ac404c96179afe483f7c299d9391220c9d1017a3bdfb2598ac00d8da  guix-build-33111dca9e77/output/x86_64-linux-gnu/SHA256SUMS.part
  1cf9a1049eaae654966fae2010bc4bb13a02130295c4a75a7db092e0d7069594  guix-build-33111dca9e77/output/x86_64-linux-gnu/bitcoin-33111dca9e77-x86_64-linux-gnu-debug.tar.gz
  39ace190cd64ac43c18741e9791b3971c3ad9e586a80ba537ffe9792b6252d72  guix-build-33111dca9e77/output/x86_64-linux-gnu/bitcoin-33111dca9e77-x86_64-linux-gnu.tar.gz
  70edc42345f9cb965723d099f907082327cabb649c9df15d3750a64433264a26  guix-build-33111dca9e77/output/x86_64-w64-mingw32/SHA256SUMS.part
  9b36f66a4fd2c4cd3afdec912bbf7c67c2c79d04498b3e52d27cae3d9c9ce0a1  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64-debug.zip
  6aa917a5ae2e37a54373a59c3cfb057f0927c06ed6dc5b144709ca56d8ecca75  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64-setup-unsigned.exe
  36f9a408bcb5256e8fe16a90b57c0498887f33fc4cb822c8de68f01ecc2d2d21  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64-unsigned.tar.gz
  2b1b5be8722021026ea48ba432acaa43188c737a2bebc3c64b4329bfe13f2f38  guix-build-33111dca9e77/output/x86_64-w64-mingw32/bitcoin-33111dca9e77-win64.zip
  ```

  [![Windows](https://img.shields.io/badge/OS-Windows-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/win64/insecure_win_gui.zip?branch=pull/175)
  [![Intel macOS](https://img.shields.io/badge/OS-Intel%20macOS-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/macos/insecure_mac_gui.zip?branch=pull/175)
  [![Apple Silicon macOS](https://img.shields.io/badge/OS-Apple%20Silicon%20macOS-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/macos_arm64/insecure_mac_arm64_gui.zip?branch=pull/175)
  [![ARM64 Android](https://img.shields.io/badge/OS-Android-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/android/insecure_android_apk.zip?branch=pull/175)

ACKs for top commit:
  jarolrod:
    ACK 33111dc

Tree-SHA512: 9de24dfec8d3916ae9c241c860bd87ef89f21e43419a3b0c7151c5e515e22b194dca2acdb865002959bde5f780bb54e3731f3398127e97f65fb8048fb6c181ff
@bitcoin bitcoin locked and limited conversation to collaborators Jul 19, 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.

6 participants