project-meson.build 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. project('{{APP_NAME}}', ['c', 'vala'],
  2. version: '0.1',
  3. )
  4. glib_dep = dependency('glib-2.0')
  5. gobject_dep = dependency('gobject-2.0')
  6. gio_dep = dependency('gio-2.0')
  7. json_glib_dep = dependency('json-glib-1.0')
  8. libxml_dep = dependency('libxml-2.0')
  9. invercargill_dep = dependency('invercargill-1')
  10. invercargill_json_dep = dependency('invercargill-json')
  11. invercargill_sql_dep = dependency('invercargill-sql')
  12. invercargill_sql_inversion_dep = dependency('invercargill-sql-inversion')
  13. inversion_dep = dependency('inversion-0.1')
  14. astralis_dep = dependency('astralis-0.1')
  15. statum_dep = dependency('statum-0.1')
  16. spry_dep = dependency('spry-0.2')
  17. # Statum build tools — statum-mkpstm compiles pages, statum-mkres embeds
  18. # resources. Resolved from PATH at setup time.
  19. statum_mkpstm = find_program('statum-mkpstm')
  20. statum_mkres = find_program('statum-mkres')
  21. # spry:pages-begin
  22. home_page = custom_target('home-page',
  23. input: 'src/pages/home.html',
  24. output: 'HomePage.vala',
  25. command: [statum_mkpstm, '-o', '@OUTPUT@', '-n', 'HomePage', '--ns', '{{NS}}', '@INPUT@'],
  26. depend_files: files('src/pages/main.html')
  27. )
  28. # spry:pages-end
  29. # spry:resources-begin
  30. # spry:resources-end
  31. app_sources = files(
  32. # spry:sources-begin
  33. 'src/main.vala',
  34. 'src/entrypoints/HomeEntrypoint.vala',
  35. # spry:sources-end
  36. )
  37. app_generated = [
  38. # spry:generated-begin
  39. home_page,
  40. # spry:generated-end
  41. ]
  42. executable('{{APP_NAME}}',
  43. app_sources + app_generated,
  44. dependencies: [
  45. glib_dep,
  46. gobject_dep,
  47. gio_dep,
  48. json_glib_dep,
  49. libxml_dep,
  50. invercargill_dep,
  51. invercargill_json_dep,
  52. invercargill_sql_dep,
  53. invercargill_sql_inversion_dep,
  54. inversion_dep,
  55. astralis_dep,
  56. statum_dep,
  57. spry_dep,
  58. ],
  59. install: true
  60. )