[go: up one dir, main page]

File: meson.build

package info (click to toggle)
libgxps 0.3.1-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 1,168 kB
  • sloc: ansic: 10,622; xml: 999; sh: 18; makefile: 15
file content (120 lines) | stat: -rw-r--r-- 3,600 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
headers = [
  'gxps.h',
  'gxps-core-properties.h',
  'gxps-document.h',
  'gxps-document-structure.h',
  'gxps-error.h',
  'gxps-file.h',
  'gxps-links.h',
  'gxps-page.h',
]

private_headers = [
  'gxps-archive.h',
  'gxps-brush.h',
  'gxps-color.h',
  'gxps-debug.h',
  'gxps-fonts.h',
  'gxps-glyphs.h',
  'gxps-images.h',
  'gxps-matrix.h',
  'gxps-page-private.h',
  'gxps-parse-utils.h',
  'gxps-path.h',
  'gxps-private.h',
  'gxps-resources.h',
]

introspection_sources = [
  'gxps-brush.c',
  'gxps-color.c',
  'gxps-core-properties.c',
  'gxps-debug.c',
  'gxps-document.c',
  'gxps-document-structure.c',
  'gxps-error.c',
  'gxps-file.c',
  'gxps-glyphs.c',
  'gxps-links.c',
  'gxps-matrix.c',
  'gxps-page.c',
  'gxps-path.c',
]

sources = [
  'gxps-archive.c',
  'gxps-fonts.c',
  'gxps-images.c',
  'gxps-parse-utils.c',
  'gxps-resources.c',
]

sources += introspection_sources

version_data = configuration_data()
version_data.set('GXPS_MAJOR_VERSION', gxps_major_version)
version_data.set('GXPS_MINOR_VERSION', gxps_minor_version)
version_data.set('GXPS_MICRO_VERSION', gxps_micro_version)
version_data.set('PACKAGE_VERSION', meson.project_version())

gxps_version_h = configure_file(input: 'gxps-version.h.in',
                                output: 'gxps-version.h',
                                install_dir: gxps_headers_installdir,
                                install: true,
                                configuration: version_data)

install_headers(headers, subdir: 'libgxps')

gxps_deps = [ glib_dep, gobject_dep, gio_dep, cairo_dep, cairo_pdf_dep, cairo_ps_dep, cairo_svg_dep, archive_dep, freetype_dep, png_dep, lcms2_dep, jpeg_dep, tiff_dep, libm_dep ]

common_ldflags = []

if host_system == 'linux'
  common_ldflags = [ '-Wl,-Bsymbolic' ]
endif

gxps = shared_library('gxps',
                      include_directories: core_inc,
                      sources: sources + headers + private_headers + [ gxps_version_h ],
                      soversion: soversion,
                      version: libversion,
                      install: true,
                      dependencies: gxps_deps,
                      c_args: extra_args + common_flags + [
                        '-DG_LOG_DOMAIN="GXPS"',
                        '-DGXPS_COMPILATION',
                      ],
                      link_args: common_ldflags)

# Internal dependency, for tests
gxps_inc = include_directories([ '.' ])
gxps_dep = declare_dependency(link_with: gxps,
                              include_directories: [ gxps_inc, core_inc ],
                              dependencies: gxps_deps)

# Generate the pkg-config file
pkgg = import('pkgconfig')

pkgg.generate(libraries: gxps,
              version: gxps_version,
              name: 'libgxps',
              description: 'XPS Documents library',
              requires: 'gobject-2.0 >= ' + glib_req + ', gio-2.0 >= ' + glib_req + ', libarchive >= ' + archive_req + ', cairo >= ' + cairo_req)

if build_gir
  gir_extra_args = [
    '--identifier-prefix=GXPS',
    '--c-include=gxps.h'
  ]
  gnome.generate_gir(gxps,
                     sources: introspection_sources + headers + [ gxps_version_h ],
                     namespace: 'GXPS',
                     nsversion: apiversion,
                     identifier_prefix: 'Gxps',
                     symbol_prefix: 'gxps',
                     includes: [ 'GObject-2.0', 'GLib-2.0', 'Gio-2.0', 'cairo-1.0' ],
                     install: true,
                     extra_args: gir_extra_args + [
                       '-DGXPS_COMPILATION',
                     ])
endif