Merge branch 'LMDB-tweaks'

This commit is contained in:
Riccardo Spagni 2016-01-03 20:03:00 +02:00
commit 10cc6a8593
7 changed files with 23 additions and 25 deletions

View file

@ -70,6 +70,9 @@ endif()
if(WIN32 OR ARM7 OR ARM6) if(WIN32 OR ARM7 OR ARM6)
set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG") set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG") set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
else()
set(CMAKE_C_FLAGS_RELEASE "-Ofast -DNDEBUG -Wno-unused-variable")
set(CMAKE_CXX_FLAGS_RELEASE "-Ofast -DNDEBUG -Wno-unused-variable")
endif() endif()
# set this to 0 if per-block checkpoint needs to be disabled # set this to 0 if per-block checkpoint needs to be disabled
@ -310,6 +313,9 @@ else()
# mingw doesn't support LTO (multiple definition errors at link time) # mingw doesn't support LTO (multiple definition errors at link time)
set(USE_LTO_DEFAULT false) set(USE_LTO_DEFAULT false)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--stack,10485760") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--stack,10485760")
if(NOT BUILD_64)
add_definitions(-DWINVER=0x0501 -D_WIN32_WINNT=0x0501)
endif()
endif() endif()
set(C_WARNINGS "-Waggregate-return -Wnested-externs -Wold-style-definition -Wstrict-prototypes") set(C_WARNINGS "-Waggregate-return -Wnested-externs -Wold-style-definition -Wstrict-prototypes")
set(CXX_WARNINGS "-Wno-reorder -Wno-missing-field-initializers") set(CXX_WARNINGS "-Wno-reorder -Wno-missing-field-initializers")
@ -340,8 +346,8 @@ else()
if(ARM7) if(ARM7)
message(STATUS "Setting ARM7 C and C++ flags") message(STATUS "Setting ARM7 C and C++ flags")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=vfpv4 -funsafe-math-optimizations -mtune=cortex-a7") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -mfloat-abi=hard")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=vfpv4 -funsafe-math-optimizations -mtune=cortex-a7") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -mfloat-abi=hard")
endif() endif()
if(APPLE) if(APPLE)
@ -353,8 +359,6 @@ else()
set(DEBUG_FLAGS "-g3 -O0") set(DEBUG_FLAGS "-g3 -O0")
endif() endif()
set(RELEASE_FLAGS "-Ofast -DNDEBUG -Wno-unused-variable")
if(NOT DEFINED USE_LTO_DEFAULT) if(NOT DEFINED USE_LTO_DEFAULT)
set(USE_LTO_DEFAULT true) set(USE_LTO_DEFAULT true)
endif() endif()

View file

@ -419,7 +419,7 @@ namespace log_space
std::string buf(buffer, buffer_len); std::string buf(buffer, buffer_len);
for(size_t i = 0; i!= buf.size(); i++) for(size_t i = 0; i!= buf.size(); i++)
{ {
if(buf[i] == 7 || buf[i] == -107) if(buf[i] == 7 || (buf[i]&0xff) == 0x95)
buf[i] = '^'; buf[i] = '^';
} }

View file

@ -160,13 +160,16 @@ PRAGMA_WARNING_DISABLE_VS(4355)
boost::bind(&connection<t_protocol_handler>::handle_read, self, boost::bind(&connection<t_protocol_handler>::handle_read, self,
boost::asio::placeholders::error, boost::asio::placeholders::error,
boost::asio::placeholders::bytes_transferred))); boost::asio::placeholders::bytes_transferred)));
#if !defined(_WIN32) || !defined(__i686)
// not supported before Windows7, too lazy for runtime check
// Just exclude for 32bit windows builds
//set ToS flag //set ToS flag
int tos = get_tos_flag(); int tos = get_tos_flag();
boost::asio::detail::socket_option::integer< IPPROTO_IP, IP_TOS > boost::asio::detail::socket_option::integer< IPPROTO_IP, IP_TOS >
optionTos( tos ); optionTos( tos );
socket_.set_option( optionTos ); socket_.set_option( optionTos );
//_dbg1("Set ToS flag to " << tos); //_dbg1("Set ToS flag to " << tos);
#endif
boost::asio::ip::tcp::no_delay noDelayOption(false); boost::asio::ip::tcp::no_delay noDelayOption(false);
socket_.set_option(noDelayOption); socket_.set_option(noDelayOption);

View file

