2016-02-11 12:04:49 +01:00
|
|
|
project (cpp-utils)
|
|
|
|
|
|
|
|
set(SOURCES
|
|
|
|
crypto/symmetric/ciphers.cpp
|
2017-12-01 16:01:49 +01:00
|
|
|
crypto/symmetric/testutils/FakeAuthenticatedCipher.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
crypto/kdf/Scrypt.cpp
|
2016-02-22 02:38:06 +01:00
|
|
|
crypto/kdf/SCryptParameters.cpp
|
|
|
|
crypto/kdf/PasswordBasedKDF.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
crypto/RandomPadding.cpp
|
2017-09-05 01:43:43 +02:00
|
|
|
crypto/symmetric/EncryptionKey.cpp
|
2017-09-30 09:49:24 +02:00
|
|
|
crypto/hash/Hash.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
process/daemonize.cpp
|
|
|
|
process/subprocess.cpp
|
2019-01-22 04:23:48 +01:00
|
|
|
process/SignalCatcher.cpp
|
2019-03-17 09:08:57 +01:00
|
|
|
process/SignalHandler.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
tempfile/TempFile.cpp
|
|
|
|
tempfile/TempDir.cpp
|
|
|
|
network/HttpClient.cpp
|
|
|
|
network/CurlHttpClient.cpp
|
2018-09-17 08:37:30 +02:00
|
|
|
network/WinHttpClient.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
network/FakeHttpClient.cpp
|
|
|
|
io/Console.cpp
|
2016-09-24 20:28:56 +02:00
|
|
|
io/DontEchoStdinToStdoutRAII.cpp
|
|
|
|
io/IOStreamConsole.cpp
|
|
|
|
io/NoninteractiveConsole.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
io/pipestream.cpp
|
2019-01-23 07:02:34 +01:00
|
|
|
io/ProgressBar.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
thread/LoopThread.cpp
|
|
|
|
thread/ThreadSystem.cpp
|
2019-01-20 12:21:20 +01:00
|
|
|
thread/debugging_nonwindows.cpp
|
|
|
|
thread/debugging_windows.cpp
|
2019-01-22 04:23:48 +01:00
|
|
|
thread/LeftRight.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
random/Random.cpp
|
|
|
|
random/RandomGeneratorThread.cpp
|
|
|
|
random/OSRandomGenerator.cpp
|
|
|
|
random/PseudoRandomPool.cpp
|
|
|
|
random/RandomDataBuffer.cpp
|
|
|
|
random/RandomGenerator.cpp
|
|
|
|
lock/LockPool.cpp
|
2017-12-03 20:01:41 +01:00
|
|
|
data/SerializationHelper.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
data/Serializer.cpp
|
|
|
|
data/Deserializer.cpp
|
|
|
|
data/DataFixture.cpp
|
|
|
|
data/DataUtils.cpp
|
|
|
|
data/Data.cpp
|
2018-05-17 07:42:03 +02:00
|
|
|
assert/assert.h
|
2018-05-17 04:47:51 +02:00
|
|
|
assert/backtrace_nonwindows.cpp
|
|
|
|
assert/backtrace_windows.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
assert/AssertFailed.cpp
|
2016-02-17 00:24:40 +01:00
|
|
|
system/get_total_memory.cpp
|
2016-06-22 01:29:56 +02:00
|
|
|
system/homedir.cpp
|
2018-05-17 06:48:27 +02:00
|
|
|
system/memory_nonwindows.cpp
|
|
|
|
system/memory_windows.cpp
|
2018-05-17 07:18:45 +02:00
|
|
|
system/time.cpp
|
2018-05-21 09:02:26 +02:00
|
|
|
system/diskspace.cpp
|
2018-09-03 18:23:11 +02:00
|
|
|
system/filetime_nonwindows.cpp
|
|
|
|
system/filetime_windows.cpp
|
2018-09-04 00:46:08 +02:00
|
|
|
system/env.cpp
|
2018-05-22 08:11:51 +02:00
|
|
|
value_type/ValueType.cpp
|
2016-02-11 12:04:49 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
add_library(${PROJECT_NAME} STATIC ${SOURCES})
|
|
|
|
|
2019-02-28 08:34:49 +01:00
|
|
|
if(MSVC)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC DbgHelp)
|
|
|
|
elseif(NOT APPLE)
|
|
|
|
# note: We use the libunwind code on Apple, but we don't seem to need these lines to link against it.
|
|
|
|
find_package(Libunwind REQUIRED)
|
|
|
|
target_include_directories(${PROJECT_NAME} PRIVATE ${LIBUNWIND_INCLUDE_DIR})
|
|
|
|
target_link_libraries(${PROJECT_NAME} PRIVATE ${LIBUNWIND_LIBRARIES})
|
|
|
|
target_compile_definitions(${PROJECT_NAME} PRIVATE ${LIBUNWIND_DEFINITIONS})
|
2018-06-09 08:18:10 +02:00
|
|
|
endif()
|
2018-05-19 16:21:52 +02:00
|
|
|
|
2018-09-17 08:37:30 +02:00
|
|
|
if (NOT MSVC)
|
|
|
|
find_package(CURL REQUIRED)
|
|
|
|
target_include_directories(${PROJECT_NAME} PUBLIC ${CURL_INCLUDE_DIRS})
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC ${CURL_LIBRARIES})
|
|
|
|
else()
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC WinHttp)
|
|
|
|
endif()
|
|
|
|
|
2018-05-19 07:29:41 +02:00
|
|
|
find_package(Threads REQUIRED)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC ${CMAKE_THREAD_LIBS_INIT})
|
|
|
|
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC ${CMAKE_DL_LIBS})
|
2016-02-11 12:04:49 +01:00
|
|
|
|
2018-05-19 22:53:21 +02:00
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC spdlog cryptopp)
|
2016-02-11 12:04:49 +01:00
|
|
|
|
2016-02-11 12:57:50 +01:00
|
|
|
target_add_boost(${PROJECT_NAME} filesystem system thread)
|
|
|
|
target_enable_style_warnings(${PROJECT_NAME})
|
|
|
|
target_activate_cpp14(${PROJECT_NAME})
|