meson.build 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. vapi_dir = meson.current_source_dir() / 'vapi'
  2. add_project_arguments(['--disable-warnings', '--enable-checking','--vapidir', vapi_dir], language: 'vala')
  3. dependencies = [
  4. dependency('glib-2.0'),
  5. dependency('gobject-2.0'),
  6. dependency('gio-2.0'),
  7. dependency('gtk4'),
  8. meson.get_compiler('vala').find_library('libcmark', dirs: vapi_dir),
  9. meson.get_compiler('c').find_library('cmark'),
  10. ]
  11. sources = files('Reader.vala')
  12. sources += files('TagManager.vala')
  13. sources += files('NodeActions/NodeAction.vala')
  14. sources += files('NodeActions/Heading.vala')
  15. sources += files('NodeActions/Emphisis.vala')
  16. sources += files('NodeActions/Strong.vala')
  17. sources += files('NodeActions/List.vala')
  18. sources += files('NodeActions/Item.vala')
  19. libgtkcmark = shared_library('gtkcommonmark', sources,
  20. dependencies: dependencies,
  21. install: true,
  22. vala_gir: 'GtkCommonMark-1.0.gir',
  23. install_dir: [true, true, true, true]
  24. )
  25. libgtkcmark_dep = declare_dependency(link_with: libgtkcmark, include_directories: include_directories('.'))
  26. pkg = import('pkgconfig')
  27. pkg.generate(libgtkcmark,
  28. version : '0.1',
  29. name : 'libgtkcommonmark',)
  30. g_ir_compiler = find_program('g-ir-compiler')
  31. custom_target('gtkcommonmark typelib', command: [g_ir_compiler, '--shared-library=libgtkcommonmark.so', '--output', '@OUTPUT@', meson.current_build_dir() / 'GtkCommonMark-1.0.gir'],
  32. output: 'GtkCommonMark-1.0.typelib',
  33. depends: libgtkcmark,
  34. install: true,
  35. install_dir: get_option('libdir') / 'girepository-1.0')