@ -4,8 +4,8 @@ project (miniupnpc C)
set (MINIUPNPC_VERSION 1.9) set (MINIUPNPC_VERSION 1.9)
set (MINIUPNPC_API_VERSION 15) set (MINIUPNPC_API_VERSION 15)
# - we comment out this block as we don't support these other build types
if(0) if(0)
#[[ - we comment out this block as we don't support these other build types
if (NOT CMAKE_BUILD_TYPE) if (NOT CMAKE_BUILD_TYPE)
if (WIN32) if (WIN32)
set (DEFAULT_BUILD_TYPE MinSizeRel) set (DEFAULT_BUILD_TYPE MinSizeRel)
@ -16,8 +16,7 @@ if (NOT CMAKE_BUILD_TYPE)
"Choose the type of build, options are: Debug Release RelWithDebInfo MinSizeRel." "Choose the type of build, options are: Debug Release RelWithDebInfo MinSizeRel."
FORCE) FORCE)
endif() endif()
#]] endif()
endif (0)
option (UPNPC_BUILD_STATIC "Build static library" TRUE) option (UPNPC_BUILD_STATIC "Build static library" TRUE)
option (UPNPC_BUILD_SHARED "Build shared library" FALSE) option (UPNPC_BUILD_SHARED "Build shared library" FALSE)
@ -43,8 +42,8 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
add_definitions (-D_DARWIN_C_SOURCE) add_definitions (-D_DARWIN_C_SOURCE)
endif () endif ()
# - we comment out this block as we already set flags
if(0) if(0)
#[[ - we comment out this block as we already set flags
# Set compiler specific build flags # Set compiler specific build flags
if (CMAKE_COMPILER_IS_GNUC) if (CMAKE_COMPILER_IS_GNUC)
# Set our own default flags at first run. # Set our own default flags at first run.
@ -67,8 +66,7 @@ if (CMAKE_COMPILER_IS_GNUC)
endif (NOT CONFIGURED) endif (NOT CONFIGURED)
endif () endif ()
#]] endif()
endif (0)
configure_file (miniupnpcstrings.h.cmake ${CMAKE_BINARY_DIR}/miniupnpcstrings.h) configure_file (miniupnpcstrings.h.cmake ${CMAKE_BINARY_DIR}/miniupnpcstrings.h)
include_directories (${CMAKE_BINARY_DIR}) include_directories (${CMAKE_BINARY_DIR})

View file

@ -768,13 +768,6 @@
#define _LARGEFILE_SOURCE 1 #define _LARGEFILE_SOURCE 1
#endif #endif
#ifndef UNBOUND_DEBUG
# define NDEBUG
#endif
/** Use small-ldns codebase */ /** Use small-ldns codebase */
#define USE_SLDNS 1 #define USE_SLDNS 1
#ifdef HAVE_SSL #ifdef HAVE_SSL

View file

@ -30,8 +30,8 @@ if(APPLE)
add_library(blocks STATIC blockexports.c) add_library(blocks STATIC blockexports.c)
set_target_properties(blocks PROPERTIES LINKER_LANGUAGE C) set_target_properties(blocks PROPERTIES LINKER_LANGUAGE C)
else() else()
add_custom_command(OUTPUT blocks.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ld -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/blocks.o blocks.dat) add_custom_command(OUTPUT blocks.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ${CMAKE_LINKER} -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/blocks.o blocks.dat)
add_custom_command(OUTPUT testnet_blocks.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ld -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/testnet_blocks.o testnet_blocks.dat) add_custom_command(OUTPUT testnet_blocks.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ${CMAKE_LINKER} -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/testnet_blocks.o testnet_blocks.dat)
add_library(blocks STATIC blocks.o testnet_blocks.o blockexports.c) add_library(blocks STATIC blocks.o testnet_blocks.o blockexports.c)
set_target_properties(blocks PROPERTIES LINKER_LANGUAGE C) set_target_properties(blocks PROPERTIES LINKER_LANGUAGE C)
endif() endif()

View file

@ -29,9 +29,9 @@
set(blocksdat "") set(blocksdat "")
if(PER_BLOCK_CHECKPOINT) if(PER_BLOCK_CHECKPOINT)
if(APPLE) if(APPLE)
add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && touch stub.c && ${CMAKE_C_COMPILER} -o stub.o -c stub.c COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ld -r -sectcreate __DATA __blocks_dat ../blocks/checkpoints.dat -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o stub.o && rm -f stub.*) add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && touch stub.c && ${CMAKE_C_COMPILER} -o stub.o -c stub.c COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ${CMAKE_LINKER} -r -sectcreate __DATA __blocks_dat ../blocks/checkpoints.dat -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o stub.o && rm -f stub.*)
else() else()
add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && cp ../blocks/checkpoints.dat blocks.dat && ld -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o blocks.dat && rm -f blocks.dat) add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && cp ../blocks/checkpoints.dat blocks.dat && ${CMAKE_LINKER} -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o blocks.dat && rm -f blocks.dat)
endif() endif()
set(blocksdat "blocksdat.o") set(blocksdat "blocksdat.o")
endif() endif()