meson.build 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. add_project_arguments(['--debug', '--disable-warnings', '--enable-checking','--vapidir', vapi_dir], language: 'vala')
  2. sources = files('Manifest.vala')
  3. sources += files('Dependencies.vala')
  4. sources += files('Exectuables.vala')
  5. sources += files('File.vala')
  6. sources += files('Git.vala')
  7. sources += files('Licence.vala')
  8. sources += files('Paths.vala')
  9. sources += files('ResourceRef.vala')
  10. sources += files('Version.vala')
  11. sources += files('Resolver.vala')
  12. sources += files('Util.vala')
  13. sources += files('Transaction.vala')
  14. sources += files('Repository/Repository.vala')
  15. sources += files('Repository/RepositoryListing.vala')
  16. sources += files('Repository/RepositoryClient.vala')
  17. sources += files('Repository/GioRepositoryClient.vala')
  18. sources += files('State/State.vala')
  19. sources += files('State/CachedPackage.vala')
  20. sources += files('State/OriginInformation.vala')
  21. dependencies = [
  22. dependency('glib-2.0'),
  23. dependency('gobject-2.0'),
  24. dependency('gio-2.0'),
  25. dependency('gee-0.8'),
  26. dependency('json-glib-1.0'),
  27. dependency('invercargill'),
  28. dependency('invercargill-json'),
  29. dependency('libarchive'),
  30. meson.get_compiler('vala').find_library('libsodium', dirs: vapi_dir),
  31. meson.get_compiler('c').find_library('sodium'),
  32. ]
  33. usm = shared_library('usm', sources,
  34. dependencies: dependencies,
  35. install: true,
  36. vala_gir: 'usm-1.0.gir',
  37. install_dir: [true, true, true, true]
  38. )
  39. usm_dep = declare_dependency(link_with: usm, include_directories: include_directories('.'))
  40. pkg = import('pkgconfig')
  41. pkg.generate(usm,
  42. version : '0.1',
  43. name : 'usm',)
  44. g_ir_compiler = find_program('g-ir-compiler')
  45. custom_target('usm typelib', command: [g_ir_compiler, '--shared-library=libusm.so', '--output', '@OUTPUT@', meson.current_build_dir() / 'usm-1.0.gir'],
  46. output: 'usm-1.0.typelib',
  47. depends: usm,
  48. install: true,
  49. install_dir: get_option('libdir') / 'girepository-1.0')