├── Makefile.am ├── Makefile.in ├── README.md ├── aclocal.m4 ├── addnodes.txt ├── autogen.sh ├── build-aux ├── compile ├── config.guess ├── config.sub ├── depcomp ├── install-sh ├── ltmain.sh ├── m4 │ ├── ax_boost_base.m4 │ ├── ax_boost_chrono.m4 │ ├── ax_boost_filesystem.m4 │ ├── ax_boost_program_options.m4 │ ├── ax_boost_system.m4 │ ├── ax_boost_thread.m4 │ ├── ax_boost_unit_test_framework.m4 │ ├── ax_check_compile_flag.m4 │ ├── ax_check_link_flag.m4 │ ├── ax_check_preproc_flag.m4 │ ├── ax_cxx_compile_stdcxx.m4 │ ├── ax_gcc_func_attribute.m4 │ ├── ax_pthread.m4 │ ├── bitcoin_find_bdb48.m4 │ ├── bitcoin_qt.m4 │ ├── bitcoin_subdir_to_include.m4 │ ├── libtool.m4 │ ├── ltoptions.m4 │ ├── ltsugar.m4 │ ├── ltversion.m4 │ └── lt~obsolete.m4 ├── missing └── test-driver ├── configure ├── configure.ac ├── contrib ├── devtools │ └── split-debug.sh.in └── macdeploy │ ├── background.svg │ ├── custom_dsstore.py │ ├── detached-sig-apply.sh │ ├── detached-sig-create.sh │ ├── fancy.plist │ └── macdeployqtplus ├── depends ├── Makefile ├── README.md ├── builders │ ├── darwin.mk │ ├── default.mk │ └── linux.mk ├── config.guess ├── config.site.in ├── config.sub ├── description.md ├── funcs.mk ├── hosts │ ├── darwin.mk │ ├── default.mk │ ├── linux.mk │ └── mingw32.mk ├── packages.md ├── packages │ ├── bdb.mk │ ├── boost.mk │ ├── dbus.mk │ ├── expat.mk │ ├── fontconfig.mk │ ├── freetype.mk │ ├── gmp.mk │ ├── libX11.mk │ ├── libXau.mk │ ├── libXext.mk │ ├── libevent.mk │ ├── libxcb.mk │ ├── miniupnpc.mk │ ├── native_biplist.mk │ ├── native_cctools.mk │ ├── native_cdrkit.mk │ ├── native_ds_store.mk │ ├── native_libdmg-hfsplus.mk │ ├── native_mac_alias.mk │ ├── native_protobuf.mk │ ├── openssl.mk │ ├── packages.mk │ ├── protobuf.mk │ ├── qrencode.mk │ ├── qt.mk │ ├── xcb_proto.mk │ ├── xextproto.mk │ ├── xproto.mk │ ├── xtrans.mk │ ├── zeromq.mk │ └── zlib.mk └── patches │ ├── native_cdrkit │ └── cdrkit-deterministic.patch │ ├── qt │ ├── fix_configure_mac.patch │ ├── fix_no_printer.patch │ ├── fix_qt_pkgconfig.patch │ ├── fix_rcc_determinism.patch │ ├── fix_riscv64_arch.patch │ ├── mac-qmake.conf │ └── xkb-default.patch │ └── zeromq │ ├── 0001-fix-build-with-older-mingw64.patch │ └── 0002-disable-pthread_set_name_np.patch ├── doc ├── README.md ├── README_osx.md ├── README_windows.txt ├── REST-interface.md ├── assets-attribution.md ├── bootstrap.md ├── build-osx.md ├── build-unix.md ├── developer-notes.md ├── dnsseed-policy.md ├── files.md ├── gitian-building.md ├── guide-startmany.md ├── init.md ├── masternode-budget.md ├── masternode_conf.md ├── multiwallet-qt.md ├── release-notes.md ├── release-process.md ├── swifttx.md ├── tor.md ├── translation_process.md ├── unit-tests.md └── zmq.md ├── pkg.m4 ├── proxynode-mn-install-v2.sh ├── proxynode-mn-update-v2.0-v2.1.sh ├── qa ├── pull-tester │ ├── rpc-tests.sh │ ├── run-bitcoin-cli │ ├── run-bitcoind-for-test.sh.in │ └── tests-config.sh.in └── rpc-tests │ ├── .gitignore │ ├── README.md │ ├── bipdersig.py │ ├── conflictedbalance.sh │ ├── forknotify.py │ ├── getblocktemplate_longpoll.py │ ├── getblocktemplate_proposals.py │ ├── getchaintips.py │ ├── httpbasics.py │ ├── invalidateblock.py │ ├── keypool.py │ ├── listtransactions.py │ ├── mempool_coinbase_spends.py │ ├── mempool_resurrect_test.py │ ├── mempool_spendcoinbase.py │ ├── netutil.py │ ├── proxy_test.py │ ├── python-bitcoinrpc │ ├── bitcoinrpc │ │ ├── .gitignore │ │ ├── __init__.py │ │ └── authproxy.py │ └── setup.py │ ├── receivedby.py │ ├── reindex.py │ ├── rest.py │ ├── rpcbind_test.py │ ├── send.sh │ ├── smartfees.py │ ├── socks5.py │ ├── test_framework.py │ ├── txn_doublespend.py │ ├── util.py │ ├── util.sh │ ├── wallet.py │ ├── walletbackup.py │ ├── zapwallettxes.sh │ └── zmq_test.py ├── share ├── genbuild.sh ├── pixmaps │ ├── bitcoin11.ico │ ├── nsis-header.bmp │ └── nsis-wizard.bmp ├── qt │ └── Info.plist.in └── setup.nsi.in └── src ├── Makefile.am ├── Makefile.in ├── Makefile.qt.include ├── Makefile.qttest.include ├── Makefile.test.include ├── activemasternode.cpp ├── activemasternode.h ├── addrman.cpp ├── addrman.h ├── alert.cpp ├── alert.h ├── allocators.cpp ├── allocators.h ├── amount.cpp ├── amount.h ├── arith_uint256.h ├── base58.cpp ├── base58.h ├── bignum.h ├── bip38.cpp ├── bip38.h ├── bloom.cpp ├── bloom.h ├── chain.cpp ├── chain.h ├── chainparams.cpp ├── chainparams.h ├── chainparamsbase.cpp ├── chainparamsbase.h ├── chainparamsseeds.h ├── checkpoints.cpp ├── checkpoints.h ├── checkqueue.h ├── clientversion.cpp ├── clientversion.h ├── coincontrol.h ├── coins.cpp ├── coins.h ├── compat.h ├── compat ├── glibc_compat.cpp ├── glibc_sanity.cpp ├── glibcxx_compat.cpp ├── glibcxx_sanity.cpp ├── sanity.h └── strnlen.cpp ├── compressor.cpp ├── compressor.h ├── config └── proxynode-config.h ├── core_io.h ├── core_read.cpp ├── core_write.cpp ├── crypter.cpp ├── crypter.h ├── crypto ├── aes_helper.c ├── blake.c ├── bmw.c ├── common.h ├── cubehash.c ├── echo.c ├── groestl.c ├── hmac_sha256.cpp ├── hmac_sha256.h ├── hmac_sha512.cpp ├── hmac_sha512.h ├── jh.c ├── keccak.c ├── luffa.c ├── rfc6979_hmac_sha256.cpp ├── rfc6979_hmac_sha256.h ├── ripemd160.cpp ├── ripemd160.h ├── scrypt.cpp ├── scrypt.h ├── sha1.cpp ├── sha1.h ├── sha256.cpp ├── sha256.h ├── sha512.cpp ├── sha512.h ├── shavite.c ├── simd.c ├── skein.c ├── sph_blake.h ├── sph_bmw.h ├── sph_cubehash.h ├── sph_echo.h ├── sph_groestl.h ├── sph_jh.h ├── sph_keccak.h ├── sph_luffa.h ├── sph_shavite.h ├── sph_simd.h ├── sph_skein.h └── sph_types.h ├── db.cpp ├── db.h ├── eccryptoverify.cpp ├── eccryptoverify.h ├── ecwrapper.cpp ├── ecwrapper.h ├── hash.cpp ├── hash.h ├── init.cpp ├── init.h ├── kernel.cpp ├── kernel.h ├── key.cpp ├── key.h ├── keystore.cpp ├── keystore.h ├── leveldb ├── .gitignore ├── AUTHORS ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── NEWS ├── README ├── README.md ├── TODO ├── WINDOWS.md ├── build_detect_platform ├── db │ ├── autocompact_test.cc │ ├── builder.cc │ ├── builder.h │ ├── c.cc │ ├── c_test.c │ ├── corruption_test.cc │ ├── db_bench.cc │ ├── db_impl.cc │ ├── db_impl.h │ ├── db_iter.cc │ ├── db_iter.h │ ├── db_test.cc │ ├── dbformat.cc │ ├── dbformat.h │ ├── dbformat_test.cc │ ├── dumpfile.cc │ ├── filename.cc │ ├── filename.h │ ├── filename_test.cc │ ├── leveldb_main.cc │ ├── log_format.h │ ├── log_reader.cc │ ├── log_reader.h │ ├── log_test.cc │ ├── log_writer.cc │ ├── log_writer.h │ ├── memtable.cc │ ├── memtable.h │ ├── repair.cc │ ├── skiplist.h │ ├── skiplist_test.cc │ ├── snapshot.h │ ├── table_cache.cc │ ├── table_cache.h │ ├── version_edit.cc │ ├── version_edit.h │ ├── version_edit_test.cc │ ├── version_set.cc │ ├── version_set.h │ ├── version_set_test.cc │ ├── write_batch.cc │ ├── write_batch_internal.h │ └── write_batch_test.cc ├── doc │ ├── bench │ │ ├── db_bench_sqlite3.cc │ │ └── db_bench_tree_db.cc │ ├── benchmark.html │ ├── doc.css │ ├── impl.html │ ├── index.html │ ├── log_format.txt │ └── table_format.txt ├── helpers │ └── memenv │ │ ├── memenv.cc │ │ ├── memenv.h │ │ └── memenv_test.cc ├── include │ └── leveldb │ │ ├── c.h │ │ ├── cache.h │ │ ├── comparator.h │ │ ├── db.h │ │ ├── dumpfile.h │ │ ├── env.h │ │ ├── filter_policy.h │ │ ├── iterator.h │ │ ├── options.h │ │ ├── slice.h │ │ ├── status.h │ │ ├── table.h │ │ ├── table_builder.h │ │ └── write_batch.h ├── issues │ ├── issue178_test.cc │ └── issue200_test.cc ├── port │ ├── README │ ├── atomic_pointer.h │ ├── port.h │ ├── port_example.h │ ├── port_posix.cc │ ├── port_posix.h │ ├── port_win.cc │ ├── port_win.h │ ├── thread_annotations.h │ └── win │ │ └── stdint.h ├── table │ ├── block.cc │ ├── block.h │ ├── block_builder.cc │ ├── block_builder.h │ ├── filter_block.cc │ ├── filter_block.h │ ├── filter_block_test.cc │ ├── format.cc │ ├── format.h │ ├── iterator.cc │ ├── iterator_wrapper.h │ ├── merger.cc │ ├── merger.h │ ├── table.cc │ ├── table_builder.cc │ ├── table_test.cc │ ├── two_level_iterator.cc │ └── two_level_iterator.h └── util │ ├── arena.cc │ ├── arena.h │ ├── arena_test.cc │ ├── bloom.cc │ ├── bloom_test.cc │ ├── cache.cc │ ├── cache_test.cc │ ├── coding.cc │ ├── coding.h │ ├── coding_test.cc │ ├── comparator.cc │ ├── crc32c.cc │ ├── crc32c.h │ ├── crc32c_test.cc │ ├── env.cc │ ├── env_posix.cc │ ├── env_test.cc │ ├── env_win.cc │ ├── filter_policy.cc │ ├── hash.cc │ ├── hash.h │ ├── hash_test.cc │ ├── histogram.cc │ ├── histogram.h │ ├── logging.cc │ ├── logging.h │ ├── mutexlock.h │ ├── options.cc │ ├── posix_logger.h │ ├── random.h │ ├── status.cc │ ├── testharness.cc │ ├── testharness.h │ ├── testutil.cc │ └── testutil.h ├── leveldbwrapper.cpp ├── leveldbwrapper.h ├── limitedmap.h ├── main.cpp ├── main.h ├── masternode-budget.cpp ├── masternode-budget.h ├── masternode-helpers.cpp ├── masternode-helpers.h ├── masternode-payments.cpp ├── masternode-payments.h ├── masternode-sync.cpp ├── masternode-sync.h ├── masternode.cpp ├── masternode.h ├── masternodeconfig.cpp ├── masternodeconfig.h ├── masternodeman.cpp ├── masternodeman.h ├── merkleblock.cpp ├── merkleblock.h ├── miner.cpp ├── miner.h ├── mruset.h ├── net.cpp ├── net.h ├── netbase.cpp ├── netbase.h ├── noui.cpp ├── noui.h ├── pow.cpp ├── pow.h ├── primitives ├── block.cpp ├── block.h ├── transaction.cpp └── transaction.h ├── protocol.cpp ├── protocol.h ├── proxynode-cli-res.rc ├── proxynode-cli.cpp ├── proxynode-tx.cpp ├── proxynoded-res.rc ├── proxynoded.cpp ├── prx-cli-res.rc ├── prx-cli.cpp ├── prx-tx.cpp ├── prxd-res.rc ├── prxd.cpp ├── pubkey.cpp ├── pubkey.h ├── qt ├── addressbookpage.cpp ├── addressbookpage.h ├── addresstablemodel.cpp ├── addresstablemodel.h ├── askpassphrasedialog.cpp ├── askpassphrasedialog.h ├── bip38tooldialog.cpp ├── bip38tooldialog.h ├── bitcoinaddressvalidator.cpp ├── bitcoinaddressvalidator.h ├── bitcoinamountfield.cpp ├── bitcoinamountfield.h ├── bitcoingui.cpp ├── bitcoingui.h ├── bitcoinunits.cpp ├── bitcoinunits.h ├── blockexplorer.cpp ├── blockexplorer.h ├── clientmodel.cpp ├── clientmodel.h ├── coincontroldialog.cpp ├── coincontroldialog.h ├── coincontroltreewidget.cpp ├── coincontroltreewidget.h ├── csvmodelwriter.cpp ├── csvmodelwriter.h ├── editaddressdialog.cpp ├── editaddressdialog.h ├── forms │ ├── addressbookpage.ui │ ├── askpassphrasedialog.ui │ ├── bip38tooldialog.ui │ ├── blockexplorer.ui │ ├── coincontroldialog.ui │ ├── editaddressdialog.ui │ ├── helpmessagedialog.ui │ ├── intro.ui │ ├── masternodelist.ui │ ├── multisenddialog.ui │ ├── multisigdialog.ui │ ├── openuridialog.ui │ ├── optionsdialog.ui │ ├── overviewpage.ui │ ├── receivecoinsdialog.ui │ ├── receiverequestdialog.ui │ ├── rpcconsole.ui │ ├── sendcoinsdialog.ui │ ├── sendcoinsentry.ui │ ├── signverifymessagedialog.ui │ └── transactiondescdialog.ui ├── guiconstants.h ├── guiutil.cpp ├── guiutil.h ├── intro.cpp ├── intro.h ├── locale │ ├── proxynode_bg.ts │ ├── proxynode_ca.ts │ ├── proxynode_cs.ts │ ├── proxynode_da.ts │ ├── proxynode_de.ts │ ├── proxynode_en.ts │ ├── proxynode_en_US.ts │ ├── proxynode_es.ts │ ├── proxynode_fi.ts │ ├── proxynode_fr_FR.ts │ ├── proxynode_it.ts │ ├── proxynode_ja.ts │ ├── proxynode_ko_KR.ts │ ├── proxynode_nl.ts │ ├── proxynode_pl.ts │ ├── proxynode_pt.ts │ ├── proxynode_pt_BR.ts │ ├── proxynode_ro_RO.ts │ ├── proxynode_ru.ts │ ├── proxynode_sk.ts │ ├── proxynode_sv.ts │ ├── proxynode_tr.ts │ ├── proxynode_uk.ts │ ├── proxynode_zh_CN.ts │ ├── proxynode_zh_TW.ts │ ├── prx_bg.ts │ ├── prx_ca.ts │ ├── prx_cs.ts │ ├── prx_da.ts │ ├── prx_de.ts │ ├── prx_en.ts │ ├── prx_en_US.ts │ ├── prx_es.ts │ ├── prx_fi.ts │ ├── prx_fr_FR.ts │ ├── prx_it.ts │ ├── prx_ja.ts │ ├── prx_ko_KR.ts │ ├── prx_nl.ts │ ├── prx_pl.ts │ ├── prx_pt.ts │ ├── prx_pt_BR.ts │ ├── prx_ro_RO.ts │ ├── prx_ru.ts │ ├── prx_sk.ts │ ├── prx_sv.ts │ ├── prx_tr.ts │ ├── prx_uk.ts │ ├── prx_zh_CN.ts │ └── prx_zh_TW.ts ├── macdockiconhandler.h ├── macdockiconhandler.mm ├── macnotificationhandler.h ├── macnotificationhandler.mm ├── masternodelist.cpp ├── masternodelist.h ├── multisenddialog.cpp ├── multisenddialog.h ├── multisigdialog.cpp ├── multisigdialog.h ├── networkstyle.cpp ├── networkstyle.h ├── notificator.cpp ├── notificator.h ├── openuridialog.cpp ├── openuridialog.h ├── optionsdialog.cpp ├── optionsdialog.h ├── optionsmodel.cpp ├── optionsmodel.h ├── overviewpage.cpp ├── overviewpage.h ├── paymentrequest.proto ├── paymentrequestplus.cpp ├── paymentrequestplus.h ├── paymentserver.cpp ├── paymentserver.h ├── peertablemodel.cpp ├── peertablemodel.h ├── platformstyle.cpp ├── platformstyle.h ├── proxynode.cpp ├── proxynode.qrc ├── proxynode_locale.qrc ├── prx.cpp ├── prx.qrc ├── prx_locale.qrc ├── qvalidatedlineedit.cpp ├── qvalidatedlineedit.h ├── qvaluecombobox.cpp ├── qvaluecombobox.h ├── receivecoinsdialog.cpp ├── receivecoinsdialog.h ├── receiverequestdialog.cpp ├── receiverequestdialog.h ├── recentrequeststablemodel.cpp ├── recentrequeststablemodel.h ├── res │ ├── css │ │ └── default.css │ ├── icons │ │ ├── add.png │ │ ├── address-book.png │ │ ├── bitcoin.png │ │ ├── bitcoin1.icns │ │ ├── bitcoin11.ico │ │ ├── bitcoin_testnet.ico │ │ ├── bitcoin_testnet.png │ │ ├── browse.png │ │ ├── clock1.png │ │ ├── clock2.png │ │ ├── clock3.png │ │ ├── clock4.png │ │ ├── clock5.png │ │ ├── configure.png │ │ ├── connect0_16.png │ │ ├── connect1_16.png │ │ ├── connect2_16.png │ │ ├── connect3_16.png │ │ ├── connect4_16.png │ │ ├── debugwindow.png │ │ ├── edit.png │ │ ├── editcopy.png │ │ ├── editpaste.png │ │ ├── explorer.png │ │ ├── export.png │ │ ├── eye.png │ │ ├── eye_minus.png │ │ ├── eye_plus.png │ │ ├── filesave.png │ │ ├── history.png │ │ ├── history_active.png │ │ ├── key.png │ │ ├── lock_closed.png │ │ ├── lock_open.png │ │ ├── masternodes.png │ │ ├── masternodes_active.png │ │ ├── overview.png │ │ ├── overview_active.png │ │ ├── qrcode.png │ │ ├── quit.png │ │ ├── receive.png │ │ ├── receive_active.png │ │ ├── remove.png │ │ ├── send.png │ │ ├── send_active.png │ │ ├── staking_active.png │ │ ├── staking_inactive.png │ │ ├── synced.png │ │ ├── transaction0.png │ │ ├── transaction2.png │ │ ├── transaction_conflicted.png │ │ ├── tx_inout.png │ │ ├── tx_input.png │ │ ├── tx_mined.png │ │ ├── tx_output.png │ │ ├── unit_mproxynode.png │ │ ├── unit_mprx.png │ │ ├── unit_proxynode.png │ │ ├── unit_prx.png │ │ ├── unit_tmproxynode.png │ │ ├── unit_tmprx.png │ │ ├── unit_tproxynode.png │ │ ├── unit_tprx.png │ │ ├── unit_tuproxynode.png │ │ ├── unit_tuprx.png │ │ ├── unit_uproxynode.png │ │ └── unit_uprx.png │ ├── images │ │ ├── about.png │ │ ├── downArrow_small.png │ │ ├── downArrow_small_dark.png │ │ ├── leftArrow_small_dark.png │ │ ├── proxynode_logo_horizontal.png │ │ ├── prx_logo_horizontal.png │ │ ├── qtreeview_selected.png │ │ ├── rightArrow_small_dark.png │ │ ├── splash.png │ │ ├── splash_testnet.png │ │ ├── upArrow_small.png │ │ ├── upArrow_small_dark.png │ │ └── walletFrame.png │ ├── movies │ │ ├── spinner-000.png │ │ ├── spinner-001.png │ │ ├── spinner-002.png │ │ ├── spinner-003.png │ │ ├── spinner-004.png │ │ ├── spinner-005.png │ │ ├── spinner-006.png │ │ ├── spinner-007.png │ │ ├── spinner-008.png │ │ ├── spinner-009.png │ │ ├── spinner-010.png │ │ ├── spinner-011.png │ │ ├── spinner-012.png │ │ ├── spinner-013.png │ │ ├── spinner-014.png │ │ ├── spinner-015.png │ │ ├── spinner-016.png │ │ ├── spinner-017.png │ │ ├── spinner-018.png │ │ ├── spinner-019.png │ │ ├── spinner-020.png │ │ ├── spinner-021.png │ │ ├── spinner-022.png │ │ ├── spinner-023.png │ │ ├── spinner-024.png │ │ ├── spinner-025.png │ │ ├── spinner-026.png │ │ ├── spinner-027.png │ │ ├── spinner-028.png │ │ ├── spinner-029.png │ │ ├── spinner-030.png │ │ ├── spinner-031.png │ │ ├── spinner-032.png │ │ ├── spinner-033.png │ │ └── spinner-034.png │ ├── proxynode-qt-res.rc │ └── prx-qt-res.rc ├── rpcconsole.cpp ├── rpcconsole.h ├── sendcoinsdialog.cpp ├── sendcoinsdialog.h ├── sendcoinsentry.cpp ├── sendcoinsentry.h ├── signverifymessagedialog.cpp ├── signverifymessagedialog.h ├── splashscreen.cpp ├── splashscreen.h ├── test │ ├── paymentrequestdata.h │ ├── paymentservertests.cpp │ ├── paymentservertests.h │ ├── test_main.cpp │ ├── uritests.cpp │ └── uritests.h ├── trafficgraphwidget.cpp ├── trafficgraphwidget.h ├── transactiondesc.cpp ├── transactiondesc.h ├── transactiondescdialog.cpp ├── transactiondescdialog.h ├── transactionfilterproxy.cpp ├── transactionfilterproxy.h ├── transactionrecord.cpp ├── transactionrecord.h ├── transactiontablemodel.cpp ├── transactiontablemodel.h ├── transactionview.cpp ├── transactionview.h ├── utilitydialog.cpp ├── utilitydialog.h ├── walletframe.cpp ├── walletframe.h ├── walletmodel.cpp ├── walletmodel.h ├── walletmodeltransaction.cpp ├── walletmodeltransaction.h ├── walletview.cpp ├── walletview.h ├── winshutdownmonitor.cpp └── winshutdownmonitor.h ├── random.cpp ├── random.h ├── rest.cpp ├── reverse_iterate.h ├── reverselock.h ├── rpcblockchain.cpp ├── rpcclient.cpp ├── rpcclient.h ├── rpcdump.cpp ├── rpcmasternode-budget.cpp ├── rpcmasternode.cpp ├── rpcmining.cpp ├── rpcmisc.cpp ├── rpcnet.cpp ├── rpcprotocol.cpp ├── rpcprotocol.h ├── rpcrawtransaction.cpp ├── rpcserver.cpp ├── rpcserver.h ├── rpcwallet.cpp ├── scheduler.cpp ├── scheduler.h ├── script ├── bitcoinconsensus.cpp ├── bitcoinconsensus.h ├── interpreter.cpp ├── interpreter.h ├── script.cpp ├── script.h ├── script_error.cpp ├── script_error.h ├── sigcache.cpp ├── sigcache.h ├── sign.cpp ├── sign.h ├── standard.cpp └── standard.h ├── secp256k1 ├── COPYING ├── Makefile.am ├── Makefile.in ├── TODO ├── aclocal.m4 ├── autogen.sh ├── build-aux │ ├── compile │ ├── config.guess │ ├── config.sub │ ├── depcomp │ ├── install-sh │ ├── ltmain.sh │ ├── m4 │ │ ├── libtool.m4 │ │ ├── ltoptions.m4 │ │ ├── ltsugar.m4 │ │ ├── ltversion.m4 │ │ └── lt~obsolete.m4 │ ├── missing │ └── test-driver ├── configure ├── configure.ac ├── include │ └── secp256k1.h ├── libsecp256k1.pc.in ├── nasm_lt.sh └── src │ ├── bench_inv.c │ ├── bench_sign.c │ ├── bench_verify.c │ ├── ecdsa.h │ ├── ecdsa_impl.h │ ├── eckey.h │ ├── eckey_impl.h │ ├── ecmult.h │ ├── ecmult_gen.h │ ├── ecmult_gen_impl.h │ ├── ecmult_impl.h │ ├── field.h │ ├── field_10x26.h │ ├── field_10x26_impl.h │ ├── field_5x52.h │ ├── field_5x52_asm.asm │ ├── field_5x52_asm_impl.h │ ├── field_5x52_impl.h │ ├── field_5x52_int128_impl.h │ ├── field_gmp.h │ ├── field_gmp_impl.h │ ├── field_impl.h │ ├── group.h │ ├── group_impl.h │ ├── java │ └── org_bitcoin_NativeSecp256k1.h │ ├── libsecp256k1-config.h.in │ ├── num.h │ ├── num_gmp.h │ ├── num_gmp_impl.h │ ├── num_impl.h │ ├── scalar.h │ ├── scalar_4x64.h │ ├── scalar_4x64_impl.h │ ├── scalar_8x32.h │ ├── scalar_8x32_impl.h │ ├── scalar_impl.h │ ├── secp256k1.c │ ├── testrand.h │ ├── testrand_impl.h │ ├── tests.c │ └── util.h ├── serialize.h ├── spork.cpp ├── spork.h ├── sporkdb.cpp ├── sporkdb.h ├── streams.h ├── swifttx.cpp ├── swifttx.h ├── sync.cpp ├── sync.h ├── test ├── Checkpoints_tests.cpp ├── DoS_tests.cpp ├── accounting_tests.cpp ├── allocator_tests.cpp ├── base32_tests.cpp ├── base58_tests.cpp ├── base64_tests.cpp ├── bctest.py ├── bitcoin-util-test.py ├── buildenv.py.in ├── checkblock_tests.cpp ├── coins_tests.cpp ├── compress_tests.cpp ├── crypto_tests.cpp ├── data │ ├── alertTests.raw │ ├── base58_encode_decode.json │ ├── base58_keys_invalid.json │ ├── base58_keys_valid.json │ ├── bitcoin-util-test.json │ ├── blanktx.hex │ ├── script_invalid.json │ ├── script_valid.json │ ├── sig_canonical.json │ ├── sig_noncanonical.json │ ├── sighash.json │ ├── tt-delin1-out.hex │ ├── tt-delout1-out.hex │ ├── tt-locktime317000-out.hex │ ├── tx394b54bb.hex │ ├── tx_invalid.json │ ├── tx_valid.json │ ├── txcreate1.hex │ ├── txcreate2.hex │ └── txcreatesign.hex ├── getarg_tests.cpp ├── hash_tests.cpp ├── key_tests.cpp ├── main_tests.cpp ├── mempool_tests.cpp ├── mruset_tests.cpp ├── multisig_tests.cpp ├── netbase_tests.cpp ├── pmt_tests.cpp ├── reverselock_tests.cpp ├── rpc_tests.cpp ├── rpc_wallet_tests.cpp ├── sanity_tests.cpp ├── scheduler_tests.cpp ├── script_P2SH_tests.cpp ├── script_tests.cpp ├── scriptnum_tests.cpp ├── serialize_tests.cpp ├── sighash_tests.cpp ├── sigopcount_tests.cpp ├── skiplist_tests.cpp ├── test_proxynode.cpp ├── test_prx.cpp ├── timedata_tests.cpp ├── torcontrol_tests.cpp ├── transaction_tests.cpp ├── uint256_tests.cpp ├── univalue_tests.cpp ├── util_tests.cpp └── wallet_tests.cpp ├── threadsafety.h ├── timedata.cpp ├── timedata.h ├── tinyformat.h ├── torcontrol.cpp ├── torcontrol.h ├── txdb.cpp ├── txdb.h ├── txmempool.cpp ├── txmempool.h ├── ui_interface.h ├── uint256.cpp ├── uint256.h ├── undo.h ├── univalue ├── COPYING ├── Makefile.am ├── Makefile.in ├── TODO ├── aclocal.m4 ├── build-aux │ ├── compile │ ├── config.guess │ ├── config.sub │ ├── depcomp │ ├── install-sh │ ├── ltmain.sh │ ├── m4 │ │ ├── libtool.m4 │ │ ├── ltoptions.m4 │ │ ├── ltsugar.m4 │ │ ├── ltversion.m4 │ │ └── lt~obsolete.m4 │ ├── missing │ └── test-driver ├── configure ├── configure.ac ├── gen │ └── gen.cpp ├── include │ └── univalue.h ├── lib │ ├── univalue.cpp │ ├── univalue_escapes.h │ ├── univalue_read.cpp │ ├── univalue_utffilter.h │ └── univalue_write.cpp ├── pc │ ├── libunivalue-uninstalled.pc.in │ └── libunivalue.pc.in ├── test │ ├── fail1.json │ ├── fail10.json │ ├── fail11.json │ ├── fail12.json │ ├── fail13.json │ ├── fail14.json │ ├── fail15.json │ ├── fail16.json │ ├── fail17.json │ ├── fail18.json │ ├── fail19.json │ ├── fail2.json │ ├── fail20.json │ ├── fail21.json │ ├── fail22.json │ ├── fail23.json │ ├── fail24.json │ ├── fail25.json │ ├── fail26.json │ ├── fail27.json │ ├── fail28.json │ ├── fail29.json │ ├── fail3.json │ ├── fail30.json │ ├── fail31.json │ ├── fail32.json │ ├── fail33.json │ ├── fail34.json │ ├── fail35.json │ ├── fail36.json │ ├── fail37.json │ ├── fail38.json │ ├── fail39.json │ ├── fail4.json │ ├── fail40.json │ ├── fail41.json │ ├── fail42.json │ ├── fail44.json │ ├── fail5.json │ ├── fail6.json │ ├── fail7.json │ ├── fail8.json │ ├── fail9.json │ ├── no_nul.cpp │ ├── object.cpp │ ├── pass1.json │ ├── pass2.json │ ├── pass3.json │ ├── round1.json │ ├── round2.json │ ├── round3.json │ ├── round4.json │ ├── round5.json │ ├── round6.json │ ├── round7.json │ ├── test_json.cpp │ └── unitester.cpp └── univalue-config.h.in ├── util.cpp ├── util.h ├── utilmoneystr.cpp ├── utilmoneystr.h ├── utilstrencodings.cpp ├── utilstrencodings.h ├── utiltime.cpp ├── utiltime.h ├── validationinterface.cpp ├── validationinterface.h ├── version.h ├── wallet.cpp ├── wallet.h ├── wallet_ismine.cpp ├── wallet_ismine.h ├── walletdb.cpp ├── walletdb.h └── zmq ├── zmqabstractnotifier.cpp ├── zmqabstractnotifier.h ├── zmqconfig.h ├── zmqnotificationinterface.cpp ├── zmqnotificationinterface.h ├── zmqpublishnotifier.cpp └── zmqpublishnotifier.h /autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Copyright (c) 2013-2016 The Bitcoin Core developers 3 | # Distributed under the MIT software license, see the accompanying 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php. 5 | 6 | set -e 7 | srcdir="$(dirname $0)" 8 | cd "$srcdir" 9 | if [ -z ${LIBTOOLIZE} ] && GLIBTOOLIZE="`which glibtoolize 2>/dev/null`"; then 10 | LIBTOOLIZE="${GLIBTOOLIZE}" 11 | export LIBTOOLIZE 12 | fi 13 | which autoreconf >/dev/null || \ 14 | (echo "configuration failed, please install autoconf first" && exit 1) 15 | autoreconf --install --force --warnings=all 16 | -------------------------------------------------------------------------------- /build-aux/m4/bitcoin_subdir_to_include.m4: -------------------------------------------------------------------------------- 1 | dnl BITCOIN_SUBDIR_TO_INCLUDE([CPPFLAGS-VARIABLE-NAME],[SUBDIRECTORY-NAME],[HEADER-FILE]) 2 | dnl SUBDIRECTORY-NAME must end with a path separator 3 | AC_DEFUN([BITCOIN_SUBDIR_TO_INCLUDE],[ 4 | if test "x$2" = "x"; then 5 | AC_MSG_RESULT([default]) 6 | else 7 | echo "#include <$2$3.h>" >conftest.cpp 8 | newinclpath=`${CXXCPP} ${CPPFLAGS} -M conftest.cpp 2>/dev/null | [ tr -d '\\n\\r\\\\' | sed -e 's/^.*[[:space:]:]\(\/[^[:space:]]*\)]$3[\.h[[:space:]].*$/\1/' -e t -e d`] 9 | AC_MSG_RESULT([${newinclpath}]) 10 | if test "x${newinclpath}" != "x"; then 11 | eval "$1=\"\$$1\"' -I${newinclpath}'" 12 | fi 13 | fi 14 | ]) 15 | -------------------------------------------------------------------------------- /build-aux/m4/ltversion.m4: -------------------------------------------------------------------------------- 1 | # ltversion.m4 -- version numbers -*- Autoconf -*- 2 | # 3 | # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. 4 | # Written by Scott James Remnant, 2004 5 | # 6 | # This file is free software; the Free Software Foundation gives 7 | # unlimited permission to copy and/or distribute it, with or without 8 | # modifications, as long as this notice is preserved. 9 | 10 | # @configure_input@ 11 | 12 | # serial 4179 ltversion.m4 13 | # This file is part of GNU Libtool 14 | 15 | m4_define([LT_PACKAGE_VERSION], [2.4.6]) 16 | m4_define([LT_PACKAGE_REVISION], [2.4.6]) 17 | 18 | AC_DEFUN([LTVERSION_VERSION], 19 | [macro_version='2.4.6' 20 | macro_revision='2.4.6' 21 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) 22 | _LT_DECL(, macro_revision, 0) 23 | ]) 24 | -------------------------------------------------------------------------------- /contrib/devtools/split-debug.sh.in: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if [ $# -ne 3 ]; 4 | then echo "usage: $0 " 5 | fi 6 | 7 | @OBJCOPY@ --enable-deterministic-archives -p --only-keep-debug $1 $3 8 | @OBJCOPY@ --enable-deterministic-archives -p --strip-debug $1 $2 9 | @STRIP@ --enable-deterministic-archives -p -s $2 10 | @OBJCOPY@ --enable-deterministic-archives -p --add-gnu-debuglink=$3 $2 11 | -------------------------------------------------------------------------------- /contrib/macdeploy/detached-sig-apply.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | UNSIGNED=$1 5 | SIGNATURE=$2 6 | ARCH=x86_64 7 | ROOTDIR=dist 8 | BUNDLE=${ROOTDIR}/prx-Qt.app 9 | TEMPDIR=signed.temp 10 | OUTDIR=signed-app 11 | 12 | if [ -z "$UNSIGNED" ]; then 13 | echo "usage: $0 " 14 | exit 1 15 | fi 16 | 17 | if [ -z "$SIGNATURE" ]; then 18 | echo "usage: $0 " 19 | exit 1 20 | fi 21 | 22 | rm -rf ${TEMPDIR} && mkdir -p ${TEMPDIR} 23 | tar -C ${TEMPDIR} -xf ${UNSIGNED} 24 | tar -C ${TEMPDIR} -xf ${SIGNATURE} 25 | 26 | if [ -z "${PAGESTUFF}" ]; then 27 | PAGESTUFF=${TEMPDIR}/pagestuff 28 | fi 29 | 30 | if [ -z "${CODESIGN_ALLOCATE}" ]; then 31 | CODESIGN_ALLOCATE=${TEMPDIR}/codesign_allocate 32 | fi 33 | 34 | for i in `find ${TEMPDIR} -name "*.sign"`; do 35 | SIZE=`stat -c %s ${i}` 36 | TARGET_FILE=`echo ${i} | sed 's/\.sign$//'` 37 | 38 | echo "Allocating space for the signature of size ${SIZE} in ${TARGET_FILE}" 39 | ${CODESIGN_ALLOCATE} -i ${TARGET_FILE} -a ${ARCH} ${SIZE} -o ${i}.tmp 40 | 41 | OFFSET=`${PAGESTUFF} ${i}.tmp -p | tail -2 | grep offset | sed 's/[^0-9]*//g'` 42 | if [ -z ${QUIET} ]; then 43 | echo "Attaching signature at offset ${OFFSET}" 44 | fi 45 | 46 | dd if=$i of=${i}.tmp bs=1 seek=${OFFSET} count=${SIZE} 2>/dev/null 47 | mv ${i}.tmp ${TARGET_FILE} 48 | rm ${i} 49 | echo "Success." 50 | done 51 | mv ${TEMPDIR}/${ROOTDIR} ${OUTDIR} 52 | rm -rf ${TEMPDIR} 53 | echo "Signed: ${OUTDIR}" 54 | -------------------------------------------------------------------------------- /contrib/macdeploy/detached-sig-create.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | ROOTDIR=dist 5 | BUNDLE=${ROOTDIR}/prx-Qt.app 6 | CODESIGN=codesign 7 | TEMPDIR=sign.temp 8 | TEMPLIST=${TEMPDIR}/signatures.txt 9 | OUT=signature.tar.gz 10 | 11 | if [ ! -n "$1" ]; then 12 | echo "usage: $0 " 13 | echo "example: $0 -s MyIdentity" 14 | exit 1 15 | fi 16 | 17 | rm -rf ${TEMPDIR} ${TEMPLIST} 18 | mkdir -p ${TEMPDIR} 19 | 20 | ${CODESIGN} -f --file-list ${TEMPLIST} "$@" "${BUNDLE}" 21 | 22 | for i in `grep -v CodeResources ${TEMPLIST}`; do 23 | TARGETFILE="${BUNDLE}/`echo ${i} | sed "s|.*${BUNDLE}/||"`" 24 | SIZE=`pagestuff $i -p | tail -2 | grep size | sed 's/[^0-9]*//g'` 25 | OFFSET=`pagestuff $i -p | tail -2 | grep offset | sed 's/[^0-9]*//g'` 26 | SIGNFILE="${TEMPDIR}/${TARGETFILE}.sign" 27 | DIRNAME="`dirname ${SIGNFILE}`" 28 | mkdir -p "${DIRNAME}" 29 | echo "Adding detached signature for: ${TARGETFILE}. Size: ${SIZE}. Offset: ${OFFSET}" 30 | dd if=$i of=${SIGNFILE} bs=1 skip=${OFFSET} count=${SIZE} 2>/dev/null 31 | done 32 | 33 | for i in `grep CodeResources ${TEMPLIST}`; do 34 | TARGETFILE="${BUNDLE}/`echo ${i} | sed "s|.*${BUNDLE}/||"`" 35 | RESOURCE="${TEMPDIR}/${TARGETFILE}" 36 | DIRNAME="`dirname "${RESOURCE}"`" 37 | mkdir -p "${DIRNAME}" 38 | echo "Adding resource for: "${TARGETFILE}"" 39 | cp "${i}" "${RESOURCE}" 40 | done 41 | 42 | rm ${TEMPLIST} 43 | 44 | tar -C ${TEMPDIR} -czf ${OUT} . 45 | rm -rf ${TEMPDIR} 46 | echo "Created ${OUT}" 47 | -------------------------------------------------------------------------------- /contrib/macdeploy/fancy.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | window_bounds 6 | 7 | 300 8 | 300 9 | 800 10 | 620 11 | 12 | background_picture 13 | background.tiff 14 | icon_size 15 | 96 16 | applications_symlink 17 | 18 | items_position 19 | 20 | Applications 21 | 22 | 370 23 | 156 24 | 25 | prx-Qt.app 26 | 27 | 128 28 | 156 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /depends/builders/darwin.mk: -------------------------------------------------------------------------------- 1 | build_darwin_CC: = $(shell xcrun -f clang) 2 | build_darwin_CXX: = $(shell xcrun -f clang++) 3 | build_darwin_AR: = $(shell xcrun -f ar) 4 | build_darwin_RANLIB: = $(shell xcrun -f ranlib) 5 | build_darwin_STRIP: = $(shell xcrun -f strip) 6 | build_darwin_OTOOL: = $(shell xcrun -f otool) 7 | build_darwin_NM: = $(shell xcrun -f nm) 8 | build_darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool) 9 | build_darwin_SHA256SUM = shasum -a 256 10 | build_darwin_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o 11 | 12 | #darwin host on darwin builder. overrides darwin host preferences. 13 | darwin_CC=$(shell xcrun -f clang) -mmacosx-version-min=$(OSX_MIN_VERSION) 14 | darwin_CXX:=$(shell xcrun -f clang++) -mmacosx-version-min=$(OSX_MIN_VERSION) -stdlib=libc++ 15 | darwin_AR:=$(shell xcrun -f ar) 16 | darwin_RANLIB:=$(shell xcrun -f ranlib) 17 | darwin_STRIP:=$(shell xcrun -f strip) 18 | darwin_LIBTOOL:=$(shell xcrun -f libtool) 19 | darwin_OTOOL:=$(shell xcrun -f otool) 20 | darwin_NM:=$(shell xcrun -f nm) 21 | darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool) 22 | darwin_native_toolchain= 23 | -------------------------------------------------------------------------------- /depends/builders/default.mk: -------------------------------------------------------------------------------- 1 | default_build_CC = gcc 2 | default_build_CXX = g++ 3 | default_build_AR = ar 4 | default_build_RANLIB = ranlib 5 | default_build_STRIP = strip 6 | default_build_NM = nm 7 | default_build_OTOOL = otool 8 | default_build_INSTALL_NAME_TOOL = install_name_tool 9 | 10 | define add_build_tool_func 11 | build_$(build_os)_$1 ?= $$(default_build_$1) 12 | build_$(build_arch)_$(build_os)_$1 ?= $$(build_$(build_os)_$1) 13 | build_$1=$$(build_$(build_arch)_$(build_os)_$1) 14 | endef 15 | $(foreach var,CC CXX AR RANLIB NM STRIP SHA256SUM DOWNLOAD OTOOL INSTALL_NAME_TOOL,$(eval $(call add_build_tool_func,$(var)))) 16 | define add_build_flags_func 17 | build_$(build_arch)_$(build_os)_$1 += $(build_$(build_os)_$1) 18 | build_$1=$$(build_$(build_arch)_$(build_os)_$1) 19 | endef 20 | $(foreach flags, CFLAGS CXXFLAGS LDFLAGS, $(eval $(call add_build_flags_func,$(flags)))) 21 | -------------------------------------------------------------------------------- /depends/builders/linux.mk: -------------------------------------------------------------------------------- 1 | build_linux_SHA256SUM = sha256sum 2 | build_linux_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o 3 | -------------------------------------------------------------------------------- /depends/hosts/darwin.mk: -------------------------------------------------------------------------------- 1 | OSX_MIN_VERSION=10.10 2 | OSX_SDK_VERSION=10.11 3 | OSX_SDK=$(SDK_PATH)/MacOSX$(OSX_SDK_VERSION).sdk 4 | LD64_VERSION=253.9 5 | darwin_CC=clang -target $(host) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(OSX_SDK) -mlinker-version=$(LD64_VERSION) 6 | darwin_CXX=clang++ -target $(host) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(OSX_SDK) -mlinker-version=$(LD64_VERSION) -stdlib=libc++ 7 | 8 | darwin_CFLAGS=-pipe 9 | darwin_CXXFLAGS=$(darwin_CFLAGS) 10 | 11 | darwin_release_CFLAGS=-O2 12 | darwin_release_CXXFLAGS=$(darwin_release_CFLAGS) 13 | 14 | darwin_debug_CFLAGS=-O1 15 | darwin_debug_CXXFLAGS=$(darwin_debug_CFLAGS) 16 | 17 | darwin_native_toolchain=native_cctools 18 | -------------------------------------------------------------------------------- /depends/hosts/default.mk: -------------------------------------------------------------------------------- 1 | ifneq ($(host),$(build)) 2 | host_toolchain:=$(host)- 3 | endif 4 | 5 | default_host_CC = $(host_toolchain)gcc 6 | default_host_CXX = $(host_toolchain)g++ 7 | default_host_AR = $(host_toolchain)ar 8 | default_host_RANLIB = $(host_toolchain)ranlib 9 | default_host_STRIP = $(host_toolchain)strip 10 | default_host_LIBTOOL = $(host_toolchain)libtool 11 | default_host_INSTALL_NAME_TOOL = $(host_toolchain)install_name_tool 12 | default_host_OTOOL = $(host_toolchain)otool 13 | default_host_NM = $(host_toolchain)nm 14 | 15 | define add_host_tool_func 16 | $(host_os)_$1?=$$(default_host_$1) 17 | $(host_arch)_$(host_os)_$1?=$$($(host_os)_$1) 18 | $(host_arch)_$(host_os)_$(release_type)_$1?=$$($(host_os)_$1) 19 | host_$1=$$($(host_arch)_$(host_os)_$1) 20 | endef 21 | 22 | define add_host_flags_func 23 | $(host_arch)_$(host_os)_$1 += $($(host_os)_$1) 24 | $(host_arch)_$(host_os)_$(release_type)_$1 += $($(host_os)_$(release_type)_$1) 25 | host_$1 = $$($(host_arch)_$(host_os)_$1) 26 | host_$(release_type)_$1 = $$($(host_arch)_$(host_os)_$(release_type)_$1) 27 | endef 28 | 29 | $(foreach tool,CC CXX AR RANLIB STRIP NM LIBTOOL OTOOL INSTALL_NAME_TOOL,$(eval $(call add_host_tool_func,$(tool)))) 30 | $(foreach flags,CFLAGS CXXFLAGS CPPFLAGS LDFLAGS, $(eval $(call add_host_flags_func,$(flags)))) 31 | -------------------------------------------------------------------------------- /depends/hosts/linux.mk: -------------------------------------------------------------------------------- 1 | linux_CFLAGS=-pipe 2 | linux_CXXFLAGS=$(linux_CFLAGS) 3 | 4 | linux_release_CFLAGS=-O2 5 | linux_release_CXXFLAGS=$(linux_release_CFLAGS) 6 | 7 | linux_debug_CFLAGS=-O1 8 | linux_debug_CXXFLAGS=$(linux_debug_CFLAGS) 9 | 10 | linux_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC 11 | 12 | ifeq (86,$(findstring 86,$(build_arch))) 13 | i686_linux_CC=gcc -m32 14 | i686_linux_CXX=g++ -m32 15 | i686_linux_AR=ar 16 | i686_linux_RANLIB=ranlib 17 | i686_linux_NM=nm 18 | i686_linux_STRIP=strip 19 | 20 | x86_64_linux_CC=gcc -m64 21 | x86_64_linux_CXX=g++ -m64 22 | x86_64_linux_AR=ar 23 | x86_64_linux_RANLIB=ranlib 24 | x86_64_linux_NM=nm 25 | x86_64_linux_STRIP=strip 26 | else 27 | i686_linux_CC=$(default_host_CC) -m32 28 | i686_linux_CXX=$(default_host_CXX) -m32 29 | x86_64_linux_CC=$(default_host_CC) -m64 30 | x86_64_linux_CXX=$(default_host_CXX) -m64 31 | endif 32 | -------------------------------------------------------------------------------- /depends/hosts/mingw32.mk: -------------------------------------------------------------------------------- 1 | mingw32_CFLAGS=-pipe 2 | mingw32_CXXFLAGS=$(mingw32_CFLAGS) 3 | 4 | mingw32_release_CFLAGS=-O2 5 | mingw32_release_CXXFLAGS=$(mingw32_release_CFLAGS) 6 | 7 | mingw32_debug_CFLAGS=-O1 8 | mingw32_debug_CXXFLAGS=$(mingw32_debug_CFLAGS) 9 | 10 | mingw32_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC 11 | -------------------------------------------------------------------------------- /depends/packages/bdb.mk: -------------------------------------------------------------------------------- 1 | package=bdb 2 | $(package)_version=4.8.30 3 | $(package)_download_path=http://download.oracle.com/berkeley-db 4 | $(package)_file_name=db-$($(package)_version).NC.tar.gz 5 | $(package)_sha256_hash=12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef 6 | $(package)_build_subdir=build_unix 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-shared --enable-cxx --disable-replication 10 | $(package)_config_opts_mingw32=--enable-mingw 11 | $(package)_config_opts_linux=--with-pic 12 | $(package)_cxxflags=-std=c++11 13 | endef 14 | 15 | define $(package)_preprocess_cmds 16 | sed -i.old 's/__atomic_compare_exchange/__atomic_compare_exchange_db/' dbinc/atomic.h && \ 17 | sed -i.old 's/atomic_init/atomic_init_db/' dbinc/atomic.h mp/mp_region.c mp/mp_mvcc.c mp/mp_fget.c mutex/mut_method.c mutex/mut_tas.c && \ 18 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub dist 19 | endef 20 | 21 | define $(package)_config_cmds 22 | ../dist/$($(package)_autoconf) 23 | endef 24 | 25 | define $(package)_build_cmds 26 | $(MAKE) libdb_cxx-4.8.a libdb-4.8.a 27 | endef 28 | 29 | define $(package)_stage_cmds 30 | $(MAKE) DESTDIR=$($(package)_staging_dir) install_lib install_include 31 | endef 32 | -------------------------------------------------------------------------------- /depends/packages/dbus.mk: -------------------------------------------------------------------------------- 1 | package=dbus 2 | $(package)_version=1.10.18 3 | $(package)_download_path=https://dbus.freedesktop.org/releases/dbus 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=6049ddd5f3f3e2618f615f1faeda0a115104423a7996b7aa73e2f36e38cc514a 6 | $(package)_dependencies=expat 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-tests --disable-doxygen-docs --disable-xml-docs --disable-static --without-x 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) -C dbus libdbus-1.la 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) -C dbus DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-dbusincludeHEADERS install-nodist_dbusarchincludeHEADERS && \ 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA 23 | endef 24 | -------------------------------------------------------------------------------- /depends/packages/expat.mk: -------------------------------------------------------------------------------- 1 | package=expat 2 | $(package)_version=2.2.5 3 | $(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_2_2_5/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-static 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 21 | endef 22 | -------------------------------------------------------------------------------- /depends/packages/fontconfig.mk: -------------------------------------------------------------------------------- 1 | package=fontconfig 2 | $(package)_version=2.12.1 3 | $(package)_download_path=http://www.freedesktop.org/software/fontconfig/release/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3 6 | $(package)_dependencies=freetype expat 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-docs --disable-static 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | # 2.12.1 uses CHAR_WIDTH which is reserved and clashes with some glibc versions, but newer versions of fontconfig 17 | # have broken makefiles which needlessly attempt to re-generate headers with gperf. 18 | # Instead, change all uses of CHAR_WIDTH, and disable the rule that forces header re-generation. 19 | # This can be removed once the upstream build is fixed. 20 | define $(package)_build_cmds 21 | sed -i 's/CHAR_WIDTH/CHARWIDTH/g' fontconfig/fontconfig.h src/fcobjshash.gperf src/fcobjs.h src/fcobjshash.h && \ 22 | sed -i 's/fcobjshash.h: fcobjshash.gperf/fcobjshash.h:/' src/Makefile && \ 23 | $(MAKE) 24 | endef 25 | 26 | define $(package)_stage_cmds 27 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 28 | endef 29 | -------------------------------------------------------------------------------- /depends/packages/freetype.mk: -------------------------------------------------------------------------------- 1 | package=freetype 2 | $(package)_version=2.7.1 3 | $(package)_download_path=http://download.savannah.gnu.org/releases/$(package) 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--without-zlib --without-png --without-harfbuzz --without-bzip2 --disable-static 9 | $(package)_config_opts_linux=--with-pic 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/packages/gmp.mk: -------------------------------------------------------------------------------- 1 | package=gmp 2 | $(package)_version=6.1.2 3 | $(package)_download_path=https://gmplib.org/download/gmp 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | $(package)_config_opts_mingw32=--enable-mingw 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_config_cmds 14 | $($(package)_autoconf) 15 | endef 16 | 17 | define $(package)_build_cmds 18 | $(MAKE) 19 | endef 20 | 21 | define $(package)_stage_cmds 22 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 23 | endef 24 | 25 | -------------------------------------------------------------------------------- /depends/packages/libX11.mk: -------------------------------------------------------------------------------- 1 | package=libX11 2 | $(package)_version=1.6.2 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=2aa027e837231d2eeea90f3a4afe19948a6eb4c8b2bec0241eba7dbc8106bd16 6 | $(package)_dependencies=libxcb xtrans xextproto xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-xkb --disable-static 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_preprocess_cmds 14 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . 15 | endef 16 | 17 | define $(package)_config_cmds 18 | $($(package)_autoconf) 19 | endef 20 | 21 | define $(package)_build_cmds 22 | $(MAKE) 23 | endef 24 | 25 | define $(package)_stage_cmds 26 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 27 | endef 28 | -------------------------------------------------------------------------------- /depends/packages/libXau.mk: -------------------------------------------------------------------------------- 1 | package=libXau 2 | $(package)_version=1.0.8 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=fdd477320aeb5cdd67272838722d6b7d544887dfe7de46e1e7cc0c27c2bea4f2 6 | $(package)_dependencies=xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-shared 10 | $(package)_config_opts_linux=--with-pic 11 | endef 12 | 13 | define $(package)_preprocess_cmds 14 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . 15 | endef 16 | 17 | define $(package)_config_cmds 18 | $($(package)_autoconf) 19 | endef 20 | 21 | define $(package)_build_cmds 22 | $(MAKE) 23 | endef 24 | 25 | define $(package)_stage_cmds 26 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 27 | endef 28 | -------------------------------------------------------------------------------- /depends/packages/libXext.mk: -------------------------------------------------------------------------------- 1 | package=libXext 2 | $(package)_version=1.3.2 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=f829075bc646cdc085fa25d98d5885d83b1759ceb355933127c257e8e50432e0 6 | $(package)_dependencies=xproto xextproto libX11 libXau 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-static 10 | endef 11 | 12 | define $(package)_preprocess_cmds 13 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . 14 | endef 15 | 16 | define $(package)_config_cmds 17 | $($(package)_autoconf) 18 | endef 19 | 20 | define $(package)_build_cmds 21 | $(MAKE) 22 | endef 23 | 24 | define $(package)_stage_cmds 25 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 26 | endef 27 | -------------------------------------------------------------------------------- /depends/packages/libevent.mk: -------------------------------------------------------------------------------- 1 | package=libevent 2 | $(package)_version=2.1.8-stable 3 | $(package)_download_path=https://github.com/libevent/libevent/archive/ 4 | $(package)_file_name=release-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=316ddb401745ac5d222d7c529ef1eada12f58f6376a66c1118eee803cb70f83d 6 | 7 | define $(package)_preprocess_cmds 8 | ./autogen.sh 9 | endef 10 | 11 | define $(package)_set_vars 12 | $(package)_config_opts=--disable-shared --disable-openssl --disable-libevent-regress --disable-samples 13 | $(package)_config_opts_release=--disable-debug-mode 14 | $(package)_config_opts_linux=--with-pic 15 | endef 16 | 17 | define $(package)_config_cmds 18 | $($(package)_autoconf) 19 | endef 20 | 21 | define $(package)_build_cmds 22 | $(MAKE) 23 | endef 24 | 25 | define $(package)_stage_cmds 26 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 27 | endef 28 | 29 | define $(package)_postprocess_cmds 30 | endef 31 | -------------------------------------------------------------------------------- /depends/packages/libxcb.mk: -------------------------------------------------------------------------------- 1 | package=libxcb 2 | $(package)_version=1.10 3 | $(package)_download_path=http://xcb.freedesktop.org/dist 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=98d9ab05b636dd088603b64229dd1ab2d2cc02ab807892e107d674f9c3f2d5b5 6 | $(package)_dependencies=xcb_proto libXau xproto 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--disable-static 10 | endef 11 | 12 | define $(package)_preprocess_cmds 13 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub build-aux &&\ 14 | sed "s/pthread-stubs//" -i configure 15 | endef 16 | 17 | # Don't install xcb headers to the default path in order to work around a qt 18 | # build issue: https://bugreports.qt.io/browse/QTBUG-34748 19 | # When using qt's internal libxcb, it may end up finding the real headers in 20 | # depends staging. Use a non-default path to avoid that. 21 | 22 | define $(package)_config_cmds 23 | $($(package)_autoconf) --includedir=$(host_prefix)/include/xcb-shared 24 | endef 25 | 26 | define $(package)_build_cmds 27 | $(MAKE) 28 | endef 29 | 30 | define $(package)_stage_cmds 31 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 32 | endef 33 | 34 | define $(package)_postprocess_cmds 35 | rm -rf share/man share/doc 36 | endef 37 | -------------------------------------------------------------------------------- /depends/packages/miniupnpc.mk: -------------------------------------------------------------------------------- 1 | package=miniupnpc 2 | $(package)_version=2.0.20180203 3 | $(package)_download_path=http://miniupnp.free.fr/files 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=90dda8c7563ca6cd4a83e23b3c66dbbea89603a1675bfdb852897c2c9cc220b7 6 | 7 | define $(package)_set_vars 8 | $(package)_build_opts=CC="$($(package)_cc)" 9 | $(package)_build_opts_darwin=LIBTOOL="$($(package)_libtool)" 10 | $(package)_build_opts_mingw32=-f Makefile.mingw 11 | $(package)_build_env+=CFLAGS="$($(package)_cflags) $($(package)_cppflags)" AR="$($(package)_ar)" 12 | endef 13 | 14 | define $(package)_preprocess_cmds 15 | mkdir dll && \ 16 | sed -e 's|MINIUPNPC_VERSION_STRING \"version\"|MINIUPNPC_VERSION_STRING \"$($(package)_version)\"|' -e 's|OS/version|$(host)|' miniupnpcstrings.h.in > miniupnpcstrings.h && \ 17 | sed -i.old "s|miniupnpcstrings.h: miniupnpcstrings.h.in wingenminiupnpcstrings|miniupnpcstrings.h: miniupnpcstrings.h.in|" Makefile.mingw 18 | endef 19 | 20 | define $(package)_build_cmds 21 | $(MAKE) libminiupnpc.a $($(package)_build_opts) 22 | endef 23 | 24 | define $(package)_stage_cmds 25 | mkdir -p $($(package)_staging_prefix_dir)/include/miniupnpc $($(package)_staging_prefix_dir)/lib &&\ 26 | install *.h $($(package)_staging_prefix_dir)/include/miniupnpc &&\ 27 | install libminiupnpc.a $($(package)_staging_prefix_dir)/lib 28 | endef 29 | -------------------------------------------------------------------------------- /depends/packages/native_biplist.mk: -------------------------------------------------------------------------------- 1 | package=native_biplist 2 | $(package)_version=1.0.3 3 | $(package)_download_path=https://bitbucket.org/wooster/biplist/downloads 4 | $(package)_file_name=biplist-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=4c0549764c5fe50b28042ec21aa2e14fe1a2224e239a1dae77d9e7f3932aa4c6 6 | $(package)_install_libdir=$(build_prefix)/lib/python/dist-packages 7 | 8 | define $(package)_build_cmds 9 | python setup.py build 10 | endef 11 | 12 | define $(package)_stage_cmds 13 | mkdir -p $($(package)_install_libdir) && \ 14 | python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) 15 | endef 16 | -------------------------------------------------------------------------------- /depends/packages/native_cdrkit.mk: -------------------------------------------------------------------------------- 1 | package=native_cdrkit 2 | $(package)_version=1.1.11 3 | $(package)_download_path=http://distro.ibiblio.org/fatdog/source/600/c 4 | $(package)_file_name=cdrkit-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=b50d64c214a65b1a79afe3a964c691931a4233e2ba605d793eb85d0ac3652564 6 | $(package)_patches=cdrkit-deterministic.patch 7 | 8 | define $(package)_preprocess_cmds 9 | patch -p1 < $($(package)_patch_dir)/cdrkit-deterministic.patch 10 | endef 11 | 12 | define $(package)_config_cmds 13 | cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) genisoimage 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) -C genisoimage install 22 | endef 23 | 24 | define $(package)_postprocess_cmds 25 | rm bin/isovfy bin/isoinfo bin/isodump bin/isodebug bin/devdump 26 | endef 27 | -------------------------------------------------------------------------------- /depends/packages/native_ds_store.mk: -------------------------------------------------------------------------------- 1 | package=native_ds_store 2 | $(package)_version=1.1.2 3 | $(package)_download_path=https://github.com/al45tair/ds_store/archive/ 4 | $(package)_file_name=v$($(package)_version).tar.gz 5 | $(package)_sha256_hash=3b3ecb7bf0a5157f5b6010bc3af7c141fb0ad3527084e63336220d22744bc20c 6 | $(package)_install_libdir=$(build_prefix)/lib/python/dist-packages 7 | $(package)_dependencies=native_biplist 8 | 9 | define $(package)_build_cmds 10 | python setup.py build 11 | endef 12 | 13 | define $(package)_stage_cmds 14 | mkdir -p $($(package)_install_libdir) && \ 15 | python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) 16 | endef 17 | -------------------------------------------------------------------------------- /depends/packages/native_libdmg-hfsplus.mk: -------------------------------------------------------------------------------- 1 | package=native_libdmg-hfsplus 2 | $(package)_version=0.1 3 | $(package)_download_path=https://github.com/theuni/libdmg-hfsplus/archive 4 | $(package)_file_name=libdmg-hfsplus-v$($(package)_version).tar.gz 5 | $(package)_sha256_hash=6569a02eb31c2827080d7d59001869ea14484c281efab0ae7f2b86af5c3120b3 6 | $(package)_build_subdir=build 7 | 8 | define $(package)_preprocess_cmds 9 | mkdir build 10 | endef 11 | 12 | define $(package)_config_cmds 13 | cmake -DCMAKE_INSTALL_PREFIX:PATH=$(build_prefix)/bin .. 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) -C dmg 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) -C dmg install 22 | endef 23 | -------------------------------------------------------------------------------- /depends/packages/native_mac_alias.mk: -------------------------------------------------------------------------------- 1 | package=native_mac_alias 2 | $(package)_version=2.0.7 3 | $(package)_download_path=https://github.com/al45tair/mac_alias/archive/ 4 | $(package)_file_name=v$($(package)_version).tar.gz 5 | $(package)_sha256_hash=6f606d3b6bccd2112aeabf1a063f5b5ece87005a5d7e97c8faca23b916e88838 6 | $(package)_install_libdir=$(build_prefix)/lib/python/dist-packages 7 | 8 | define $(package)_build_cmds 9 | python setup.py build 10 | endef 11 | 12 | define $(package)_stage_cmds 13 | mkdir -p $($(package)_install_libdir) && \ 14 | python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) 15 | endef 16 | -------------------------------------------------------------------------------- /depends/packages/native_protobuf.mk: -------------------------------------------------------------------------------- 1 | package=native_protobuf 2 | $(package)_version=2.6.1 3 | $(package)_download_path=https://github.com/google/protobuf/releases/download/v$($(package)_version) 4 | $(package)_file_name=protobuf-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=ee445612d544d885ae240ffbcbf9267faa9f593b7b101f21d58beceb92661910 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | endef 10 | 11 | define $(package)_config_cmds 12 | $($(package)_autoconf) 13 | endef 14 | 15 | define $(package)_build_cmds 16 | $(MAKE) -C src protoc 17 | endef 18 | 19 | define $(package)_stage_cmds 20 | $(MAKE) -C src DESTDIR=$($(package)_staging_dir) install-strip 21 | endef 22 | 23 | define $(package)_postprocess_cmds 24 | rm -rf lib include 25 | endef 26 | -------------------------------------------------------------------------------- /depends/packages/packages.mk: -------------------------------------------------------------------------------- 1 | packages:=boost openssl libevent zeromq gmp 2 | 3 | qt_native_packages = native_protobuf 4 | qt_packages = qrencode protobuf zlib 5 | 6 | qt_linux_packages:=qt expat dbus libxcb xcb_proto libXau xproto freetype fontconfig libX11 xextproto libXext xtrans 7 | 8 | qt_darwin_packages=qt 9 | qt_mingw32_packages=qt 10 | 11 | wallet_packages=bdb 12 | 13 | upnp_packages=miniupnpc 14 | 15 | darwin_native_packages = native_biplist native_ds_store native_mac_alias 16 | 17 | ifneq ($(build_os),darwin) 18 | darwin_native_packages += native_cctools native_cdrkit native_libdmg-hfsplus 19 | endif 20 | -------------------------------------------------------------------------------- /depends/packages/protobuf.mk: -------------------------------------------------------------------------------- 1 | package=protobuf 2 | $(package)_version=$(native_$(package)_version) 3 | $(package)_download_path=$(native_$(package)_download_path) 4 | $(package)_file_name=$(native_$(package)_file_name) 5 | $(package)_sha256_hash=$(native_$(package)_sha256_hash) 6 | $(package)_dependencies=native_$(package) 7 | $(package)_cxxflags=-std=c++11 8 | 9 | define $(package)_set_vars 10 | $(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc 11 | $(package)_config_opts_linux=--with-pic 12 | endef 13 | 14 | define $(package)_preprocess_cmds 15 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . &&\ 16 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub gtest/build-aux 17 | endef 18 | 19 | define $(package)_config_cmds 20 | $($(package)_autoconf) 21 | endef 22 | 23 | define $(package)_build_cmds 24 | $(MAKE) -C src libprotobuf.la 25 | endef 26 | 27 | define $(package)_stage_cmds 28 | $(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-libLTLIBRARIES install-nobase_includeHEADERS &&\ 29 | $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA 30 | endef 31 | 32 | define $(package)_postprocess_cmds 33 | rm lib/libprotoc.a 34 | endef 35 | -------------------------------------------------------------------------------- /depends/packages/qrencode.mk: -------------------------------------------------------------------------------- 1 | package=qrencode 2 | $(package)_version=3.4.4 3 | $(package)_download_path=https://fukuchi.org/works/qrencode/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=efe5188b1ddbcbf98763b819b146be6a90481aac30cfc8d858ab78a19cde1fa5 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared -without-tools --disable-sdltest 9 | $(package)_config_opts_linux=--with-pic 10 | endef 11 | 12 | define $(package)_preprocess_cmds 13 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub use 14 | endef 15 | 16 | define $(package)_config_cmds 17 | $($(package)_autoconf) 18 | endef 19 | 20 | define $(package)_build_cmds 21 | $(MAKE) 22 | endef 23 | 24 | define $(package)_stage_cmds 25 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 26 | endef 27 | -------------------------------------------------------------------------------- /depends/packages/xcb_proto.mk: -------------------------------------------------------------------------------- 1 | package=xcb_proto 2 | $(package)_version=1.10 3 | $(package)_download_path=http://xcb.freedesktop.org/dist 4 | $(package)_file_name=xcb-proto-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=7ef40ddd855b750bc597d2a435da21e55e502a0fefa85b274f2c922800baaf05 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | $(package)_config_opts_linux=--with-pic 10 | endef 11 | 12 | define $(package)_config_cmds 13 | $($(package)_autoconf) 14 | endef 15 | 16 | define $(package)_build_cmds 17 | $(MAKE) 18 | endef 19 | 20 | define $(package)_stage_cmds 21 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 22 | endef 23 | 24 | define $(package)_postprocess_cmds 25 | find -name "*.pyc" -delete && \ 26 | find -name "*.pyo" -delete 27 | endef 28 | -------------------------------------------------------------------------------- /depends/packages/xextproto.mk: -------------------------------------------------------------------------------- 1 | package=xextproto 2 | $(package)_version=7.3.0 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/proto 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=f3f4b23ac8db9c3a9e0d8edb591713f3d70ef9c3b175970dd8823dfc92aa5bb0 6 | 7 | define $(package)_preprocess_cmds 8 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . 9 | endef 10 | 11 | define $(package)_set_vars 12 | $(package)_config_opts=--disable-shared 13 | endef 14 | 15 | define $(package)_config_cmds 16 | $($(package)_autoconf) 17 | endef 18 | 19 | define $(package)_build_cmds 20 | $(MAKE) 21 | endef 22 | 23 | define $(package)_stage_cmds 24 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 25 | endef 26 | -------------------------------------------------------------------------------- /depends/packages/xproto.mk: -------------------------------------------------------------------------------- 1 | package=xproto 2 | $(package)_version=7.0.26 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/proto 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=636162c1759805a5a0114a369dffdeccb8af8c859ef6e1445f26a4e6e046514f 6 | 7 | define $(package)_set_vars 8 | $(package)_config_opts=--disable-shared 9 | endef 10 | 11 | define $(package)_preprocess_cmds 12 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . 13 | endef 14 | 15 | define $(package)_config_cmds 16 | $($(package)_autoconf) 17 | endef 18 | 19 | define $(package)_build_cmds 20 | $(MAKE) 21 | endef 22 | 23 | define $(package)_stage_cmds 24 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 25 | endef 26 | -------------------------------------------------------------------------------- /depends/packages/xtrans.mk: -------------------------------------------------------------------------------- 1 | package=xtrans 2 | $(package)_version=1.3.4 3 | $(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.bz2 5 | $(package)_sha256_hash=054d4ee3efd52508c753e9f7bc655ef185a29bd2850dd9e2fc2ccc33544f583a 6 | $(package)_dependencies= 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts_linux=--with-pic --disable-static 10 | endef 11 | 12 | define $(package)_preprocess_cmds 13 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . 14 | endef 15 | 16 | define $(package)_config_cmds 17 | $($(package)_autoconf) 18 | endef 19 | 20 | define $(package)_build_cmds 21 | $(MAKE) 22 | endef 23 | 24 | define $(package)_stage_cmds 25 | $(MAKE) DESTDIR=$($(package)_staging_dir) install 26 | endef 27 | -------------------------------------------------------------------------------- /depends/packages/zeromq.mk: -------------------------------------------------------------------------------- 1 | package=zeromq 2 | $(package)_version=4.2.5 3 | $(package)_download_path=https://github.com/zeromq/libzmq/releases/download/v$($(package)_version)/ 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=cc9090ba35713d59bb2f7d7965f877036c49c5558ea0c290b0dcc6f2a17e489f 6 | $(package)_patches=0001-fix-build-with-older-mingw64.patch 0002-disable-pthread_set_name_np.patch 7 | 8 | define $(package)_set_vars 9 | $(package)_config_opts=--without-docs --disable-shared --without-libsodium --disable-curve --disable-curve-keygen --disable-perf --disable-Werror 10 | $(package)_config_opts_linux=--with-pic 11 | $(package)_cxxflags=-std=c++11 12 | endef 13 | 14 | define $(package)_preprocess_cmds 15 | patch -p1 < $($(package)_patch_dir)/0001-fix-build-with-older-mingw64.patch && \ 16 | patch -p1 < $($(package)_patch_dir)/0002-disable-pthread_set_name_np.patch && \ 17 | cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub config 18 | endef 19 | 20 | define $(package)_config_cmds 21 | $($(package)_autoconf) 22 | endef 23 | 24 | define $(package)_build_cmds 25 | $(MAKE) src/libzmq.la 26 | endef 27 | 28 | define $(package)_stage_cmds 29 | $(MAKE) DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-includeHEADERS install-pkgconfigDATA 30 | endef 31 | 32 | define $(package)_postprocess_cmds 33 | sed -i.old "s/ -lstdc++//" lib/pkgconfig/libzmq.pc && \ 34 | rm -rf bin share 35 | endef 36 | -------------------------------------------------------------------------------- /depends/packages/zlib.mk: -------------------------------------------------------------------------------- 1 | package=zlib 2 | $(package)_version=1.2.11 3 | $(package)_download_path=http://www.zlib.net 4 | $(package)_file_name=$(package)-$($(package)_version).tar.gz 5 | $(package)_sha256_hash=c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1 6 | 7 | define $(package)_set_vars 8 | $(package)_build_opts= CC="$($(package)_cc)" 9 | $(package)_build_opts+=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -fPIC" 10 | $(package)_build_opts+=RANLIB="$($(package)_ranlib)" 11 | $(package)_build_opts+=AR="$($(package)_ar)" 12 | $(package)_build_opts_darwin+=AR="$($(package)_libtool)" 13 | $(package)_build_opts_darwin+=ARFLAGS="-o" 14 | endef 15 | 16 | define $(package)_config_cmds 17 | ./configure --static --prefix=$(host_prefix) 18 | endef 19 | 20 | define $(package)_build_cmds 21 | $(MAKE) $($(package)_build_opts) libz.a 22 | endef 23 | 24 | define $(package)_stage_cmds 25 | $(MAKE) DESTDIR=$($(package)_staging_dir) install $($(package)_build_opts) 26 | endef 27 | 28 | -------------------------------------------------------------------------------- /depends/patches/qt/fix_no_printer.patch: -------------------------------------------------------------------------------- 1 | --- x/qtbase/src/plugins/platforms/cocoa/qprintengine_mac_p.h 2 | +++ y/qtbase/src/plugins/platforms/cocoa/qprintengine_mac_p.h 3 | @@ -52,6 +52,7 @@ 4 | // 5 | 6 | #include 7 | +#include 8 | 9 | #ifndef QT_NO_PRINTER 10 | 11 | --- x/qtbase/src/plugins/plugins.pro 12 | +++ y/qtbase/src/plugins/plugins.pro 13 | @@ -8,6 +8,3 @@ qtHaveModule(gui) { 14 | qtConfig(imageformatplugin): SUBDIRS *= imageformats 15 | !android:qtConfig(library): SUBDIRS *= generic 16 | } 17 | - 18 | -!winrt:qtHaveModule(printsupport): \ 19 | - SUBDIRS += printsupport 20 | -------------------------------------------------------------------------------- /depends/patches/qt/fix_qt_pkgconfig.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/mkspecs/features/qt_module.prf 2 | +++ new/qtbase/mkspecs/features/qt_module.prf 3 | @@ -245,7 +245,7 @@ 4 | load(qt_targets) 5 | 6 | # this builds on top of qt_common 7 | -!internal_module:!lib_bundle:if(unix|mingw) { 8 | +unix|mingw { 9 | CONFIG += create_pc 10 | QMAKE_PKGCONFIG_DESTDIR = pkgconfig 11 | host_build: \ 12 | -------------------------------------------------------------------------------- /depends/patches/qt/fix_rcc_determinism.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/src/tools/rcc/rcc.cpp 2 | +++ new/qtbase/src/tools/rcc/rcc.cpp 3 | @@ -207,7 +207,11 @@ void RCCFileInfo::writeDataInfo(RCCResourceLibrary &lib) 4 | if (lib.formatVersion() >= 2) { 5 | // last modified time stamp 6 | const QDateTime lastModified = m_fileInfo.lastModified(); 7 | - lib.writeNumber8(quint64(lastModified.isValid() ? lastModified.toMSecsSinceEpoch() : 0)); 8 | + quint64 lastmod = quint64(lastModified.isValid() ? lastModified.toMSecsSinceEpoch() : 0); 9 | + static const quint64 sourceDate = 1000 * qgetenv("QT_RCC_SOURCE_DATE_OVERRIDE").toULongLong(); 10 | + if (sourceDate != 0) 11 | + lastmod = sourceDate; 12 | + lib.writeNumber8(lastmod); 13 | if (text || pass1) 14 | lib.writeChar('\n'); 15 | } 16 | -------------------------------------------------------------------------------- /depends/patches/qt/fix_riscv64_arch.patch: -------------------------------------------------------------------------------- 1 | diff --git a/qtbase/src/3rdparty/double-conversion/include/double-conversion/utils.h b/qtbase/src/3rdparty/double-conversion/include/double-conversion/utils.h 2 | index 20bfd36..93729fa 100644 3 | --- a/qtbase/src/3rdparty/double-conversion/include/double-conversion/utils.h 4 | +++ b/qtbase/src/3rdparty/double-conversion/include/double-conversion/utils.h 5 | @@ -65,7 +65,8 @@ 6 | defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ 7 | defined(__SH4__) || defined(__alpha__) || \ 8 | defined(_MIPS_ARCH_MIPS32R2) || \ 9 | - defined(__AARCH64EL__) 10 | + defined(__AARCH64EL__) || defined(__aarch64__) || \ 11 | + defined(__riscv) 12 | #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 13 | #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) 14 | #if defined(_WIN32) 15 | -------------------------------------------------------------------------------- /depends/patches/qt/mac-qmake.conf: -------------------------------------------------------------------------------- 1 | MAKEFILE_GENERATOR = UNIX 2 | CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname absolute_library_soname 3 | QMAKE_INCREMENTAL_STYLE = sublib 4 | include(../common/macx.conf) 5 | include(../common/gcc-base-mac.conf) 6 | include(../common/clang.conf) 7 | include(../common/clang-mac.conf) 8 | QMAKE_MAC_SDK_PATH=$${MAC_SDK_PATH} 9 | QMAKE_XCODE_VERSION=4.3 10 | QMAKE_XCODE_DEVELOPER_PATH=/Developer 11 | QMAKE_MACOSX_DEPLOYMENT_TARGET = $${MAC_MIN_VERSION} 12 | QMAKE_MAC_SDK=macosx 13 | QMAKE_MAC_SDK.macosx.Path = $${MAC_SDK_PATH} 14 | QMAKE_MAC_SDK.macosx.platform_name = macosx 15 | QMAKE_MAC_SDK.macosx.SDKVersion = $${MAC_SDK_VERSION} 16 | QMAKE_MAC_SDK.macosx.PlatformPath = /phony 17 | QMAKE_APPLE_DEVICE_ARCHS=x86_64 18 | !host_build: QMAKE_CFLAGS += -target $${MAC_TARGET} 19 | !host_build: QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_CFLAGS 20 | !host_build: QMAKE_CXXFLAGS += $$QMAKE_CFLAGS 21 | !host_build: QMAKE_LFLAGS += -target $${MAC_TARGET} -mlinker-version=$${MAC_LD64_VERSION} 22 | QMAKE_AR = $${CROSS_COMPILE}ar cq 23 | QMAKE_RANLIB=$${CROSS_COMPILE}ranlib 24 | QMAKE_LIBTOOL=$${CROSS_COMPILE}libtool 25 | QMAKE_INSTALL_NAME_TOOL=$${CROSS_COMPILE}install_name_tool 26 | load(qt_config) 27 | -------------------------------------------------------------------------------- /depends/patches/qt/xkb-default.patch: -------------------------------------------------------------------------------- 1 | --- old/qtbase/src/gui/configure.pri 2018-06-06 17:28:10.000000000 -0400 2 | +++ new/qtbase/src/gui/configure.pri 2018-08-17 18:43:01.589384567 -0400 3 | @@ -43,18 +43,11 @@ 4 | } 5 | 6 | defineTest(qtConfTest_xkbConfigRoot) { 7 | - qtConfTest_getPkgConfigVariable($${1}): return(true) 8 | - 9 | - for (dir, $$list("/usr/share/X11/xkb", "/usr/local/share/X11/xkb")) { 10 | - exists($$dir) { 11 | - $${1}.value = $$dir 12 | - export($${1}.value) 13 | - $${1}.cache += value 14 | - export($${1}.cache) 15 | - return(true) 16 | - } 17 | - } 18 | - return(false) 19 | + $${1}.value = "/usr/share/X11/xkb" 20 | + export($${1}.value) 21 | + $${1}.cache += value 22 | + export($${1}.cache) 23 | + return(true) 24 | } 25 | 26 | defineTest(qtConfTest_qpaDefaultPlatform) { 27 | -------------------------------------------------------------------------------- /depends/patches/zeromq/0001-fix-build-with-older-mingw64.patch: -------------------------------------------------------------------------------- 1 | From f6866b0f166ad168618aae64c7fbee8775d3eb23 Mon Sep 17 00:00:00 2001 2 | From: mruddy <6440430+mruddy@users.noreply.github.com> 3 | Date: Sat, 30 Jun 2018 09:44:58 -0400 4 | Subject: [PATCH] fix build with older mingw64 5 | 6 | --- 7 | src/windows.hpp | 7 +++++++ 8 | 1 file changed, 7 insertions(+) 9 | 10 | diff --git a/src/windows.hpp b/src/windows.hpp 11 | index 6c3839fd..2c32ec79 100644 12 | --- a/src/windows.hpp 13 | +++ b/src/windows.hpp 14 | @@ -58,6 +58,13 @@ 15 | #include 16 | #include 17 | #include 18 | + 19 | +#if defined __MINGW64_VERSION_MAJOR && __MINGW64_VERSION_MAJOR < 4 20 | +// Workaround for mingw-w64 < v4.0 which did not include ws2ipdef.h in iphlpapi.h. 21 | +// Fixed in mingw-w64 by 9bd8fe9148924840d315b4c915dd099955ea89d1. 22 | +#include 23 | +#include 24 | +#endif 25 | #include 26 | 27 | #if !defined __MINGW32__ 28 | -- 29 | 2.17.1 30 | 31 | -------------------------------------------------------------------------------- /depends/patches/zeromq/0002-disable-pthread_set_name_np.patch: -------------------------------------------------------------------------------- 1 | From c9bbdd6581d07acfe8971e4bcebe278a3676cf03 Mon Sep 17 00:00:00 2001 2 | From: mruddy <6440430+mruddy@users.noreply.github.com> 3 | Date: Sat, 30 Jun 2018 09:57:18 -0400 4 | Subject: [PATCH] disable pthread_set_name_np 5 | 6 | pthread_set_name_np adds a Glibc requirement on >= 2.12. 7 | --- 8 | src/thread.cpp | 4 +++- 9 | 1 file changed, 3 insertions(+), 1 deletion(-) 10 | 11 | diff --git a/src/thread.cpp b/src/thread.cpp 12 | index a1086b0c..9943f354 100644 13 | --- a/src/thread.cpp 14 | +++ b/src/thread.cpp 15 | @@ -307,7 +307,7 @@ void zmq::thread_t::setThreadName (const char *name_) 16 | */ 17 | if (!name_) 18 | return; 19 | - 20 | +#if 0 21 | #if defined(ZMQ_HAVE_PTHREAD_SETNAME_1) 22 | int rc = pthread_setname_np (name_); 23 | if (rc) 24 | @@ -323,6 +323,8 @@ void zmq::thread_t::setThreadName (const char *name_) 25 | #elif defined(ZMQ_HAVE_PTHREAD_SET_NAME) 26 | pthread_set_name_np (descriptor, name_); 27 | #endif 28 | +#endif 29 | + return; 30 | } 31 | 32 | #endif 33 | -- 34 | 2.17.1 35 | 36 | -------------------------------------------------------------------------------- /doc/README_windows.txt: -------------------------------------------------------------------------------- 1 | Proxynode Core 2 | ===================== 3 | 4 | Intro 5 | ----- 6 | prx (PRX) is a sustainable cryptocurrency modeled after 7 | Satoshi Nakamoto’s vision for Bitcoin. It is a decentralized, 8 | peer-to-peer transactional currency designed to offer a solution to the problem posed 9 | by the exponential increase in energy consumed by Bitcoin and other proof-of-work currencies. 10 | Proof-of-work mining is environmentally unsustainable due to the electricity used by 11 | high-powered mining hardware. prx utilizes an energy efficient proof-of-stake algorithm, 12 | can be mined on any computer, and will never require specialized mining equipment. 13 | The Green Protocol offers a simple solution to Bitcoin sustainability issues and provides a faster, 14 | more scalable blockchain that is better suited for daily transactional use. 15 | 16 | 17 | Setup 18 | ----- 19 | Unpack the files into a directory and run prx-qt.exe. 20 | 21 | Proxynode Core is the original prx client and it builds the backbone of the network. 22 | However, it downloads and stores the entire history of prx transactions; 23 | depending on the speed of your computer and network connection, the synchronization 24 | process can take anywhere from a few hours to a day or more. 25 | -------------------------------------------------------------------------------- /doc/REST-interface.md: -------------------------------------------------------------------------------- 1 | Unauthenticated REST Interface 2 | ============================== 3 | 4 | The REST API can be enabled with the `-rest` option. 5 | 6 | Supported API 7 | ------------- 8 | `GET /rest/tx/TX-HASH.{bin|hex|json}` 9 | 10 | Given a transaction hash, 11 | Returns a transaction, in binary, hex-encoded binary or JSON formats. 12 | 13 | `GET /rest/block/BLOCK-HASH.{bin|hex|json}` 14 | `GET /rest/block/notxdetails/BLOCK-HASH.{bin|hex|json}` 15 | 16 | Given a block hash, 17 | Returns a block, in binary, hex-encoded binary or JSON formats. 18 | 19 | The HTTP request and response are both handled entirely in-memory, thus making maximum memory usage at least 2.66MB (1 MB max block, plus hex encoding) per request. 20 | 21 | With the /notxdetails/ option JSON response will only contain the transaction hash instead of the complete transaction details. The option only affects the JSON response. 22 | 23 | For full TX query capability, one must enable the transaction index via "txindex=1" command line / configuration option. 24 | 25 | Risks 26 | ------------- 27 | Running a webbrowser on the same node with a REST enabled prxd can be a risk. Accessing prepared XSS websites could read out tx/block data of your node by placing links like `