aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt22
-rw-r--r--README.md5
-rw-r--r--contrib/otshell_utils/CMakeLists.txt2
-rw-r--r--external/db_drivers/liblmdb/CMakeLists.txt2
-rw-r--r--external/unbound/CMakeLists.txt4
-rw-r--r--src/CMakeLists.txt4
-rw-r--r--src/blockchain_db/CMakeLists.txt10
-rw-r--r--src/blockchain_utilities/CMakeLists.txt24
-rw-r--r--src/common/CMakeLists.txt4
-rw-r--r--src/crypto/CMakeLists.txt5
-rw-r--r--src/crypto/slow-hash.c1
-rw-r--r--src/cryptonote_core/CMakeLists.txt6
-rw-r--r--src/cryptonote_core/miner.cpp3
-rw-r--r--src/cryptonote_protocol/CMakeLists.txt14
-rw-r--r--src/daemon/CMakeLists.txt4
-rw-r--r--src/daemonizer/CMakeLists.txt8
-rw-r--r--src/mnemonics/CMakeLists.txt4
-rw-r--r--src/p2p/CMakeLists.txt17
-rw-r--r--src/ringct/CMakeLists.txt10
-rw-r--r--src/rpc/CMakeLists.txt6
-rw-r--r--src/simplewallet/CMakeLists.txt8
-rw-r--r--src/simplewallet/simplewallet.cpp23
-rw-r--r--src/wallet/CMakeLists.txt8
-rw-r--r--tests/CMakeLists.txt2
-rw-r--r--tests/core_proxy/CMakeLists.txt9
-rw-r--r--tests/core_tests/CMakeLists.txt6
-rw-r--r--tests/crypto/CMakeLists.txt4
-rw-r--r--tests/daemon_tests/CMakeLists.txt5
-rw-r--r--tests/difficulty/CMakeLists.txt5
-rw-r--r--tests/functional_tests/CMakeLists.txt4
-rw-r--r--tests/hash/CMakeLists.txt5
-rw-r--r--tests/libwallet_api_tests/CMakeLists.txt6
-rw-r--r--tests/net_load_tests/CMakeLists.txt22
-rw-r--r--tests/performance_tests/CMakeLists.txt3
-rw-r--r--tests/unit_tests/CMakeLists.txt8
35 files changed, 138 insertions, 135 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0c813b867..2761b32f7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -49,6 +49,7 @@ if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type" FORCE)
message(STATUS "Setting default build type: ${CMAKE_BUILD_TYPE}")
endif()
+string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_LOWER)
# ARCH defines the target architecture, either by an explicit identifier or
# one of the following two keywords. By default, ARCH a value of 'native':
@@ -63,11 +64,11 @@ if (NOT ARCH OR ARCH STREQUAL "" OR ARCH STREQUAL "native" OR ARCH STREQUAL "def
else()
set(ARCH_ID "${ARCH}")
endif()
-string(TOLOWER ${ARCH_ID} ARM_ID)
-string(SUBSTRING ${ARCH_ID} 0 3 ARM_TEST)
+string(TOLOWER "${ARCH_ID}" ARM_ID)
+string(SUBSTRING "${ARCH_ID}" 0 3 ARM_TEST)
if (ARM_TEST STREQUAL "arm")
set(ARM 1)
- string(SUBSTRING ${ARCH_ID} 0 5 ARM_TEST)
+ string(SUBSTRING "${ARCH_ID}" 0 5 ARM_TEST)
if (ARM_TEST STREQUAL "armv6")
set(ARM6 1)
endif()
@@ -179,6 +180,17 @@ else()
endif()
option(STATIC "Link libraries statically" ${DEFAULT_STATIC})
+# This is a CMake built-in switch that concerns internal libraries
+if (NOT DEFINED BUILD_SHARED_LIBS AND NOT STATIC AND CMAKE_BUILD_TYPE_LOWER STREQUAL "debug")
+ set(BUILD_SHARED_LIBS ON CACHE STRING "Build internal libs as shared")
+endif()
+if (BUILD_SHARED_LIBS)
+ message(STATUS "Building internal libraries as shared")
+ set(PIC_FLAG "-fPIC")
+else()
+ message(STATUS "Building internal libraries as static")
+endif()
+
if(MINGW)
string(REGEX MATCH "^[^/]:/[^/]*" msys2_install_path "${CMAKE_C_COMPILER}")
message(STATUS "MSYS location: ${msys2_install_path}")
@@ -365,8 +377,8 @@ else()
set(COVERAGE_FLAGS "-fprofile-arcs -ftest-coverage --coverage")
endif()
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -D_GNU_SOURCE ${MINGW_FLAG} ${STATIC_ASSERT_FLAG} ${WARNINGS} ${C_WARNINGS} ${ARCH_FLAG} ${COVERAGE_FLAGS}")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -D_GNU_SOURCE ${MINGW_FLAG} ${WARNINGS} ${CXX_WARNINGS} ${ARCH_FLAG} ${COVERAGE_FLAGS}")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -D_GNU_SOURCE ${MINGW_FLAG} ${STATIC_ASSERT_FLAG} ${WARNINGS} ${C_WARNINGS} ${ARCH_FLAG} ${COVERAGE_FLAGS} ${PIC_FLAG}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -D_GNU_SOURCE ${MINGW_FLAG} ${WARNINGS} ${CXX_WARNINGS} ${ARCH_FLAG} ${COVERAGE_FLAGS} ${PIC_FLAG}")
# With GCC 6.1.1 the compiled binary malfunctions due to aliasing. Until that
# is fixed in the code (Issue #847), force compiler to be conservative.
diff --git a/README.md b/README.md
index e91a69d0c..5c66289ae 100644
--- a/README.md
+++ b/README.md
@@ -103,7 +103,7 @@ library archives (`.a`).
| libevent | 2.0 | NO | `libevent-dev` | `libevent` | NO | |
| libunbound | 1.4.16 | YES | `libunbound-dev` | `unbound` | NO | |
| libminiupnpc | 2.0 | YES | `libminiupnpc-dev` | `miniupnpc` | YES | NAT punching |
-| libunwind | any | NO | `libunwind-dev` | `libunwind` | YES | stack traces |
+| libunwind | any | NO | `libunwind8-dev` | `libunwind` | YES | stack traces |
| ldns | 1.6.17 | NO | `libldns-dev` | `ldns` | YES | ? |
| expat | 1.1 | NO | `libexpat1-dev` | `expat` | YES | ? |
| GTest | 1.5 | YES | `libgtest-dev`^ | `gtest` | YES | test suite |
@@ -263,6 +263,9 @@ service](utils/systemd/monerod.service) assumes that the user `monero` exists
and its home is the data directory specified in the [example
config](utils/conf/monerod.conf).
+If you're on Mac, you may need to add the `--max-concurrency 1` option to
+monero-wallet-cli, and possibly monerod, if you get crashes refreshing.
+
## Internationalization
See README.i18n
diff --git a/contrib/otshell_utils/CMakeLists.txt b/contrib/otshell_utils/CMakeLists.txt
index 7413e0dc5..464b125e4 100644
--- a/contrib/otshell_utils/CMakeLists.txt
+++ b/contrib/otshell_utils/CMakeLists.txt
@@ -9,6 +9,6 @@ file(GLOB otshell_utils_sources # All files in directory:
"*.cpp"
)
-add_library (otshell_utils STATIC ${otshell_utils_sources})
+add_library (otshell_utils ${otshell_utils_sources})
set_target_properties (otshell_utils PROPERTIES OUTPUT_NAME "otshell_utils")
#target_link_libraries (upnpc-static ${LDLIBS}) # to add used libs
diff --git a/external/db_drivers/liblmdb/CMakeLists.txt b/external/db_drivers/liblmdb/CMakeLists.txt
index ec435d1c8..00b203e94 100644
--- a/external/db_drivers/liblmdb/CMakeLists.txt
+++ b/external/db_drivers/liblmdb/CMakeLists.txt
@@ -39,7 +39,7 @@ include_directories("${CMAKE_CURRENT_SOURCE_DIR}")
add_library(lmdb
${lmdb_sources})
target_link_libraries(lmdb
- LINK_PRIVATE
+ PRIVATE
${CMAKE_THREAD_LIBS_INIT})
if(WIN32)
target_link_libraries(lmdb
diff --git a/external/unbound/CMakeLists.txt b/external/unbound/CMakeLists.txt
index 4b82fab82..c1e2d6887 100644
--- a/external/unbound/CMakeLists.txt
+++ b/external/unbound/CMakeLists.txt
@@ -202,13 +202,13 @@ add_library(unbound
${compat_src}
${libunbound_src})
target_link_libraries(unbound
- LINK_PRIVATE
+ PRIVATE
${OPENSSL_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT})
if (WIN32)
target_link_libraries(unbound
- LINK_PRIVATE
+ PRIVATE
iphlpapi
ws2_32)
endif ()
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 55a276f06..31694cf81 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -66,7 +66,7 @@ function (bitmonero_add_executable name)
add_executable("${name}"
${ARGN})
target_link_libraries("${name}"
- LINK_PRIVATE
+ PRIVATE
${EXTRA_LIBRARIES})
set_property(TARGET "${name}"
PROPERTY
@@ -88,7 +88,7 @@ function (bitmonero_add_library name)
# libwallet, which combines multiple components.
set(objlib obj_${name})
add_library(${objlib} OBJECT ${ARGN})
- add_library("${name}" STATIC $<TARGET_OBJECTS:${objlib}>)
+ add_library("${name}" $<TARGET_OBJECTS:${objlib}>)
set_property(TARGET "${name}"
PROPERTY
FOLDER "libs")
diff --git a/src/blockchain_db/CMakeLists.txt b/src/blockchain_db/CMakeLists.txt
index 39459d5c4..7bca66b8b 100644
--- a/src/blockchain_db/CMakeLists.txt
+++ b/src/blockchain_db/CMakeLists.txt
@@ -60,18 +60,12 @@ bitmonero_add_library(blockchain_db
${blockchain_db_headers}
${blockchain_db_private_headers})
target_link_libraries(blockchain_db
- LINK_PUBLIC
+ PUBLIC
common
crypto
- cryptonote_core
- ${Boost_DATE_TIME_LIBRARY}
- ${Boost_CHRONO_LIBRARY}
- ${Boost_PROGRAM_OPTIONS_LIBRARY}
- ${Boost_SERIALIZATION_LIBRARY}
${LMDB_LIBRARY}
${BDB_LIBRARY}
- LINK_PRIVATE
${Boost_FILESYSTEM_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
${Boost_THREAD_LIBRARY}
+ PRIVATE
${EXTRA_LIBRARIES})
diff --git a/src/blockchain_utilities/CMakeLists.txt b/src/blockchain_utilities/CMakeLists.txt
index 6f62128cc..13093f6ad 100644
--- a/src/blockchain_utilities/CMakeLists.txt
+++ b/src/blockchain_utilities/CMakeLists.txt
@@ -63,11 +63,15 @@ bitmonero_add_executable(blockchain_import
${blockchain_import_private_headers})
target_link_libraries(blockchain_import
- LINK_PRIVATE
+ PRIVATE
cryptonote_core
- blockchain_db
- p2p
- ${CMAKE_THREAD_LIBS_INIT})
+ blockchain_db
+ p2p
+ ${Boost_FILESYSTEM_LIBRARY}
+ ${Boost_SYSTEM_LIBRARY}
+ ${Boost_THREAD_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT}
+ ${EXTRA_LIBRARIES})
if(ARCH_WIDTH)
target_compile_definitions(blockchain_import
@@ -85,11 +89,15 @@ bitmonero_add_executable(blockchain_export
${blockchain_export_private_headers})
target_link_libraries(blockchain_export
- LINK_PRIVATE
+ PRIVATE
cryptonote_core
- p2p
- blockchain_db
- ${CMAKE_THREAD_LIBS_INIT})
+ blockchain_db
+ p2p
+ ${Boost_FILESYSTEM_LIBRARY}
+ ${Boost_SYSTEM_LIBRARY}
+ ${Boost_THREAD_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT}
+ ${EXTRA_LIBRARIES})
add_dependencies(blockchain_export
version)
diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt
index 7a2457c93..744559072 100644
--- a/src/common/CMakeLists.txt
+++ b/src/common/CMakeLists.txt
@@ -62,13 +62,15 @@ bitmonero_add_library(common
${common_headers}
${common_private_headers})
target_link_libraries(common
- LINK_PRIVATE
+ PUBLIC
crypto
${UNBOUND_LIBRARY}
${LIBUNWIND_LIBRARIES}
${Boost_DATE_TIME_LIBRARY}
${Boost_FILESYSTEM_LIBRARY}
${Boost_SYSTEM_LIBRARY}
+ ${Boost_THREAD_LIBRARY}
+ PRIVATE
${EXTRA_LIBRARIES})
#bitmonero_install_headers(common
diff --git a/src/crypto/CMakeLists.txt b/src/crypto/CMakeLists.txt
index ed668022f..28f845d47 100644
--- a/src/crypto/CMakeLists.txt
+++ b/src/crypto/CMakeLists.txt
@@ -74,6 +74,11 @@ bitmonero_add_library(crypto
${crypto_sources}
${crypto_headers}
${crypto_private_headers})
+target_link_libraries(crypto
+ PUBLIC
+ ${Boost_SYSTEM_LIBRARY}
+ PRIVATE
+ ${EXTRA_LIBRARIES})
if (ARM)
option(NO_OPTIMIZED_MULTIPLY_ON_ARM
diff --git a/src/crypto/slow-hash.c b/src/crypto/slow-hash.c
index 90fda3470..2ac303a36 100644
--- a/src/crypto/slow-hash.c
+++ b/src/crypto/slow-hash.c
@@ -939,7 +939,6 @@ void cn_slow_hash(const void *data, size_t length, char *hash)
// ND: Some minor optimizations for ARMv7 (raspberrry pi 2), effect seems to be ~40-50% faster.
// Needs more work.
-#include "aesb.c"
#ifdef NO_OPTIMIZED_MULTIPLY_ON_ARM
/* The asm corresponds to this C code */
diff --git a/src/cryptonote_core/CMakeLists.txt b/src/cryptonote_core/CMakeLists.txt
index 4ebfd01e3..89bf2f682 100644
--- a/src/cryptonote_core/CMakeLists.txt
+++ b/src/cryptonote_core/CMakeLists.txt
@@ -73,7 +73,7 @@ bitmonero_add_library(cryptonote_core
${cryptonote_core_headers}
${cryptonote_core_private_headers})
target_link_libraries(cryptonote_core
- LINK_PUBLIC
+ PUBLIC
common
crypto
otshell_utils
@@ -82,9 +82,9 @@ target_link_libraries(cryptonote_core
${Boost_DATE_TIME_LIBRARY}
${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_SERIALIZATION_LIBRARY}
- LINK_PRIVATE
- ${Blocks}
${Boost_FILESYSTEM_LIBRARY}
${Boost_SYSTEM_LIBRARY}
${Boost_THREAD_LIBRARY}
+ PRIVATE
+ ${Blocks}
${EXTRA_LIBRARIES})
diff --git a/src/cryptonote_core/miner.cpp b/src/cryptonote_core/miner.cpp
index bad3f30bd..ec717a13d 100644
--- a/src/cryptonote_core/miner.cpp
+++ b/src/cryptonote_core/miner.cpp
@@ -391,7 +391,8 @@ namespace cryptonote
}else
{
//success update, lets update config
- epee::serialization::store_t_to_json_file(m_config, m_config_folder_path + "/" + MINER_CONFIG_FILE_NAME);
+ if (!m_config_folder_path.empty())
+ epee::serialization::store_t_to_json_file(m_config, m_config_folder_path + "/" + MINER_CONFIG_FILE_NAME);
}
}
nonce+=m_threads_total;
diff --git a/src/cryptonote_protocol/CMakeLists.txt b/src/cryptonote_protocol/CMakeLists.txt
index 0d759e9c4..21925b60e 100644
--- a/src/cryptonote_protocol/CMakeLists.txt
+++ b/src/cryptonote_protocol/CMakeLists.txt
@@ -32,16 +32,10 @@ project (bitmonero CXX)
file(GLOB CRYPTONOTE_PROTOCOL *)
source_group(cryptonote_protocol FILES ${CRYPTONOTE_PROTOCOL})
-#add_library(p2p ${P2P})
-
-#bitmonero_private_headers(p2p ${CRYPTONOTE_PROTOCOL})
+#bitmonero_private_headers(cryptonote_protocol ${CRYPTONOTE_PROTOCOL})
bitmonero_add_library(cryptonote_protocol ${CRYPTONOTE_PROTOCOL})
-#target_link_libraries(p2p)
-# LINK_PRIVATE
-# ${Boost_CHRONO_LIBRARY}
-# ${Boost_REGEX_LIBRARY}
-# ${Boost_SYSTEM_LIBRARY}
-# ${Boost_THREAD_LIBRARY}
-# ${EXTRA_LIBRARIES})
+target_link_libraries(cryptonote_protocol
+ PRIVATE
+ ${EXTRA_LIBRARIES})
add_dependencies(cryptonote_protocol
version)
diff --git a/src/daemon/CMakeLists.txt b/src/daemon/CMakeLists.txt
index a8c93aa0f..8f9a50f13 100644
--- a/src/daemon/CMakeLists.txt
+++ b/src/daemon/CMakeLists.txt
@@ -83,7 +83,7 @@ bitmonero_add_executable(daemon
${blocksdat}
)
target_link_libraries(daemon
- LINK_PRIVATE
+ PRIVATE
rpc
blockchain_db
cryptonote_core
@@ -98,9 +98,7 @@ target_link_libraries(daemon
${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_REGEX_LIBRARY}
${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
- ${UPNP_LIBRARIES}
${EXTRA_LIBRARIES})
add_dependencies(daemon version)
set_property(TARGET daemon
diff --git a/src/daemonizer/CMakeLists.txt b/src/daemonizer/CMakeLists.txt
index 3ca6841e5..eee2c5091 100644
--- a/src/daemonizer/CMakeLists.txt
+++ b/src/daemonizer/CMakeLists.txt
@@ -61,14 +61,10 @@ bitmonero_add_library(daemonizer
${daemonizer_headers}
${daemonizer_private_headers})
target_link_libraries(daemonizer
- LINK_PRIVATE
+ PUBLIC
common
${Boost_CHRONO_LIBRARY}
${Boost_FILESYSTEM_LIBRARY}
${Boost_PROGRAM_OPTIONS_LIBRARY}
- ${Boost_REGEX_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
- ${CMAKE_THREAD_LIBS_INIT}
- ${UPNP_LIBRARIES}
+ PRIVATE
${EXTRA_LIBRARIES})
diff --git a/src/mnemonics/CMakeLists.txt b/src/mnemonics/CMakeLists.txt
index 1d43a02e7..34670f32d 100644
--- a/src/mnemonics/CMakeLists.txt
+++ b/src/mnemonics/CMakeLists.txt
@@ -51,5 +51,5 @@ bitmonero_add_library(mnemonics
${mnemonics_headers}
${mnemonics_private_headers})
target_link_libraries(mnemonics
- LINK_PRIVATE
- ${Boost_SYSTEM_LIBRARY})
+ PRIVATE
+ ${EXTRA_LIBRARIES})
diff --git a/src/p2p/CMakeLists.txt b/src/p2p/CMakeLists.txt
index 73b39c45d..f59bc3189 100644
--- a/src/p2p/CMakeLists.txt
+++ b/src/p2p/CMakeLists.txt
@@ -36,12 +36,15 @@ source_group(p2p FILES ${P2P})
#bitmonero_private_headers(p2p ${P2P})
bitmonero_add_library(p2p ${P2P})
-#target_link_libraries(p2p)
-# LINK_PRIVATE
-# ${Boost_CHRONO_LIBRARY}
-# ${Boost_REGEX_LIBRARY}
-# ${Boost_SYSTEM_LIBRARY}
-# ${Boost_THREAD_LIBRARY}
-# ${EXTRA_LIBRARIES})
+target_link_libraries(p2p
+ PUBLIC
+ ${UPNP_LIBRARIES}
+ ${Boost_CHRONO_LIBRARY}
+ ${Boost_PROGRAM_OPTIONS_LIBRARY}
+ ${Boost_FILESYSTEM_LIBRARY}
+ ${Boost_SYSTEM_LIBRARY}
+ ${Boost_THREAD_LIBRARY}
+ PRIVATE
+ ${EXTRA_LIBRARIES})
add_dependencies(p2p
version)
diff --git a/src/ringct/CMakeLists.txt b/src/ringct/CMakeLists.txt
index 078199bb0..e513c5a09 100644
--- a/src/ringct/CMakeLists.txt
+++ b/src/ringct/CMakeLists.txt
@@ -46,14 +46,8 @@ bitmonero_add_library(ringct
${ringct_headers}
${ringct_private_headers})
target_link_libraries(ringct
- LINK_PUBLIC
+ PUBLIC
common
crypto
- ${Boost_DATE_TIME_LIBRARY}
- ${Boost_PROGRAM_OPTIONS_LIBRARY}
- ${Boost_SERIALIZATION_LIBRARY}
- LINK_PRIVATE
- ${Boost_FILESYSTEM_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
+ PRIVATE
${EXTRA_LIBRARIES})
diff --git a/src/rpc/CMakeLists.txt b/src/rpc/CMakeLists.txt
index 6e90d1a91..1716da75b 100644
--- a/src/rpc/CMakeLists.txt
+++ b/src/rpc/CMakeLists.txt
@@ -43,13 +43,11 @@ bitmonero_add_library(rpc
${rpc_headers}
${rpc_private_headers})
target_link_libraries(rpc
- LINK_PRIVATE
+ PUBLIC
cryptonote_core
cryptonote_protocol
- ${Boost_CHRONO_LIBRARY}
- ${Boost_REGEX_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
${Boost_THREAD_LIBRARY}
+ PRIVATE
${EXTRA_LIBRARIES})
add_dependencies(rpc
version)
diff --git a/src/simplewallet/CMakeLists.txt b/src/simplewallet/CMakeLists.txt
index 572819899..5745781ef 100644
--- a/src/simplewallet/CMakeLists.txt
+++ b/src/simplewallet/CMakeLists.txt
@@ -43,7 +43,7 @@ bitmonero_add_executable(simplewallet
${simplewallet_headers}
${simplewallet_private_headers})
target_link_libraries(simplewallet
- LINK_PRIVATE
+ PRIVATE
wallet
rpc
cryptonote_core
@@ -51,8 +51,10 @@ target_link_libraries(simplewallet
common
mnemonics
p2p
- ${UNBOUND_LIBRARY}
- ${UPNP_LIBRARIES}
+ ${Boost_CHRONO_LIBRARY}
+ ${Boost_PROGRAM_OPTIONS_LIBRARY}
+ ${Boost_FILESYSTEM_LIBRARY}
+ ${Boost_THREAD_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
add_dependencies(simplewallet
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp
index 2c1d4096f..7260ecf8a 100644
--- a/src/simplewallet/simplewallet.cpp
+++ b/src/simplewallet/simplewallet.cpp
@@ -2484,11 +2484,12 @@ bool simple_wallet::transfer_main(int transfer_type, const std::vector<std::stri
}
catch (const tools::error::not_enough_money& e)
{
- fail_msg_writer() << boost::format(tr("not enough money to transfer, available only %s, transaction amount %s = %s + %s (fee)")) %
+ LOG_PRINT_L0(boost::format("not enough money to transfer, available only %s, transaction amount %s = %s + %s (fee)") %
print_money(e.available()) %
print_money(e.tx_amount() + e.fee()) %
print_money(e.tx_amount()) %
- print_money(e.fee());
+ print_money(e.fee()));
+ fail_msg_writer() << tr("Failed to find a way to create transactions");
}
catch (const tools::error::not_enough_outs_to_mix& e)
{
@@ -2645,12 +2646,12 @@ bool simple_wallet::sweep_unmixable(const std::vector<std::string> &args_)
}
catch (const tools::error::not_enough_money& e)
{
- fail_msg_writer() << boost::format(tr("not enough money to transfer, available only %s, transaction amount %s = %s + %s (fee).\n%s")) %
+ LOG_PRINT_L0(boost::format("not enough money to transfer, available only %s, transaction amount %s = %s + %s (fee)") %
print_money(e.available()) %
- print_money(e.tx_amount() + e.fee()) %
+ print_money(e.tx_amount() + e.fee()) %
print_money(e.tx_amount()) %
- print_money(e.fee()) %
- tr("This is usually due to dust which is so small it cannot pay for itself in fees");
+ print_money(e.fee()));
+ fail_msg_writer() << tr("Failed to find a way to create transactions. This is usually due to dust which is so small it cannot pay for itself in fees");
}
catch (const tools::error::not_enough_outs_to_mix& e)
{
@@ -2877,12 +2878,12 @@ bool simple_wallet::sweep_all(const std::vector<std::string> &args_)
}
catch (const tools::error::not_enough_money& e)
{
- fail_msg_writer() << boost::format(tr("not enough money to transfer, available only %s, transaction amount %s = %s + %s (fee).\n%s")) %
+ LOG_PRINT_L0(boost::format("not enough money to transfer, available only %s, transaction amount %s = %s + %s (fee)") %
print_money(e.available()) %
- print_money(e.tx_amount() + e.fee()) %
+ print_money(e.tx_amount() + e.fee()) %
print_money(e.tx_amount()) %
- print_money(e.fee()) %
- tr("This is usually due to dust which is so small it cannot pay for itself in fees");
+ print_money(e.fee()));
+ fail_msg_writer() << tr("Failed to find a way to create transactions. This is usually due to dust which is so small it cannot pay for itself in fees");
}
catch (const tools::error::not_enough_outs_to_mix& e)
{
@@ -3305,7 +3306,7 @@ bool simple_wallet::show_transfers(const std::vector<std::string> &args_)
for (std::list<std::pair<crypto::hash, tools::wallet2::unconfirmed_transfer_details>>::const_iterator i = upayments.begin(); i != upayments.end(); ++i) {
const tools::wallet2::unconfirmed_transfer_details &pd = i->second;
uint64_t amount = pd.m_amount_in;
- uint64_t fee = amount - pd.m_amount_out;
+ uint64_t fee = amount - pd.m_amount_out - pd.m_change;
std::string payment_id = string_tools::pod_to_hex(i->second.m_payment_id);
if (payment_id.substr(16).find_first_not_of('0') == std::string::npos)
payment_id = payment_id.substr(0,16);
diff --git a/src/wallet/CMakeLists.txt b/src/wallet/CMakeLists.txt
index 96653556b..506eaef85 100644
--- a/src/wallet/CMakeLists.txt
+++ b/src/wallet/CMakeLists.txt
@@ -64,17 +64,19 @@ bitmonero_add_library(wallet
${wallet_api_headers}
${wallet_private_headers})
target_link_libraries(wallet
- LINK_PUBLIC
+ PUBLIC
cryptonote_core
mnemonics
- LINK_PRIVATE
+ p2p
+ ${Boost_CHRONO_LIBRARY}
${Boost_SERIALIZATION_LIBRARY}
+ ${Boost_FILESYSTEM_LIBRARY}
${Boost_SYSTEM_LIBRARY}
${Boost_THREAD_LIBRARY}
${Boost_REGEX_LIBRARY}
+ PRIVATE
${EXTRA_LIBRARIES})
-
# build and install libwallet_merged only if we building for GUI
if (BUILD_GUI_DEPS)
set(libs_to_merge wallet cryptonote_core mnemonics common crypto ringct)
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 75e75f258..65eab49d7 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -84,7 +84,7 @@ add_executable(hash-target-tests
${hash_targets_sources}
${hash_targets_headers})
target_link_libraries(hash-target-tests
- LINK_PRIVATE
+ PRIVATE
cryptonote_core)
set_property(TARGET hash-target-tests
PROPERTY
diff --git a/tests/core_proxy/CMakeLists.txt b/tests/core_proxy/CMakeLists.txt
index 2494a688c..3b86660c2 100644
--- a/tests/core_proxy/CMakeLists.txt
+++ b/tests/core_proxy/CMakeLists.txt
@@ -36,17 +36,12 @@ add_executable(core_proxy
${core_proxy_sources}
${core_proxy_headers})
target_link_libraries(core_proxy
- LINK_PRIVATE
+ PRIVATE
cryptonote_core
cryptonote_protocol
p2p
- ${UPNP_LIBRARIES}
- ${Boost_CHRONO_LIBRARY}
- ${Boost_FILESYSTEM_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
- ${EXPAT_LIBRARIES})
+ ${EXTRA_LIBRARIES})
set_property(TARGET core_proxy
PROPERTY
FOLDER "tests")
diff --git a/tests/core_tests/CMakeLists.txt b/tests/core_tests/CMakeLists.txt
index 6f07fbd25..004b03492 100644
--- a/tests/core_tests/CMakeLists.txt
+++ b/tests/core_tests/CMakeLists.txt
@@ -62,14 +62,10 @@ add_executable(coretests
${core_tests_sources}
${core_tests_headers})
target_link_libraries(coretests
- LINK_PRIVATE
+ PRIVATE
cryptonote_core
p2p
- ${Boost_CHRONO_LIBRARY}
- ${Boost_FILESYSTEM_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
- ${EXPAT_LIBRARIES}
${EXTRA_LIBRARIES})
set_property(TARGET coretests
PROPERTY
diff --git a/tests/crypto/CMakeLists.txt b/tests/crypto/CMakeLists.txt
index 86946aa5c..9c59cd79e 100644
--- a/tests/crypto/CMakeLists.txt
+++ b/tests/crypto/CMakeLists.txt
@@ -41,7 +41,9 @@ add_executable(crypto-tests
${crypto_sources}
${crypto_headers})
target_link_libraries(crypto-tests
- ${Boost_SYSTEM_LIBRARY})
+ PRIVATE
+ ${Boost_SYSTEM_LIBRARY}
+ ${EXTRA_LIBRARIES})
set_property(TARGET crypto-tests
PROPERTY
FOLDER "tests")
diff --git a/tests/daemon_tests/CMakeLists.txt b/tests/daemon_tests/CMakeLists.txt
index ae11ab5d5..5e2e4ad1e 100644
--- a/tests/daemon_tests/CMakeLists.txt
+++ b/tests/daemon_tests/CMakeLists.txt
@@ -35,15 +35,14 @@ add_executable(transfers
${transfers_sources}
${transfers_headers})
target_link_libraries(transfers
- LINK_PRIVATE
+ PRIVATE
useragent
rpc
cryptonote_core
crypto
common
epee
- ${GTEST_LIBRARIES}
- ${Boost_LIBRARIES})
+ ${GTEST_LIBRARIES})
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/test_transfers")
add_custom_target(test_transfers
diff --git a/tests/difficulty/CMakeLists.txt b/tests/difficulty/CMakeLists.txt
index a9d24b981..9f1f04fe4 100644
--- a/tests/difficulty/CMakeLists.txt
+++ b/tests/difficulty/CMakeLists.txt
@@ -35,8 +35,9 @@ add_executable(difficulty-tests
${difficulty_sources}
${difficulty_headers})
target_link_libraries(difficulty-tests
- LINK_PRIVATE
- cryptonote_core)
+ PRIVATE
+ cryptonote_core
+ ${EXTRA_LIBRARIES})
set_property(TARGET difficulty-tests
PROPERTY
FOLDER "tests")
diff --git a/tests/functional_tests/CMakeLists.txt b/tests/functional_tests/CMakeLists.txt
index 41f3a9ec1..7e1845114 100644
--- a/tests/functional_tests/CMakeLists.txt
+++ b/tests/functional_tests/CMakeLists.txt
@@ -39,13 +39,13 @@ add_executable(functional_tests
${functional_tests_sources}
${functional_tests_headers})
target_link_libraries(functional_tests
- LINK_PRIVATE
+ PRIVATE
cryptonote_core
wallet
common
crypto
- ${UNBOUND_LIBRARY}
${Boost_REGEX_LIBRARY}
+ ${Boost_PROGRAM_OPTIONS_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
set_property(TARGET functional_tests
diff --git a/tests/hash/CMakeLists.txt b/tests/hash/CMakeLists.txt
index 426ecf6bf..7f79ee939 100644
--- a/tests/hash/CMakeLists.txt
+++ b/tests/hash/CMakeLists.txt
@@ -35,8 +35,9 @@ add_executable(hash-tests
${hash_sources}
${hash_headers})
target_link_libraries(hash-tests
- LINK_PRIVATE
- crypto)
+ PRIVATE
+ crypto
+ ${EXTRA_LIBRARIES})
set_property(TARGET hash-tests
PROPERTY
FOLDER "tests")
diff --git a/tests/libwallet_api_tests/CMakeLists.txt b/tests/libwallet_api_tests/CMakeLists.txt
index 416192cce..fc9a6d57b 100644
--- a/tests/libwallet_api_tests/CMakeLists.txt
+++ b/tests/libwallet_api_tests/CMakeLists.txt
@@ -38,9 +38,13 @@ add_executable(libwallet_api_tests
${libwallet_api_tests_headers})
target_link_libraries(libwallet_api_tests
- LINK_PRIVATE
+ PRIVATE
wallet
+ ${Boost_SERIALIZATION_LIBRARY}
+ ${Boost_FILESYSTEM_LIBRARY}
+ ${Boost_SYSTEM_LIBRARY}
${GTEST_LIBRARIES}
+ ${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
set_property(TARGET libwallet_api_tests
diff --git a/tests/net_load_tests/CMakeLists.txt b/tests/net_load_tests/CMakeLists.txt
index 2c97acf51..58f9cc5af 100644
--- a/tests/net_load_tests/CMakeLists.txt
+++ b/tests/net_load_tests/CMakeLists.txt
@@ -36,16 +36,15 @@ add_executable(net_load_tests_clt
${clt_sources}
${clt_headers})
target_link_libraries(net_load_tests_clt
- LINK_PRIVATE
- otshell_utils
- p2p
- cryptonote_core
+ PRIVATE
+ otshell_utils
+ p2p
+ cryptonote_core
${GTEST_LIBRARIES}
${Boost_CHRONO_LIBRARY}
${Boost_DATE_TIME_LIBRARY}
- ${Boost_FILESYSTEM_LIBRARY}
${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
set(srv_sources
@@ -58,16 +57,15 @@ add_executable(net_load_tests_srv
${srv_sources}
${srv_headers})
target_link_libraries(net_load_tests_srv
- LINK_PRIVATE
- otshell_utils
- p2p
- cryptonote_core
+ PRIVATE
+ otshell_utils
+ p2p
+ cryptonote_core
${GTEST_LIBRARIES}
${Boost_CHRONO_LIBRARY}
${Boost_DATE_TIME_LIBRARY}
- ${Boost_FILESYSTEM_LIBRARY}
${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
set_property(TARGET net_load_tests_clt net_load_tests_srv
diff --git a/tests/performance_tests/CMakeLists.txt b/tests/performance_tests/CMakeLists.txt
index 8ca5ece8e..37accb393 100644
--- a/tests/performance_tests/CMakeLists.txt
+++ b/tests/performance_tests/CMakeLists.txt
@@ -48,11 +48,10 @@ add_executable(performance_tests
${performance_tests_sources}
${performance_tests_headers})
target_link_libraries(performance_tests
- LINK_PRIVATE
+ PRIVATE
cryptonote_core
common
crypto
- ${UNBOUND_LIBRARY}
${Boost_CHRONO_LIBRARY}
${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
diff --git a/tests/unit_tests/CMakeLists.txt b/tests/unit_tests/CMakeLists.txt
index d36c2748c..b7fdc333f 100644
--- a/tests/unit_tests/CMakeLists.txt
+++ b/tests/unit_tests/CMakeLists.txt
@@ -62,7 +62,7 @@ add_executable(unit_tests
${unit_tests_sources}
${unit_tests_headers})
target_link_libraries(unit_tests
- LINK_PRIVATE
+ PRIVATE
ringct
cryptonote_core
blockchain_db
@@ -70,11 +70,7 @@ target_link_libraries(unit_tests
wallet
p2p
${GTEST_LIBRARIES}
- ${Boost_CHRONO_LIBRARY}
- ${Boost_REGEX_LIBRARY}
- ${Boost_SYSTEM_LIBRARY}
- ${Boost_THREAD_LIBRARY}
- ${UNBOUND_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT}
${EXTRA_LIBRARIES})
set_property(TARGET unit_tests
PROPERTY