meson.build 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. # Copyright 2016-2020 Daniel 'grindhold' Brendle
  2. #
  3. # This file is part of panlateral.
  4. #
  5. # panlateral is free software: you can redistribute it and/or
  6. # modify it under the terms of the GNU Lesser General Public License
  7. # as published by the Free Software Foundation, either
  8. # version 3 of the License, or (at your option) any later
  9. # version.
  10. #
  11. # panlateral is distributed in the hope that it will be
  12. # useful, but WITHOUT ANY WARRANTY; without even the implied
  13. # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  14. # PURPOSE. See the GNU Lesser General Public License for more details.
  15. #
  16. # You should have received a copy of the GNU Lesser General Public
  17. # License along with panlateral.
  18. # If not, see http://www.gnu.org/licenses/.
  19. project('rainbow-lollipop', 'vala', 'c')
  20. vapi_dir = meson.current_source_dir()+'/vapi'
  21. add_project_arguments(['--vapidir', vapi_dir], language: 'vala')
  22. pkgconfig = import('pkgconfig')
  23. glib = dependency('glib-2.0')
  24. gtk = dependency('gtk+-3.0')
  25. clutter = dependency('clutter-1.0')
  26. clutter_gtk = dependency('clutter-gtk-1.0')
  27. webkit2gtk = dependency('webkit2gtk-4.0')
  28. webkit2gtk_ext = dependency('webkit2gtk-web-extension-4.0')
  29. gee = dependency('gee-0.8')
  30. zmq = meson.get_compiler('c').find_library('libzmq')
  31. math = meson.get_compiler('c').find_library('m')
  32. sqlite3 = dependency('sqlite3')
  33. httpseverywhere = dependency('httpseverywhere-0.8')
  34. rl_sources = [
  35. 'src/track.vala',
  36. 'src/database.vala',
  37. 'src/empty_track.vala',
  38. 'src/alaia.vala',
  39. 'src/history_track.vala',
  40. 'src/tracklist.vala',
  41. 'src/nodes.vala',
  42. 'src/site_node.vala',
  43. 'src/download_node.vala',
  44. 'src/config.vala',
  45. 'src/ipc.vala',
  46. 'src/ipc_protocol.vala',
  47. 'src/session_select.vala',
  48. 'src/authentication_dialog.vala',
  49. 'src/history.vala',
  50. 'src/searchengine.vala',
  51. 'src/search_widget.vala',
  52. 'src/error_node.vala',
  53. 'src/application_states.vala',
  54. 'src/config_dialog.vala',
  55. 'src/context_menu.vala',
  56. 'src/input_handlers.vala',
  57. 'src/loading_indicator.vala',
  58. 'src/focus.vala',
  59. 'src/trackwebview.vala'
  60. ]
  61. rl_deps = [
  62. math, glib, gtk, clutter, clutter_gtk, webkit2gtk, gee, zmq, sqlite3, httpseverywhere
  63. ]
  64. rl_ext_sources = [
  65. 'src/alaia_extension.vala',
  66. 'src/ipc_protocol.vala'
  67. ]
  68. rl_ext_deps = [
  69. math, glib, webkit2gtk_ext, gee, zmq
  70. ]
  71. rl_ext = shared_library('rainbow-lollipop-extension', rl_ext_sources,
  72. dependencies: rl_ext_deps,
  73. vala_args:['--pkg', 'libzmq']
  74. )
  75. rl = executable('rainbow-lollipop', rl_sources,
  76. dependencies: rl_deps,
  77. vala_args:['--pkg', 'libzmq'],
  78. c_args: ['-DGETTEXT_PACKAGE="rainbow-lollipop"']
  79. )