You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

meson.build 2.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. tigervnc_srcdir = join_paths(meson.source_root(), '../..')
  2. tigervnc_builddir = tigervnc_srcdir
  3. cpp = meson.get_compiler('cpp')
  4. vnccommon_deps = [
  5. declare_dependency(
  6. dependencies: cpp.find_library('rfb', dirs: join_paths(tigervnc_builddir, 'common/rfb'))),
  7. declare_dependency(
  8. dependencies: cpp.find_library('rdr', dirs: join_paths(tigervnc_builddir, 'common/rdr'))),
  9. declare_dependency(
  10. dependencies: cpp.find_library('os', dirs: join_paths(tigervnc_builddir, 'common/os'))),
  11. declare_dependency(
  12. dependencies: cpp.find_library('network', dirs: join_paths(tigervnc_builddir, 'common/network'))),
  13. declare_dependency(
  14. dependencies: cpp.find_library('unixcommon', dirs: join_paths(tigervnc_builddir, 'unix/common'))),
  15. dependency('zlib'),
  16. dependency('pam'),
  17. dependency('gnutls'),
  18. dependency('nettle'),
  19. dependency('hogweed'),
  20. dependency('gmp'),
  21. dependency('libjpeg'),
  22. ]
  23. srcs_vnccommon = [
  24. 'qnum_to_xorgevdev.c',
  25. 'qnum_to_xorgkbd.c',
  26. 'RandrGlue.c',
  27. 'RFBGlue.cc',
  28. 'RFBGlue.h',
  29. 'vncBlockHandler.c',
  30. 'vncBlockHandler.h',
  31. 'vncExt.c',
  32. 'vncExtInit.cc',
  33. 'vncHooks.c',
  34. 'vncInput.c',
  35. 'vncInput.h',
  36. 'vncInputXKB.c',
  37. 'vncSelection.c',
  38. 'vncSelection.h',
  39. 'xorg-version.h',
  40. 'XorgGlue.c',
  41. 'XorgGlue.h',
  42. 'XserverDesktop.cc',
  43. 'XserverDesktop.h',
  44. ]
  45. vnccommon_inc = include_directories(
  46. '../../../../common',
  47. '../../../common',
  48. '../../../vncconfig',
  49. )
  50. libvnccommon = static_library(
  51. 'vnccommon',
  52. srcs_vnccommon,
  53. include_directories : [inc, vnccommon_inc],
  54. dependencies: [common_dep, vnccommon_deps],
  55. install: false,
  56. )
  57. srcs_xvnc = [
  58. 'xvnc.c',
  59. 'buildtime.c',
  60. '../../fb/fbcmap_mi.c',
  61. '../../mi/miinitext.c',
  62. '../../Xi/stubs.c',
  63. ]
  64. xvnc_inc = include_directories(
  65. '../../../../common',
  66. '../../../common',
  67. )
  68. xvnc = executable(
  69. 'Xvnc',
  70. srcs_xvnc,
  71. include_directories : [inc, xvnc_inc],
  72. dependencies: common_dep,
  73. c_args: ['-DTIGERVNC', '-DNO_MODULE_EXTS'],
  74. link_with: [
  75. libxserver,
  76. libxserver_fb,
  77. libxserver_main,
  78. libxserver_glx,
  79. libglxvnd,
  80. libxserver_xi_stubs,
  81. libxserver_xkb_stubs,
  82. libvnccommon,
  83. ],
  84. install: true,
  85. )
  86. libvnc_inc = include_directories(
  87. '../xfree86/common',
  88. '../xfree86/os-support',
  89. '../xfree86/os-support/bus'
  90. )
  91. libvnc = shared_module(
  92. 'vnc',
  93. 'vncModule.c',
  94. include_directories : [inc, xvnc_inc, libvnc_inc],
  95. dependencies: common_dep,
  96. link_with: libvnccommon,
  97. install: true,
  98. install_dir: join_paths(module_dir, 'extensions')
  99. )
  100. install_man(configure_file(
  101. input: 'Xvnc.man',
  102. output: 'Xvnc.1',
  103. configuration: manpage_config,
  104. ))