12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- # - try to find gobject-introspection
- #
- # Once done this will define
- #
- # INTROSPECTION_FOUND - system has gobject-introspection
- # INTROSPECTION_SCANNER - the gobject-introspection scanner, g-ir-scanner
- # INTROSPECTION_COMPILER - the gobject-introspection compiler, g-ir-compiler
- # INTROSPECTION_GENERATE - the gobject-introspection generate, g-ir-generate
- # INTROSPECTION_GIRDIR
- # INTROSPECTION_TYPELIBDIR
- # INTROSPECTION_CFLAGS
- # INTROSPECTION_LIBS
- #
- # Copyright (C) 2010, Pino Toscano, <pino@kde.org>
- #
- # Redistribution and use is allowed according to the terms of the BSD license.
- # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
- macro(_GIR_GET_PKGCONFIG_VAR _outvar _varname)
- execute_process(
- COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=${_varname} gobject-introspection-1.0
- OUTPUT_VARIABLE _result
- RESULT_VARIABLE _null
- )
- if (_null)
- else()
- string(REGEX REPLACE "[\r\n]" " " _result "${_result}")
- string(REGEX REPLACE " +$" "" _result "${_result}")
- separate_arguments(_result)
- set(${_outvar} ${_result} CACHE INTERNAL "")
- endif()
- endmacro(_GIR_GET_PKGCONFIG_VAR)
- find_package(PkgConfig)
- if(PKG_CONFIG_FOUND)
- if(PACKAGE_FIND_VERSION_COUNT GREATER 0)
- set(_gir_version_cmp ">=${PACKAGE_FIND_VERSION}")
- endif()
- pkg_check_modules(_pc_gir gobject-introspection-1.0${_gir_version_cmp})
- if(_pc_gir_FOUND)
- set(INTROSPECTION_FOUND TRUE)
- _gir_get_pkgconfig_var(INTROSPECTION_SCANNER "g_ir_scanner")
- _gir_get_pkgconfig_var(INTROSPECTION_COMPILER "g_ir_compiler")
- _gir_get_pkgconfig_var(INTROSPECTION_GENERATE "g_ir_generate")
- _gir_get_pkgconfig_var(INTROSPECTION_GIRDIR "girdir")
- _gir_get_pkgconfig_var(INTROSPECTION_TYPELIBDIR "typelibdir")
- set(INTROSPECTION_CFLAGS "${_pc_gir_CFLAGS}")
- set(INTROSPECTION_LIBS "${_pc_gir_LIBS}")
- endif()
- endif()
- mark_as_advanced(
- INTROSPECTION_SCANNER
- INTROSPECTION_COMPILER
- INTROSPECTION_GENERATE
- INTROSPECTION_GIRDIR
- INTROSPECTION_TYPELIBDIR
- INTROSPECTION_CFLAGS
- INTROSPECTION_LIBS
- )
|