~compiz-team/compiz/0.9.12

« back to all changes in this revision

Viewing changes to cmake/plugin_extensions/CompizGenGconf.cmake

  • Committer: CI Train Bot
  • Author(s): Marco Trevisan (Treviño)
  • Date: 2015-12-11 10:00:29 UTC
  • mfrom: (3988.2.3 compiz)
  • Revision ID: ci-train-bot@canonical.com-20151211100029-5tq13bj2xvpejtdv
backends: drop gconf support
Approved by: Sebastien Bacher

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
option (
2
 
    COMPIZ_DISABLE_SCHEMAS_INSTALL
3
 
    "Disables gconf schema installation with gconftool"
4
 
    OFF
5
 
)
6
 
 
7
 
set (
8
 
    COMPIZ_INSTALL_GCONF_SCHEMA_DIR ${COMPIZ_INSTALL_GCONF_SCHEMA_DIR} CACHE PATH
9
 
    "Installation path of the gconf schema file"
10
 
)
11
 
 
12
 
macro (compiz_gconf_prepare_install_dirs)
13
 
    if ("${COMPIZ_PLUGIN_INSTALL_TYPE}" STREQUAL "package")
14
 
        if (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
15
 
            set (PLUGIN_SCHEMADIR "${datadir}/gconf/schemas")
16
 
        else (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
17
 
            set (PLUGIN_SCHEMADIR "${COMPIZ_INSTALL_GCONF_SCHEMA_DIR}")
18
 
        endif (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
19
 
    elseif ("${COMPIZ_PLUGIN_INSTALL_TYPE}" STREQUAL "compiz" OR
20
 
            "$ENV{BUILD_GLOBAL}" STREQUAL "true")
21
 
        if (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
22
 
            set (PLUGIN_SCHEMADIR "${COMPIZ_PREFIX}/share/gconf/schemas")
23
 
        else (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
24
 
            set (PLUGIN_SCHEMADIR "${COMPIZ_INSTALL_GCONF_SCHEMA_DIR}")
25
 
        endif (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
26
 
    else ("${COMPIZ_PLUGIN_INSTALL_TYPE}" STREQUAL "compiz" OR
27
 
          "$ENV{BUILD_GLOBAL}" STREQUAL "true")
28
 
 
29
 
        if (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
30
 
            set (PLUGIN_SCHEMADIR "$ENV{HOME}/.gconf/schemas")
31
 
        else (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
32
 
            set (PLUGIN_SCHEMADIR "${COMPIZ_INSTALL_GCONF_SCHEMA_DIR}")
33
 
        endif (NOT COMPIZ_INSTALL_GCONF_SCHEMA_DIR)
34
 
 
35
 
    endif ("${COMPIZ_PLUGIN_INSTALL_TYPE}" STREQUAL "package")
36
 
endmacro (compiz_gconf_prepare_install_dirs)
37
 
 
38
 
function (compiz_install_gconf_schema _src _dst)
39
 
    find_program (GCONFTOOL_EXECUTABLE gconftool-2)
40
 
    mark_as_advanced (FORCE GCONFTOOL_EXECUTABLE)
41
 
 
42
 
    if (GCONFTOOL_EXECUTABLE AND NOT COMPIZ_DISABLE_SCHEMAS_INSTALL)
43
 
        install (CODE "
44
 
                if (\"\$ENV{USER}\" STREQUAL \"root\")
45
 
                    exec_program (${GCONFTOOL_EXECUTABLE}
46
 
                        ARGS \"--get-default-source\"
47
 
                        OUTPUT_VARIABLE ENV{GCONF_CONFIG_SOURCE})
48
 
                    exec_program (${GCONFTOOL_EXECUTABLE}
49
 
                        ARGS \"--makefile-install-rule ${_src} > /dev/null\")
50
 
                else (\"\$ENV{USER}\" STREQUAL \"root\")
51
 
                    exec_program (${GCONFTOOL_EXECUTABLE}
52
 
                        ARGS \"--install-schema-file=${_src} > /dev/null\")
53
 
                endif (\"\$ENV{USER}\" STREQUAL \"root\")
54
 
                ")
55
 
    endif ()
56
 
    install (
57
 
        FILES "${_src}"
58
 
        DESTINATION "${_dst}"
59
 
    )
60
 
endfunction ()
61
 
 
62
 
# generate gconf schema
63
 
find_program (XSLTPROC_EXECUTABLE xsltproc)
64
 
mark_as_advanced (FORCE XSLTPROC_EXECUTABLE)
65
 
 
66
 
if (XSLTPROC_EXECUTABLE)
67
 
    compiz_gconf_prepare_install_dirs ()
68
 
    add_custom_command (
69
 
        OUTPUT "${CMAKE_BINARY_DIR}/generated/compiz-${COMPIZ_CURRENT_PLUGIN}.schemas"
70
 
        COMMAND ${XSLTPROC_EXECUTABLE}
71
 
                -o "${CMAKE_BINARY_DIR}/generated/compiz-${COMPIZ_CURRENT_PLUGIN}.schemas"
72
 
                ${COMPIZ_GCONF_SCHEMAS_XSLT}
73
 
                ${COMPIZ_CURRENT_XML_FILE}
74
 
        DEPENDS ${COMPIZ_CURRENT_XML_FILE}
75
 
    )
76
 
 
77
 
    if (_install_plugin_${COMPIZ_CURRENT_PLUGIN})
78
 
        compiz_install_gconf_schema ("${CMAKE_BINARY_DIR}/generated/compiz-${COMPIZ_CURRENT_PLUGIN}.schemas" ${PLUGIN_SCHEMADIR})
79
 
    endif (_install_plugin_${COMPIZ_CURRENT_PLUGIN})
80
 
    list (APPEND COMPIZ_CURRENT_SOURCES_ADDS ${CMAKE_BINARY_DIR}/generated/compiz-${COMPIZ_CURRENT_PLUGIN}.schemas)
81
 
endif ()