1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
common_inc = include_directories('.')
common_sources = []
enums = 'gsd-common-enums'
enums_header = files('gsd-device-manager.h')
common_sources += gnome.mkenums(
enums + '.h',
sources: enums_header,
fhead: '#pragma once\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n',
fprod: '/* enumerations from "@filename@" */\n',
vhead: 'GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define GSD_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n',
ftail: 'G_END_DECLS\n'
)
common_sources += gnome.mkenums(
enums + '.c',
sources: enums_header,
fhead: '#include "gsd-device-manager.h"\n#include "gsd-common-enums.h"\n',
fprod: '\n/* enumerations from "@filename@" */',
vhead: 'GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {',
vprod: ' { @VALUENAME@, "@VALUENAME@", "@valuenick@" },',
vtail: ' { 0, NULL, NULL }\n };\n etype = g_@type@_register_static ("@EnumName@", values);\n }\n return etype;\n}\n'
)
generates_sources_dep = declare_dependency(
sources: common_sources,
)
sources = files(
'cc-hostname-entry.c',
'cc-time-entry.c',
'hostname-helper.c',
)
libwidgets = static_library(
'widgets',
sources: sources,
include_directories: top_inc,
dependencies: common_deps + [ generates_sources_dep, polkit_gobject_dep ]
)
libwidgets_dep = declare_dependency(
include_directories: common_inc,
link_with: libwidgets
)
sources = common_sources + files(
'cc-common-language.c',
'cc-language-chooser.c',
'cc-language-row.c',
'cc-list-row.c',
'cc-time-editor.c',
'cc-permission-infobar.c',
'cc-util.c'
)
resource_data = files(
'cc-language-chooser.ui',
'cc-language-row.ui',
'cc-list-row.ui',
'cc-time-editor.ui',
'cc-permission-infobar.ui',
)
sources += gnome.compile_resources(
'cc-common-resources',
'common.gresource.xml',
c_name: 'cc_common',
dependencies: resource_data,
export: true
)
deps = common_deps + [
generates_sources_dep,
gnome_desktop_dep,
dependency('fontconfig')
]
liblanguage = static_library(
'language',
sources: sources,
include_directories: top_inc,
dependencies: deps
)
liblanguage_dep = declare_dependency(
include_directories: common_inc,
link_with: liblanguage
)
gsd_headers = [
'gsd-device-manager.h',
'gsd-input-helper.h'
]
gsd_sources = [
'gsd-device-manager.c',
'gsd-input-helper.c'
]
sources = common_sources + files(gsd_sources)
deps = common_deps + [ gudev_dep ]
libdevice = static_library(
'device',
sources: sources,
include_directories: top_inc,
dependencies: deps
)
libdevice_dep = declare_dependency(
include_directories: common_inc,
link_with: libdevice
)
polkit_conf = configuration_data()
polkit_conf.set('PRIVILEGED_GROUP', get_option('privileged_group'))
configure_file(
input: 'gnome-control-center.rules.in',
output: 'gnome-control-center.rules',
configuration: polkit_conf,
install_dir: join_paths(control_center_datadir, 'polkit-1', 'rules.d')
)
|