Some checks reported errors
BlockStorage/repertory/pipeline/head Something is wrong with the build of this commit
## v2.0.2-rc ### BREAKING CHANGES * Refactored `config.json` - will need to verify configuration settings prior to mounting ### Issues * \#12 \[Unit Test\] Complete all providers unit tests * \#14 \[Unit Test\] SQLite mini-ORM unit tests and cleanup * \#16 Add support for bucket name in Sia provider * \#17 Update to common c++ build system * A single 64-bit Linux Jenkins server is used to build all Linux and Windows versions * All dependency sources are now included * MSVC is no longer supported * MSYS2 is required for building Windows binaries on Windows * OS X support is temporarily disabled * \#19 \[bug\] Rename file is broken for files that are existing * \#23 \[bug\] Incorrect file size displayed while upload is pending * \#24 RocksDB implementations should be transactional * \#25 Writes should block when maximum cache size is reached * \#26 Complete ring buffer and direct download support ### Changes from v2.0.1-rc * Ability to choose between RocksDB and SQLite databases * Added direct reads and implemented download fallback * Corrected file times on S3 and Sia providers * Corrected handling of `chown()` and `chmod()` * Fixed erroneous download of chunks after resize Reviewed-on: #27
115 lines
3.0 KiB
CMake
115 lines
3.0 KiB
CMake
list(APPEND PROJECT_COMMON_FLAG_LIST
|
|
-D_FILE_OFFSET_BITS=64
|
|
-D_GNU_SOURCE
|
|
-D_LARGEFILE64_SOURCE
|
|
-D_LARGEFILE_SOURCE
|
|
-D_TIME_BITS=64
|
|
-march=${PROJECT_MARCH}
|
|
-mtune=generic
|
|
)
|
|
|
|
if(PROJECT_IS_MINGW)
|
|
list(APPEND PROJECT_COMMON_FLAG_LIST
|
|
${PROJECT_COMMON_FLAG_LIST}
|
|
-Wa,-mbig-obj
|
|
-flarge-source-files
|
|
)
|
|
endif()
|
|
|
|
list(APPEND PROJECT_DEBUG_FLAG_LIST
|
|
-DDEBUG
|
|
-D_DEBUG
|
|
-Og
|
|
-fno-omit-frame-pointer
|
|
-g
|
|
)
|
|
|
|
list(APPEND PROJECT_RELEASE_FLAG_LIST
|
|
-DNDEBUG
|
|
-D_NDEBUG
|
|
-O3
|
|
)
|
|
|
|
list(APPEND PROJECT_CXXFLAGS_LIST
|
|
-Wall
|
|
-Wcast-align
|
|
-Wconversion
|
|
-Wdouble-promotion
|
|
-Wduplicated-branches
|
|
-Wduplicated-cond
|
|
-Wextra
|
|
-Wformat=2
|
|
-Wlogical-op
|
|
-Wmisleading-indentation
|
|
-Wno-useless-cast
|
|
-Wnon-virtual-dtor
|
|
-Wnull-dereference
|
|
-Wold-style-cast
|
|
-Woverloaded-virtual
|
|
-Wpedantic
|
|
-Wshadow
|
|
-Wsign-conversion
|
|
-Wunused
|
|
)
|
|
|
|
list(APPEND PROJECT_CFLAGS_LIST
|
|
${PROJECT_COMMON_FLAG_LIST}
|
|
-std=c${CMAKE_C_STANDARD}
|
|
)
|
|
|
|
list(APPEND PROJECT_CXXFLAGS_LIST
|
|
${PROJECT_COMMON_FLAG_LIST}
|
|
-std=gnu++${CMAKE_CXX_STANDARD}
|
|
)
|
|
|
|
if(PROJECT_STATIC_LINK)
|
|
list(APPEND PROJECT_CMAKE_EXE_LINKER_FLAGS
|
|
-static-libgcc
|
|
-static-libstdc++
|
|
-static
|
|
)
|
|
endif()
|
|
|
|
list(JOIN PROJECT_COMMON_FLAG_LIST " " PROJECT_COMMON_FLAG_LIST)
|
|
list(JOIN PROJECT_DEBUG_FLAG_LIST " " PROJECT_DEBUG_FLAG_LIST)
|
|
list(JOIN PROJECT_RELEASE_FLAG_LIST " " PROJECT_RELEASE_FLAG_LIST)
|
|
|
|
list(JOIN PROJECT_CFLAGS_LIST " " PROJECT_CFLAGS_LIST)
|
|
list(JOIN PROJECT_CXXFLAGS_LIST " " PROJECT_CXXFLAGS_LIST)
|
|
|
|
list(JOIN PROJECT_CMAKE_EXE_LINKER_FLAGS " " PROJECT_CMAKE_EXE_LINKER_FLAGS)
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${PROJECT_CFLAGS_LIST}")
|
|
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${PROJECT_DEBUG_FLAG_LIST}")
|
|
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${PROJECT_RELEASE_FLAG_LIST}")
|
|
|
|
set(CMAKE_CXX_FLAGS "-include cstdint -include utility ${CMAKE_CXX_FLAGS} ${PROJECT_CXXFLAGS_LIST}")
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${PROJECT_DEBUG_FLAG_LIST}")
|
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${PROJECT_RELEASE_FLAG_LIST}")
|
|
|
|
set(CMAKE_EXE_LINKER_FLAGS "${PROJECT_CMAKE_EXE_LINKER_FLAGS}")
|
|
|
|
set(EXTERNAL_CMAKE_CXX_FLAGS "-include cstdint -include utility -fext-numeric-literals ${PROJECT_COMMON_FLAG_LIST}")
|
|
list(APPEND PROJECT_EXTERNAL_CMAKE_FLAGS
|
|
-DCMAKE_BUILD_TYPE=${PROJECT_CMAKE_BUILD_TYPE}
|
|
-DCMAKE_COLOR_MAKEFILE=${CMAKE_COLOR_MAKEFILE}
|
|
-DCMAKE_CXX_FLAGS=${EXTERNAL_CMAKE_CXX_FLAGS}
|
|
-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}
|
|
-DCMAKE_C_FLAGS=${PROJECT_COMMON_FLAG_LIST}
|
|
-DCMAKE_C_STANDARD=${CMAKE_C_STANDARD}
|
|
-DCMAKE_GENERATOR=${CMAKE_GENERATOR}
|
|
-DCMAKE_INSTALL_PREFIX=${PROJECT_EXTERNAL_BUILD_ROOT}
|
|
-DCMAKE_POSITION_INDEPENDENT_CODE=${CMAKE_POSITION_INDEPENDENT_CODE}
|
|
)
|
|
|
|
if(CMAKE_TOOLCHAIN_FILE)
|
|
list(APPEND PROJECT_EXTERNAL_CMAKE_FLAGS
|
|
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
|
|
)
|
|
endif()
|
|
|
|
string(REPLACE ";" "|" CMAKE_PREFIX_PATH_ALT_SEP "${CMAKE_PREFIX_PATH}")
|
|
list(APPEND PROJECT_EXTERNAL_CMAKE_FLAGS
|
|
-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH_ALT_SEP}
|
|
)
|