1headers = files( 2 'gepub-archive.h', 3 'gepub-doc.h', 4 'gepub-text-chunk.h', 5 'gepub-widget.h', 6 'gepub.h' 7) 8 9install_headers( 10 headers, 11 subdir: gepub_lib_name 12) 13 14private_headers = files('gepub-utils.h') 15 16sources = files( 17 'gepub-archive.c', 18 'gepub-doc.c', 19 'gepub-text-chunk.c', 20 'gepub-utils.c', 21 'gepub-widget.c' 22) 23 24symbol_map = join_paths(meson.current_source_dir(), 'gepub.map') 25 26test_ldflag = '-Wl,--version-script,' + symbol_map 27ldflags = [] 28 29if cc.has_argument(test_ldflag) 30 ldflags += test_ldflag 31endif 32 33libgepub = library( 34 'gepub-'+gepub_api_version, 35 sources: sources, 36 version: libversion, 37 soversion: soversion, 38 include_directories: top_inc, 39 dependencies: gepub_deps, 40 link_args: ldflags, 41 link_depends: symbol_map, 42 install: true, 43 install_dir: gepub_libdir 44) 45 46libgepub_dep = declare_dependency( 47 link_with: libgepub, 48 include_directories: include_directories('.'), 49 dependencies: gepub_deps 50) 51 52pkg.generate( 53 libraries: libgepub, 54 version: gepub_version, 55 name: gepub_lib_name, 56 description: 'epub Documents library', 57 filebase: gepub_lib_name, 58 subdirs: gepub_lib_name, 59 requires: 'gio-2.0', 60 requires_private: [ 61 'libxml-2.0', 62 'libarchive' 63 ], 64 variables: 'exec_prefix=' + gepub_libexecdir, 65 install_dir: join_paths(get_option('libdir'), 'pkgconfig') 66) 67 68if get_option('introspection') and get_option('default_library') == 'shared' 69 gir_incs = [ 70 'GObject-2.0', 71 'libxml2-2.0', 72 'WebKit2-4.0' 73 ] 74 75 gir_extra_args = '--warn-all' 76 77 gir_dir = join_paths(gepub_datadir, '@0@-@1@'.format('gir', gepub_gir_version)) 78 typelib_dir = join_paths(gepub_libdir, '@0@-@1@'.format('girepository', gepub_gir_version)) 79 80 libgepub_gir = gnome.generate_gir( 81 libgepub, 82 header: 'gepub.h', 83 sources: sources + headers + private_headers, 84 namespace: gepub_gir_ns, 85 nsversion: gepub_api_version, 86 includes: gir_incs, 87 extra_args: gir_extra_args, 88 install: true, 89 install_dir_gir: gir_dir, 90 install_dir_typelib: typelib_dir 91 ) 92endif 93