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 127 128 129 130 131 132 133 134 135 136 137 138 139
|
libview_inc = include_directories('.')
include_subdir = join_paths(ev_include_subdir, 'libview')
headers = files(
'ev-document-model.h',
'ev-job-scheduler.h',
'ev-jobs.h',
'ev-print-operation.h',
'ev-stock-icons.h',
'ev-view-presentation.h',
'ev-view.h',
)
install_headers(
headers,
subdir: include_subdir,
)
sources = files(
'ev-annotation-window.c',
'ev-color-contrast.c',
'ev-document-model.c',
'ev-form-field-accessible.c',
'ev-image-accessible.c',
'ev-jobs.c',
'ev-job-scheduler.c',
'ev-link-accessible.c',
'ev-page-accessible.c',
'ev-page-cache.c',
'ev-pixbuf-cache.c',
'ev-print-operation.c',
'ev-stock-icons.c',
'ev-timeline.c',
'ev-transition-animation.c',
'ev-view.c',
'ev-view-accessible.c',
'ev-view-cursor.c',
'ev-view-presentation.c',
)
marshal = 'ev-view-marshal'
marshal_sources = gnome.genmarshal(
marshal,
sources: marshal + '.list',
prefix: 'ev_view_marshal',
internal: true,
extra_args: '--prototypes',
)
enum_types = 'ev-view-type-builtins'
enum_sources = gnome.mkenums(
enum_types,
sources: headers,
h_template: enum_types + '.h.template',
c_template: enum_types + '.c.template',
install_header: true,
install_dir: join_paths(ev_includedir, include_subdir),
)
deps = [
gspell_dep,
gstreamer_base_dep,
gstreamer_dep,
gstreamer_video_dep,
gtk_unix_print_dep,
gthread_dep,
libevdocument_dep,
m_dep,
]
cflags = [
'-DG_LOG_DOMAIN="EvinceView"',
'-DEVINCEDATADIR="@0@"'.format(ev_pkgdatadir),
'-DEVINCE_COMPILATION'
]
if enable_multimedia
sources += files('ev-media-player.c')
endif
libevview = shared_library(
'evview3',
version: ev_view_version,
sources: sources + marshal_sources + enum_sources,
include_directories: top_inc,
dependencies: deps,
c_args: cflags,
install: true,
gnu_symbol_visibility: 'hidden',
)
libevview_dep = declare_dependency(
sources: headers + [enum_sources[1]],
include_directories: libview_inc,
dependencies: deps,
link_with: libevview,
)
pkg.generate(
libevview,
filebase: 'evince-view-' + ev_api_version,
name: 'Evince View',
description: 'GNOME document viewer view library',
subdirs: ev_include_subdir,
requires: [
'evince-document-@0@ = @1@'.format(ev_api_version, ev_version),
gthread_dep,
],
variables: 'exec_prefix=${prefix}',
)
# GObject Introspection
if enable_introspection
incs = [
'Gdk-3.0',
'GdkPixbuf-2.0',
'Gio-2.0',
'GLib-2.0',
'GObject-2.0',
'Gtk-3.0',
libevdocument_gir[0],
]
libevview_gir = gnome.generate_gir(
[libevview, libevdocument],
sources: sources + headers + [enum_sources[1]],
includes: incs,
nsversion: ev_api_version,
namespace: 'EvinceView',
identifier_prefix: ev_code_prefix,
symbol_prefix: ev_code_prefix.to_lower(),
export_packages: 'evince-view-' + ev_api_version,
extra_args: '-DEVINCE_COMPILATION',
install: true,
)
endif
|