mirror of
https://github.com/transmission/transmission.git
synced 2025-12-20 02:18:42 +00:00
* Reformat CMake code
* Bump minimum CMake version to 3.12
* Add target sources separately via `target_source()`
* Make `tr_win32_app_info()` add target sources on its own
* Don't use `include_directories()`
* Don't use `add_definitions()`
* Limit use of `add_compile_options()`
* Move VDKQueue target declaration to a subdirectory
* Add `tr_disable_source_files_compile()` helper
* Add `tr_target_glib_resources()` helper
* Add `tr_gettext_msgfmt()` helper
* Enable AUTOUIC for Qt client
* Enable AUTORCC for Qt client
* Remove AUTO{MOC,RCC,UIC} source group overrides
* Add `tr_target_idl_files()` helper
* Move source group setup to `tr_qt_add_translation()`
* Add `tr_target_xib_files()` helper
* Prefer `target_sources()` to intermediate variables
* Use explicit visibility versions of `target_*()` commands
* Prefer genexes to conditions in `target_*()` commands
* Add `tr_allow_compile_if()` helper
* Leave only top-level `project()`, remove the rest
* Minor fixups
* Fixup Mac QL plugin install
* Fixup IDE target folders and source groups
121 lines
3.0 KiB
CMake
121 lines
3.0 KiB
CMake
add_executable(libtransmission-test)
|
|
|
|
target_sources(libtransmission-test
|
|
PRIVATE
|
|
announce-list-test.cc
|
|
announcer-test.cc
|
|
announcer-udp-test.cc
|
|
benc-test.cc
|
|
bitfield-test.cc
|
|
block-info-test.cc
|
|
blocklist-test.cc
|
|
buffer-test.cc
|
|
clients-test.cc
|
|
completion-test.cc
|
|
copy-test.cc
|
|
crypto-test-ref.h
|
|
crypto-test.cc
|
|
error-test.cc
|
|
dht-test.cc
|
|
file-piece-map-test.cc
|
|
file-test.cc
|
|
getopt-test.cc
|
|
handshake-test.cc
|
|
history-test.cc
|
|
json-test.cc
|
|
lpd-test.cc
|
|
magnet-metainfo-test.cc
|
|
makemeta-test.cc
|
|
move-test.cc
|
|
net-test.cc
|
|
open-files-test.cc
|
|
peer-mgr-active-requests-test.cc
|
|
peer-mgr-wishlist-test.cc
|
|
peer-msgs-test.cc
|
|
platform-test.cc
|
|
quark-test.cc
|
|
remove-test.cc
|
|
rename-test.cc
|
|
rpc-test.cc
|
|
session-test.cc
|
|
session-alt-speeds-test.cc
|
|
settings-test.cc
|
|
strbuf-test.cc
|
|
subprocess-test-script.cmd
|
|
subprocess-test.cc
|
|
test-fixtures.h
|
|
timer-test.cc
|
|
torrent-files-test.cc
|
|
torrent-magnet-test.cc
|
|
torrent-metainfo-test.cc
|
|
torrents-test.cc
|
|
utils-test.cc
|
|
variant-test.cc
|
|
watchdir-test.cc
|
|
web-utils-test.cc)
|
|
|
|
set_property(
|
|
TARGET libtransmission-test
|
|
PROPERTY FOLDER "tests")
|
|
|
|
target_compile_definitions(libtransmission-test
|
|
PRIVATE
|
|
-DLIBTRANSMISSION_TEST_ASSETS_DIR="${CMAKE_CURRENT_SOURCE_DIR}/assets"
|
|
__TRANSMISSION__)
|
|
|
|
target_include_directories(libtransmission-test
|
|
PRIVATE
|
|
${CMAKE_SOURCE_DIR}/libtransmission
|
|
${CMAKE_BINARY_DIR}/libtransmission)
|
|
|
|
target_include_directories(libtransmission-test SYSTEM
|
|
PRIVATE
|
|
${LIBFMT_INCLUDE_DIRS}
|
|
${WIDE_INTEGER_INCLUDE_DIRS}
|
|
${B64_INCLUDE_DIRS}
|
|
${CURL_INCLUDE_DIRS}
|
|
${DHT_INCLUDE_DIRS}
|
|
${EVENT2_INCLUDE_DIRS})
|
|
|
|
target_compile_options(libtransmission-test
|
|
PRIVATE $<$<OR:$<CXX_COMPILER_ID:GNU>,$<CXX_COMPILER_ID:Clang>>:-Wno-sign-compare>) # patches welcomed
|
|
|
|
target_link_libraries(libtransmission-test
|
|
PRIVATE
|
|
${TR_NAME}
|
|
gtestall)
|
|
|
|
add_test(
|
|
NAME libtransmission-test
|
|
COMMAND libtransmission-test)
|
|
|
|
add_custom_command(
|
|
TARGET libtransmission-test
|
|
PRE_BUILD
|
|
COMMAND
|
|
${CMAKE_COMMAND}
|
|
-E copy_if_different
|
|
${CMAKE_CURRENT_SOURCE_DIR}/subprocess-test-script.cmd
|
|
$<TARGET_FILE_DIR:libtransmission-test>/subprocess-test.cmd)
|
|
|
|
add_executable(subprocess-test)
|
|
|
|
target_sources(subprocess-test
|
|
PRIVATE
|
|
subprocess-test-program.cc)
|
|
|
|
set_property(
|
|
TARGET subprocess-test
|
|
PROPERTY FOLDER "tests")
|
|
|
|
target_include_directories(subprocess-test
|
|
PRIVATE
|
|
${CMAKE_SOURCE_DIR}/libtransmission)
|
|
|
|
target_link_libraries(subprocess-test
|
|
PRIVATE
|
|
${TR_NAME})
|
|
|
|
add_dependencies(libtransmission-test
|
|
subprocess-test)
|