
include(UsePkgConfig)

MACRO(PKGCONFIG_GETVAR _package _var _output_variable)
    SET(${_output_variable})

    # if pkg-config has been found
    IF(PKGCONFIG_EXECUTABLE)

        EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --exists RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _pkgconfigDevNull )

        # and if the package of interest also exists for pkg-config, then get the information
        IF(NOT _return_VALUE)

            EXEC_PROGRAM(${PKGCONFIG_EXECUTABLE} ARGS ${_package} --variable ${_var} OUTPUT_VARIABLE ${_output_variable} )

        ENDIF(NOT _return_VALUE)

    ENDIF(PKGCONFIG_EXECUTABLE)

ENDMACRO(PKGCONFIG_GETVAR _package _var _output_variable)

macro(dbus_add_activation_service _sources)
    foreach (_i ${_sources})
        get_filename_component(_service_file ${_i} ABSOLUTE)
        string(REGEX REPLACE "\\.service.*$" ".service" _output_file ${_i})
        set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_output_file})
        configure_file(${_service_file} ${_target})
        install(FILES ${_target} DESTINATION ${DATA_INSTALL_DIR}/dbus-1/services)
    endforeach (_i ${ARGN})
endmacro(dbus_add_activation_service _sources)