m (PkgConfigGetVar.cmake moved to Development/Tutorials/D-Bus/Accessing Interfaces/PkgConfigGetVar.cmake: subpagify) |
Neverendingo (Talk | contribs) m (Text replace - "</code>" to "</syntaxhighlight>") |
||
| (5 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| − | < | + | <syntaxhighlight lang="text">include(UsePkgConfig) |
MACRO(PKGCONFIG_GETVAR _package _var _output_variable) | MACRO(PKGCONFIG_GETVAR _package _var _output_variable) | ||
| Line 22: | Line 22: | ||
macro(dbus_add_activation_service _sources) | macro(dbus_add_activation_service _sources) | ||
PKGCONFIG_GETVAR(dbus-1 session_bus_services_dir _install_dir) | PKGCONFIG_GETVAR(dbus-1 session_bus_services_dir _install_dir) | ||
| − | foreach (_i ${ | + | foreach (_i ${_sources}) |
get_filename_component(_service_file ${_i} ABSOLUTE) | get_filename_component(_service_file ${_i} ABSOLUTE) | ||
| − | string(REGEX REPLACE "\\.service.*$" " | + | string(REGEX REPLACE "\\.service.*$" ".service" _output_file ${_i}) |
set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_output_file}) | set(_target ${CMAKE_CURRENT_BINARY_DIR}/${_output_file}) | ||
| − | configure_file(${_service_file} ${ | + | configure_file(${_service_file} ${_target}) |
| − | install(FILES ${ | + | install(FILES ${_target} DESTINATION ${_install_dir}) |
endforeach (_i ${ARGN}) | endforeach (_i ${ARGN}) | ||
| − | endmacro( | + | endmacro(dbus_add_activation_service _sources) |
| − | </ | + | </syntaxhighlight> |
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)