meson.build 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. sources = files(
  2. 'Spry.vala',
  3. 'ResponseState.vala',
  4. 'Component.vala',
  5. 'PageComponent.vala',
  6. 'PageTemplate.vala',
  7. 'ComponentFactory.vala',
  8. 'Renderable.vala',
  9. 'ComponentEndpoint.vala',
  10. 'Context.vala',
  11. 'PathProvider.vala',
  12. 'ContinuationProvider.vala',
  13. 'ContinuationContext.vala',
  14. 'CryptographyProvider.vala',
  15. 'ComponentContextService.vala',
  16. 'Static/StaticResource.vala',
  17. 'Static/MemoryStaticResource.vala',
  18. 'Static/FileStaticResource.vala',
  19. 'Static/ConstantStaticResource.vala',
  20. 'Static/StaticResourceProvider.vala',
  21. 'Static/HtmxResource.vala',
  22. 'Static/HtmxSseResource.vala',
  23. 'Authorisation/AuthorisationError.vala',
  24. 'Authorisation/AuthorisationToken.vala',
  25. 'Authorisation/Identity.vala',
  26. 'Authorisation/IdentityProvider.vala',
  27. 'Authorisation/PermissionMatcher.vala',
  28. 'Authorisation/AuthorisationContext.vala',
  29. 'Authorisation/AuthorisationPipelineComponent.vala',
  30. 'Authorisation/AuthorisationService.vala',
  31. 'Authentication/UserEntity.vala',
  32. 'Authentication/UserPermissionEntity.vala',
  33. 'Authentication/UserProjection.vala',
  34. 'Authentication/UserService.vala',
  35. 'Authentication/UserIdentityProvider.vala',
  36. 'Authentication/AuthenticationModule.vala',
  37. 'Authentication/Migrations/M0001_Initial.vala',
  38. 'Authentication/Components/LoginComponent.vala',
  39. 'Authentication/Components/UserManagementComponent.vala',
  40. 'Authentication/Components/UserComponent.vala',
  41. 'Authentication/Components/UserEditComponent.vala',
  42. )
  43. library_version = meson.project_version()
  44. libspry = shared_library('spry-@0@'.format(library_version),
  45. sources,
  46. dependencies: [glib_dep, gobject_dep, gio_dep, invercargill_dep, invercargill_json_dep, json_glib_dep, inversion_dep, libxml_dep, astralis_dep, sodium_deps, invercargill_sql_dep, sqlite_dep, invercargill_sql_inversion_dep],
  47. install: true,
  48. vala_gir: 'spry-@0@.gir'.format(library_version),
  49. install_dir: [true, true, true, true]
  50. )
  51. pkg = import('pkgconfig')
  52. pkg.generate(libspry,
  53. version : library_version,
  54. name : 'spry-@0@'.format(library_version))
  55. # g_ir_compiler = find_program('g-ir-compiler')
  56. # custom_target('spry typelib', command: [g_ir_compiler, '--shared-library=libspry-@0@.so'.format(library_version), '--output', '@OUTPUT@', meson.current_build_dir() / 'spry-@0@.gir'.format(library_version)],
  57. # output: 'libspry-@0@.typelib'.format(library_version),
  58. # depends: libspry,
  59. # install: true,
  60. # install_dir: get_option('libdir') / 'girepository-1.0')
  61. spry_dep = declare_dependency(
  62. link_with: libspry,
  63. include_directories: include_directories('.'),
  64. dependencies: [glib_dep, gobject_dep, gio_dep, invercargill_dep, invercargill_json_dep, json_glib_dep, inversion_dep, libxml_dep]
  65. )