Merge branch 'fix-ctest-runtime-path-issue' into 'master'

Make sure ctest on Windows uses the currently built dbus library

See merge request dbus/dbus!83
This commit is contained in:
Simon McVittie 2019-01-10 21:45:55 +00:00
commit 470d3f9d4b
2 changed files with 12 additions and 1 deletions

View file

@ -484,6 +484,12 @@ add_definitions(${DBUS_BUS_CFLAGS})
if (DBUS_BUILD_TESTS)
# set variables used for the .in files (substituted by configure_file) in test/data:
set(DBUS_TEST_EXEC ${Z_DRIVE_IF_WINE}${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${IDE_BIN})
# Working directory for build-time tests, so that they'll pick up
# the correct libdbus-1-3.dll on Windows.
# This happens to be the same as DBUS_TEST_EXEC, but its meaning is
# different, and it has no direct Autotools equivalent (Autotools
# tests automatically get their own ${builddir} as working directory).
set(DBUS_TEST_WORKING_DIR ${Z_DRIVE_IF_WINE}${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${IDE_BIN})
set(DBUS_TEST_DATA ${Z_DRIVE_IF_WINE}${CMAKE_BINARY_DIR}/test/data)
set(DBUS_TEST_DAEMON ${Z_DRIVE_IF_WINE}${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${IDE_BIN}/dbus-daemon${EXEEXT})
set(DBUS_TEST_DBUS_LAUNCH ${Z_DRIVE_IF_WINE}${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${IDE_BIN}/dbus-launch${EXEEXT})

View file

@ -54,7 +54,11 @@ macro(add_test_executable _target _source)
add_test(NAME ${_target} COMMAND ${TEST_WRAPPER} ${Z_DRIVE_IF_WINE}$<TARGET_FILE:${_target}> --tap)
endif()
else()
add_test(NAME ${_target} COMMAND $<TARGET_FILE:${_target}> --tap)
add_test(
NAME ${_target}
COMMAND $<TARGET_FILE:${_target}> --tap
WORKING_DIRECTORY ${DBUS_TEST_WORKING_DIR}
)
endif()
set(_env)
list(APPEND _env "DBUS_SESSION_BUS_ADDRESS=")
@ -94,6 +98,7 @@ macro(add_session_test_executable _target _source)
--dbus-daemon=${DBUS_TEST_DAEMON}
${Z_DRIVE_IF_WINE}$<TARGET_FILE:${_target}>
--tap
WORKING_DIRECTORY ${DBUS_TEST_WORKING_DIR}
)
set(_env)
list(APPEND _env "DBUS_SESSION_BUS_PID=")