1
cmake_minimum_required(VERSION 2.6)
3
cmake_policy(SET CMP0011 NEW)
6
find_program(GDBUS_CODEGEN NAMES gdbus-codegen DOC "gdbus-codegen executable")
8
message(FATAL_ERROR "Excutable gdbus-codegen not found")
11
macro(add_gdbus_codegen outfiles name prefix service_xml)
13
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}.h" "${CMAKE_CURRENT_BINARY_DIR}/${name}.c"
14
COMMAND "${GDBUS_CODEGEN}"
15
--interface-prefix "${prefix}"
16
--generate-c-code "${name}"
18
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
19
DEPENDS ${ARGN} "${service_xml}"
21
list(APPEND ${outfiles} "${CMAKE_CURRENT_BINARY_DIR}/${name}.c")
22
endmacro(add_gdbus_codegen)
24
macro(add_gdbus_codegen_with_namespace outfiles name prefix namespace service_xml)
26
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}.h" "${CMAKE_CURRENT_BINARY_DIR}/${name}.c"
27
COMMAND "${GDBUS_CODEGEN}"
28
--interface-prefix "${prefix}"
29
--generate-c-code "${name}"
30
--c-namespace "${namespace}"
32
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
33
DEPENDS ${ARGN} "${service_xml}"
35
list(APPEND ${outfiles} "${CMAKE_CURRENT_BINARY_DIR}/${name}.c")
36
endmacro(add_gdbus_codegen_with_namespace)