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
|
panels_list += cappletname
desktop = 'gnome-@0@-panel.desktop'.format(cappletname)
desktop_in = configure_file(
input: desktop + '.in.in',
output: desktop + '.in',
configuration: desktop_conf
)
i18n.merge_file(
type: 'desktop',
input: desktop_in,
output: desktop,
po_dir: po_dir,
install: true,
install_dir: control_center_desktopdir
)
polkit = 'org.gnome.controlcenter.@0@.policy'.format(cappletname)
i18n.merge_file(
input: polkit + '.in',
output: polkit,
po_dir: po_dir,
install: true,
install_dir: join_paths(control_center_datadir, 'polkit-1', 'actions')
)
resource_data = files(
'data/bg_dim.png',
'data/bg.png',
'data/pin.png',
'backward',
'cc-datetime-panel.ui',
)
resources = gnome.compile_resources(
'cc-' + cappletname + '-resources',
cappletname + '.gresource.xml',
c_name: 'cc_' + cappletname,
dependencies: resource_data,
export: true
)
sources = files(
'cc-datetime-panel.c',
'cc-timezone-map.c',
'date-endian.c',
'tz.c'
)
gdbus = 'timedated'
gdbus_iface_xml = gdbus + '1-interface.xml'
# This requires running d-bus session and accessible timedate1 daemon
# FIXME: need to find a way how to filter out unnecessary d-bus stuff (introspectable, properties)
#timedated1-interface.xml:
# gdbus introspect \
# --xml \
# --system \
# --dest org.freedesktop.timedate1 \
# --object-path /org/freedesktop/timedate1 \
# > timedated1-interface.xml
'''
gdbus_iface = custom_target(
gdbus_iface_xml,
output: gdbus_iface_xml,
capture: true,
command: [
find_program('gdbus'),
'introspect',
'--xml',
'--system',
'--dest', 'org.freedesktop.timedate1',
'--object-path', '/org/freedesktop/timedate1'
],
)
'''
sources += gnome.gdbus_codegen(
gdbus,
gdbus_iface_xml,
interface_prefix: 'org.freedesktop.'
)
deps = common_deps + [
gdk_pixbuf_dep,
gnome_desktop_dep,
polkit_gobject_dep
]
cflags += [
'-DGNOMECC_DATA_DIR="@0@"'.format(control_center_pkgdatadir)
]
datetime_panel_lib = static_library(
cappletname,
sources: sources + resources,
include_directories: [ top_inc, common_inc ],
dependencies: deps,
c_args: cflags
)
panels_libs += datetime_panel_lib
datetime_panel_lib_dep = declare_dependency(
sources : resources,
include_directories : [top_inc, include_directories('.')],
link_with : datetime_panel_lib
)
subdir('po-timezones')
subdir('icons')
|