31 lines
1.2 KiB
CMake
31 lines
1.2 KiB
CMake
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)
|
|
PKGCONFIG_GETVAR(dbus-1 session_bus_services_dir _install_dir)
|
|
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 ${_install_dir})
|
|
endforeach (_i ${ARGN})
|
|
endmacro(dbus_add_activation_service _sources)
|