File: meson.build

package info (click to toggle)
ghex 48.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 4,952 kB
  • sloc: ansic: 13,161; xml: 72; sh: 38; makefile: 7
file content (105 lines) | stat: -rw-r--r-- 2,507 bytes parent folder | download
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
if get_option('development')
  app_name = 'GHex (Development)'
else    
  app_name = 'GHex'
endif

desktop_file_in_config = configuration_data()
desktop_file_in_config.set('app_id', app_id)
desktop_file_in_config.set('app_name', app_name)

desktop_file_in = configure_file(
          input: 'org.gnome.GHex.desktop.in.in',
         output: '@0@.desktop.in'.format(app_id),
  configuration: desktop_file_in_config,
)

desktop_file = i18n.merge_file(
  input: desktop_file_in,
  output: '@0@.desktop'.format(app_id),
  po_dir: ghex_po_dir,
  type: 'desktop',
  install_dir: ghex_applicationsdir,
  install: true
)

desktop_file_validate_prg = find_program(
  'desktop-file-validate',
  required: false
)

if desktop_file_validate_prg.found()
  test(
    'Validate desktop file',
    desktop_file_validate_prg,
    args: [desktop_file]
  )
endif

pkg_conf = configuration_data()
pkg_conf.set('prefix', ghex_prefix)
pkg_conf.set('exec_prefix', ghex_prefix)
pkg_conf.set('libdir', ghex_libdir)
pkg_conf.set('includedir', ghex_includedir)

pkg_conf.set('LIBGTKHEX_VERSION', libgtkhex_version)

configure_file(
  input: 'gtkhex-4.pc.in',
  output: 'gtkhex-4.pc',
  configuration: pkg_conf,
  install_dir: ghex_pkgconfigdir,
  install: true
)

schema_conf = configuration_data()
schema_conf.set('shaded_box_max', shaded_box_max)
schema_conf.set('app_id', app_id)
schema_conf.set('resource_base_path', resource_base_path)

configure_file(
  input: 'org.gnome.GHex.gschema.xml.in',
  output: '@0@.gschema.xml'.format(app_id),
  configuration: schema_conf,
  install_dir: ghex_schemasdir,
  install: true
)

metainfo_in_conf = configuration_data()
metainfo_in_conf.set('app_id', app_id)
metainfo_in = configure_file(
  input: 'org.gnome.GHex.metainfo.xml.in.in',
  output: '@0@.metainfo.xml.in'.format(app_id),
  configuration: metainfo_in_conf,
)

metainfo = i18n.merge_file(
  input: metainfo_in,
  output: '@0@.metainfo.xml'.format(app_id),
  po_dir: ghex_po_dir,
  install_dir: ghex_metainfodir,
  install: true
)

appstreamcli_prg = find_program(
  'appstreamcli',
  required: false
)

if appstreamcli_prg.found()
  test(
    'Validate appstream file',
    appstreamcli_prg,
    args: ['validate', '--no-net', '--explain', metainfo]
  )
endif

service_conf = configuration_data()
service_conf.set('app_id', app_id)
service_conf.set('bindir', ghex_bindir)
configure_file(
  input: 'org.gnome.GHex.service.in',
  output: '@0@.service'.format(app_id),
  configuration: service_conf,
  install_dir: ghex_servicedir
)