mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-05-08 07:58:01 +02:00
Merge branch 'fix-cmake-tests' into 'master'
Fix cmake tests See merge request dbus/dbus!59 Reviewed-by: smcv
This commit is contained in:
commit
533ec58c9a
5 changed files with 39 additions and 11 deletions
|
|
@ -4939,6 +4939,11 @@ bus_dispatch_test_conf (const DBusString *test_data_dir,
|
|||
_dbus_test_fatal ("shell success service auto start failed");
|
||||
_dbus_test_ok ("%s:%s - check_shell_service_success_auto_start", _DBUS_FUNCTION_NAME, filename);
|
||||
|
||||
#ifdef DBUS_WIN
|
||||
_dbus_verbose("TODO: Fix memory leaks after running check_shell_service_success_auto_start\n");
|
||||
_dbus_sleep_milliseconds (500);
|
||||
#endif
|
||||
|
||||
_dbus_verbose ("Disconnecting foo, bar, and baz\n");
|
||||
|
||||
kill_client_connection_unchecked (foo);
|
||||
|
|
|
|||
|
|
@ -234,7 +234,6 @@
|
|||
// system type defines
|
||||
#if defined(_WIN32) || defined(_WIN64) || defined (_WIN32_WCE)
|
||||
# define DBUS_WIN
|
||||
# define DBUS_WIN_FIXME 1
|
||||
# ifdef _WIN32_WCE
|
||||
# define DBUS_WINCE
|
||||
# else
|
||||
|
|
|
|||
|
|
@ -31,7 +31,12 @@ if(DBUS_BUILD_TESTS AND CMAKE_CROSSCOMPILING AND CMAKE_SYSTEM_NAME STREQUAL "Win
|
|||
endif()
|
||||
|
||||
macro(add_test_executable _target _source)
|
||||
add_executable(${_target} ${_source})
|
||||
set(_sources "${_source}")
|
||||
if(WIN32 AND NOT MSVC)
|
||||
# avoid triggering UAC
|
||||
add_uac_manifest(_sources)
|
||||
endif()
|
||||
add_executable(${_target} ${_sources})
|
||||
target_link_libraries(${_target} ${ARGN})
|
||||
if (CMAKE_CROSSCOMPILING AND CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
# run tests with binfmt_misc
|
||||
|
|
@ -58,7 +63,12 @@ macro(add_test_executable _target _source)
|
|||
endmacro(add_test_executable)
|
||||
|
||||
macro(add_helper_executable _target _source)
|
||||
add_executable(${_target} ${_source})
|
||||
set(_sources "${_source}")
|
||||
if(WIN32 AND NOT MSVC)
|
||||
# avoid triggering UAC
|
||||
add_uac_manifest(_sources)
|
||||
endif()
|
||||
add_executable(${_target} ${_sources})
|
||||
target_link_libraries(${_target} ${ARGN})
|
||||
endmacro(add_helper_executable)
|
||||
|
||||
|
|
@ -115,3 +125,23 @@ macro(generate_warning_cflags target warnings disabled_warnings error_warnings)
|
|||
message("generate_warning_cflags return: ${${target}}")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# Avoid triggering UAC
|
||||
#
|
||||
# This macro adds an rc file to _sources that is
|
||||
# linked to a target and prevents UAC from making
|
||||
# requests for administrator access.
|
||||
#
|
||||
macro(add_uac_manifest _sources)
|
||||
# 1 is the resource ID, ID_MANIFEST
|
||||
# 24 is the resource type, RT_MANIFEST
|
||||
# constants are used because of a bug in windres
|
||||
# see https://stackoverflow.com/questions/33000158/embed-manifest-file-to-require-administrator-execution-level-with-mingw32
|
||||
get_filename_component(UAC_FILE ${CMAKE_SOURCE_DIR}/../tools/Win32.Manifest REALPATH)
|
||||
set(outfile ${CMAKE_BINARY_DIR}/disable-uac.rc)
|
||||
if(NOT EXISTS outfile)
|
||||
file(WRITE ${outfile} "1 24 \"${UAC_FILE}\"\n")
|
||||
endif()
|
||||
list(APPEND ${_sources} ${outfile})
|
||||
endmacro()
|
||||
|
|
|
|||
|
|
@ -91,13 +91,7 @@ if(WIN32)
|
|||
list(APPEND dbus_update_activation_environment_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/versioninfo-${DBUS_VER_INTERNAL_NAME}.rc)
|
||||
endif()
|
||||
if(WIN32 AND NOT MSVC)
|
||||
# avoid dbus-update-activation-environment triggering UAC
|
||||
# 1 is the resource ID, ID_MANIFEST
|
||||
# 24 is the resource type, RT_MANIFEST
|
||||
# constants are used because of a bug in windres
|
||||
# see https://stackoverflow.com/questions/33000158/embed-manifest-file-to-require-administrator-execution-level-with-mingw32
|
||||
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/disable-uac.rc "1 24 \"${CMAKE_SOURCE_DIR}/../tools/Win32.Manifest\"\n")
|
||||
list(APPEND dbus_update_activation_environment_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/disable-uac.rc)
|
||||
add_uac_manifest(dbus_update_activation_environment_SOURCES)
|
||||
endif()
|
||||
add_executable(dbus-update-activation-environment ${dbus_update_activation_environment_SOURCES})
|
||||
target_link_libraries(dbus-update-activation-environment ${DBUS_LIBRARIES})
|
||||
|
|
|
|||
|
|
@ -254,7 +254,7 @@ dbus_bool_t
|
|||
_dbus_decrement_fail_alloc_counter (void)
|
||||
{
|
||||
_dbus_initialize_malloc_debug ();
|
||||
#ifdef DBUS_WIN_FIXME
|
||||
#ifdef DBUS_WIN
|
||||
{
|
||||
static dbus_bool_t called = 0;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue