-
Notifications
You must be signed in to change notification settings - Fork 47
/
todo.txt
59 lines (41 loc) · 4.77 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
1. https://github.com/bitcoin/bitcoin/commit/cc3b5289ef648dca30469ee4afa615a1ed5b4e04
gui: remove OpenSSL PRNG seeding (Windows, Qt only)
2. qt/komodo.cpp:379:14: warning: address of 'this->threadGroup' will always evaluate to 'true' [-Wpointer-bool-conversion]
3. Fix CCheckQueue IsIdle (potential) race condition and remove dangerous constructors.
https://github.com/bitcoin/bitcoin/commit/e2073424fd5a185781750347fbfbb0c108ef66fd
[Refactor] Remove unused fQuit var from checkqueue.h
https://github.com/bitcoin/bitcoin/commit/30ded3e3d888f75b6fa8b2e55a3883f799e00775
4. Win64 cross-compile from Arch-Linux:
sudo pacman -Syy
sudo pacman -Sy wget curl git base-devel pkg-config m4 python
sudo pacman -Sy mingw-w64
sudo ln -s /usr/bin/x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix
sudo ln -s /usr/bin/x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix
cd KomodoOcean/
make -C ${PWD}/depends V=1 HOST=x86_64-w64-mingw32 -j$(nproc --all)
./autogen.sh
CXXFLAGS="-g0 -O2" CPPFLAGS="-DCURL_STATICLIB" \
CONFIG_SITE="$PWD/depends/x86_64-w64-mingw32/share/config.site" ./configure --disable-tests --disable-bench --with-gui=no --without-miniupnpc --disable-bip70
### Edit src/cc/Makefile_custom and add -DWIN32 to CFLAGS_WIN
cd src/cc && HOST=x86_64-w64-mingw32 ./makecustom && cd ../..
make V=1 -j$(nproc --all)
Fail with this:
/usr/lib/gcc/x86_64-w64-mingw32/11.1.0/../../../../x86_64-w64-mingw32/bin/ld: libbitcoin_server.a(libbitcoin_server_a-asyncrpcoperation.o):asyncrpcoperation.cpp:(.text+0x105): undefined reference to `BCryptCloseAlgorithmProvider'
/usr/lib/gcc/x86_64-w64-mingw32/11.1.0/../../../../x86_64-w64-mingw32/bin/ld: libbitcoin_server.a(libbitcoin_server_a-asyncrpcoperation.o):asyncrpcoperation.cpp:(.text+0x8fc): undefined reference to `BCryptGenRandom'
/usr/lib/gcc/x86_64-w64-mingw32/11.1.0/../../../../x86_64-w64-mingw32/bin/ld: libbitcoin_server.a(libbitcoin_server_a-asyncrpcoperation.o):asyncrpcoperation.cpp:(.text$_ZN5boost5uuids6detail20random_provider_baseC2Ev[_ZN5boost5uuids6detail20random_provider_baseC2Ev]+0x31): undefined reference to `BCryptOpenAlgorithmProvider'
Solution:
cd src
/bin/sh ../libtool --tag=CXX --mode=link /home/decker/KomodoOcean/depends/x86_64-w64-mingw32/share/../native/bin/ccache x86_64-w64-mingw32-g++-posix -std=c++11 -pipe -std=c++11 -O2 -g0 -O2 -Wformat -Wformat-security -Wstack-protector -fstack-protector-all -fopenmp -fwrapv -fno-strict-aliasing -Wno-builtin-declaration-mismatch -all-static -L/home/decker/KomodoOcean/depends/x86_64-w64-mingw32/share/../lib -Wl,--dynamicbase -Wl,--nxcompat -o komodod.exe komodod-bitcoind.o bitcoind-res.o libbitcoin_server.a libbitcoin_common.a univalue/libunivalue.la libbitcoin_util.a crypto/libbitcoin_crypto.a crypto/libbitcoin_crypto_sse41.a crypto/libbitcoin_crypto_avx2.a crypto/libbitcoin_crypto_shani.a crypto/libverus_crypto.a crypto/libverus_portable_crypto.a libzcash.a snark/libsnark.a leveldb/libleveldb.a leveldb/libleveldb_sse42.a leveldb/libmemenv.a secp256k1/libsecp256k1.la cryptoconditions/libcryptoconditions_core.la -lcurl libbitcoin_zmq.a -lzmq libbitcoin_wallet.a -L/home/decker/KomodoOcean/depends/x86_64-w64-mingw32/share/../lib -lboost_system -lboost_filesystem -lboost_program_options -lboost_thread -lboost_chrono -ldb_cxx-6.2 -lssl -lcrypto -levent libzcash.a crypto/libbitcoin_crypto.a crypto/libbitcoin_crypto_sse41.a crypto/libbitcoin_crypto_avx2.a crypto/libbitcoin_crypto_shani.a crypto/libverus_crypto.a crypto/libverus_portable_crypto.a snark/libsnark.a -lgmp -lgmpxx -lboost_system -lcrypto -lsodium -lrustzcash secp256k1/libsecp256k1.la -lssp -lcrypt32 -liphlpapi -lshlwapi -lmswsock -lws2_32 -ladvapi32 -lrpcrt4 -luuid -loleaut32 -lole32 -lcomctl32 -lshell32 -lwinmm -lwinspool -lcomdlg32 -lgdi32 -luser32 -lkernel32 -lmingwthrd -lbcrypt
5. https://github.com/zcash/zcash/pull/5009 - Bitcoin 0.14 locking PRs #5009
6. https://github.com/zcash/zcash/pull/4060 - Remove libsnark (!)
7. https://github.com/zcash/zcash/pull/5012 - Bitcoin 0.15 locking PRs #5012 (included 3)
8. https://github.com/zcash/zcash/pull/5017 - Bitcoin 0.16 locking PRs #5017
9. Interface of void hashFingerprintContents (src/cryptoconditions/src/utils.c):
1. void hashFingerprintContents(asn_TYPE_descriptor_t *asnType, void *fp, uint8_t *out)
2. unsigned char *hashFingerprintContents(asn_TYPE_descriptor_t *asnType, void *fp)
Make sure that we have transition to (1) everywhere.
10. MacOS Themes (Light, Dark) related:
- https://github.com/bitcoin-core/gui/pull/275 - Support runtime appearance adjustment on macOS #275
- Don't forget to remove NSRequiresAquaSystemAppearance from share/qt/Info.plist.in , as shown here
https://github.com/bitcoin-core/gui/pull/154 ,
https://developer.apple.com/documentation/appkit/nsappearancecustomization/choosing_a_specific_appearance_for_your_macos_app