aboutsummaryrefslogtreecommitdiff
path: root/tests/unit/CMakeLists.txt
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2017-11-28 08:47:03 +0000
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2017-11-28 08:51:08 +0000
commitde76813c8421fd900e0d57038d28e8be693e33be (patch)
treed99b90ed99e1c42f0bd7ad4bef35770bce521720 /tests/unit/CMakeLists.txt
parent22d45854cb2c7a6374d6dfc631d684d01fcc9063 (diff)
downloadayatana-indicator-display-de76813c8421fd900e0d57038d28e8be693e33be.tar.gz
ayatana-indicator-display-de76813c8421fd900e0d57038d28e8be693e33be.tar.bz2
ayatana-indicator-display-de76813c8421fd900e0d57038d28e8be693e33be.zip
Fork from Ubuntus' indicator-display project.
Diffstat (limited to 'tests/unit/CMakeLists.txt')
-rw-r--r--tests/unit/CMakeLists.txt32
1 files changed, 30 insertions, 2 deletions
diff --git a/tests/unit/CMakeLists.txt b/tests/unit/CMakeLists.txt
index 87fab3a..fda43be 100644
--- a/tests/unit/CMakeLists.txt
+++ b/tests/unit/CMakeLists.txt
@@ -1,3 +1,31 @@
+###########################
+# GSettings Schema
+###########################
+
+# build the necessary schemas
+set_directory_properties (PROPERTIES
+ ADDITIONAL_MAKE_CLEAN_FILES gschemas.compiled)
+set_source_files_properties (gschemas.compiled GENERATED)
+
+# GSettings:
+# compile the org.ayatana.display schema into a gschemas.compiled file in this directory,
+# and help the tests to find that file by setting -DSCHEMA_DIR
+set (XDG_DATA_DIRS "${CMAKE_CURRENT_BINARY_DIR}/gsettings-schemas")
+set (SCHEMA_DIR "${XDG_DATA_DIRS}/glib-2.0/schemas")
+if (EXISTS /usr/share/glib-2.0/schemas/com.ubuntu.touch.system.gschema.xml)
+ set (DISPLAY_SCHEMA /usr/share/glib-2.0/schemas/com.ubuntu.touch.system.gschema.xml)
+else()
+ set (DISPLAY_SCHEMA ${CMAKE_SOURCE_DIR}/data/org.ayatana.display.gschema.xml)
+endif()
+add_definitions(-DSCHEMA_DIR="${SCHEMA_DIR}")
+execute_process (COMMAND ${PKG_CONFIG_EXECUTABLE} gio-2.0 --variable glib_compile_schemas
+ OUTPUT_VARIABLE COMPILE_SCHEMA_EXECUTABLE
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+add_custom_command (OUTPUT gschemas.compiled
+ COMMAND mkdir -p ${SCHEMA_DIR}
+ COMMAND cp -f ${DISPLAY_SCHEMA} ${SCHEMA_DIR}
+ COMMAND ${COMPILE_SCHEMA_EXECUTABLE} ${SCHEMA_DIR})
+
set(SERVICE_LINK_LIBRARIES
${SERVICE_LIB}
${SERVICE_DEPS_LIBRARIES}
@@ -15,13 +43,13 @@ set(TEST_LINK_LIBRARIES
)
add_definitions(
- -DGREETER_TEMPLATE="${CMAKE_SOURCE_DIR}/tests/utils/mock-unity-greeter.py"
+ -DGREETER_TEMPLATE="${CMAKE_SOURCE_DIR}/tests/utils/mock-greeter.py"
)
function(add_test_by_name name)
set(TEST_NAME ${name})
set(COVERAGE_TEST_TARGETS ${COVERAGE_TEST_TARGETS} ${TEST_NAME} PARENT_SCOPE)
- add_executable (${TEST_NAME} ${TEST_NAME}.cpp)
+ add_executable (${TEST_NAME} ${TEST_NAME}.cpp gschemas.compiled)
add_test(${TEST_NAME} ${TEST_NAME})
set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT ${CTEST_ENVIRONMENT})
target_link_libraries(${TEST_NAME} ${SERVICE_LINK_LIBRARIES} ${TEST_LINK_LIBRARIES} ${THREAD_LINK_LIBRARIES})