summaryrefslogtreecommitdiff
path: root/src/tests/wayland-test-clients/meson.build
blob: ce24c3fc8b1631bd367337f8e2338e0ad994260e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
wayland_test_client_installed_tests_libexecdir = join_paths(
  mutter_installed_tests_libexecdir,
  'wayland-test-clients',
)

test_driver_server_header = custom_target(
  'test-driver server header',
  input: 'test-driver.xml',
  output: 'test-driver-server-protocol.h',
  command: [
    wayland_scanner,
    'server-header',
    '@INPUT@', '@OUTPUT@',
  ]
)

test_driver_client_header = custom_target(
  'test-driver client header',
  input: 'test-driver.xml',
  output: 'test-driver-client-protocol.h',
  command: [
    wayland_scanner,
    'client-header',
    '@INPUT@', '@OUTPUT@',
  ]
)

test_driver_protocol_code = custom_target(
  'test-driver source',
  input: 'test-driver.xml',
  output: 'test-driver-protocol.c',
  command: [
    wayland_scanner,
    'private-code',
    '@INPUT@', '@OUTPUT@',
  ]
)

common_sources = [
  'wayland-test-client-utils.c',
  'wayland-test-client-utils.h',
  wayland_protocol_client_headers,
  wayland_protocol_sources,
  test_driver_client_header,
  test_driver_protocol_code,
]

wayland_test_clients = [
  {
    'name': 'buffer-transform',
  },
  {
    'name': 'single-pixel-buffer',
  },
  {
    'name': 'subsurface-remap-toplevel',
  },
  {
    'name': 'subsurface-reparenting',
  },
  {
    'name': 'subsurface-parent-unmapped',
  },
  {
    'name': 'invalid-subsurfaces',
  },
  {
    'name': 'invalid-xdg-shell-actions',
  },
  {
    'name': 'xdg-apply-limits',
  },
  {
    'name': 'xdg-activation',
  },
  {
    'name': 'xdg-foreign',
  },
  {
    'name': 'xdg-toplevel-bounds',
  },
  {
    'name': 'fullscreen',
  },
  {
    'name': 'dma-buf-scanout',
    'extra_deps': [
      libdrm_dep,
      libgbm_dep,
    ],
  },
]

foreach test : wayland_test_clients
  test_name = test['name']
  deps = [
    glib_dep,
    gobject_dep,
    wayland_client_dep,
  ]
  if test.has_key('extra_deps')
    deps += test['extra_deps']
  endif

  executable(test_name,
    sources: [
      '@0@.c'.format(test_name),
      common_sources,
    ],
    include_directories: tests_includes,
    c_args: tests_c_args,
    dependencies: deps,
    install: have_installed_tests,
    install_dir: wayland_test_client_installed_tests_libexecdir,
  )
endforeach