xref: /aosp_15_r20/external/virglrenderer/vtest/meson.build (revision bbecb9d118dfdb95f99bd754f8fa9be01f189df3)
1*bbecb9d1SAndroid Build Coastguard Worker#############################################################################
2*bbecb9d1SAndroid Build Coastguard Worker#
3*bbecb9d1SAndroid Build Coastguard Worker# Copyright (C) 2019 Collabora Ltd
4*bbecb9d1SAndroid Build Coastguard Worker#
5*bbecb9d1SAndroid Build Coastguard Worker# Permission is hereby granted, free of charge, to any person obtaining a
6*bbecb9d1SAndroid Build Coastguard Worker# copy of this software and associated documentation files (the "Software"),
7*bbecb9d1SAndroid Build Coastguard Worker# to deal in the Software without restriction, including without limitation
8*bbecb9d1SAndroid Build Coastguard Worker# the rights to use, copy, modify, merge, publish, distribute, sublicense,
9*bbecb9d1SAndroid Build Coastguard Worker# and/or sell copies of the Software, and to permit persons to whom the
10*bbecb9d1SAndroid Build Coastguard Worker# Software is furnished to do so, subject to the following conditions:
11*bbecb9d1SAndroid Build Coastguard Worker#
12*bbecb9d1SAndroid Build Coastguard Worker# The above copyright notice and this permission notice shall be included
13*bbecb9d1SAndroid Build Coastguard Worker# in all copies or substantial portions of the Software.
14*bbecb9d1SAndroid Build Coastguard Worker#
15*bbecb9d1SAndroid Build Coastguard Worker# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
16*bbecb9d1SAndroid Build Coastguard Worker# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17*bbecb9d1SAndroid Build Coastguard Worker# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18*bbecb9d1SAndroid Build Coastguard Worker# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
19*bbecb9d1SAndroid Build Coastguard Worker# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
20*bbecb9d1SAndroid Build Coastguard Worker# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
21*bbecb9d1SAndroid Build Coastguard Worker# OTHER DEALINGS IN THE SOFTWARE.
22*bbecb9d1SAndroid Build Coastguard Worker#
23*bbecb9d1SAndroid Build Coastguard Worker
24*bbecb9d1SAndroid Build Coastguard Workervirgl_test_server_sources = [
25*bbecb9d1SAndroid Build Coastguard Worker   'util.c',
26*bbecb9d1SAndroid Build Coastguard Worker   'util.h',
27*bbecb9d1SAndroid Build Coastguard Worker   'vtest_shm.c',
28*bbecb9d1SAndroid Build Coastguard Worker   'vtest_shm.h',
29*bbecb9d1SAndroid Build Coastguard Worker   'vtest_server.c',
30*bbecb9d1SAndroid Build Coastguard Worker   'vtest_renderer.c',
31*bbecb9d1SAndroid Build Coastguard Worker   'vtest_protocol.h',
32*bbecb9d1SAndroid Build Coastguard Worker   'vtest.h'
33*bbecb9d1SAndroid Build Coastguard Worker]
34*bbecb9d1SAndroid Build Coastguard Worker
35*bbecb9d1SAndroid Build Coastguard Worker
36*bbecb9d1SAndroid Build Coastguard Workervirgl_test_server = executable(
37*bbecb9d1SAndroid Build Coastguard Worker   'virgl_test_server',
38*bbecb9d1SAndroid Build Coastguard Worker   virgl_test_server_sources,
39*bbecb9d1SAndroid Build Coastguard Worker   dependencies : [libvirglrenderer_dep, gallium_dep],
40*bbecb9d1SAndroid Build Coastguard Worker   install : true
41*bbecb9d1SAndroid Build Coastguard Worker)
42*bbecb9d1SAndroid Build Coastguard Worker
43*bbecb9d1SAndroid Build Coastguard Workerif with_fuzzer
44*bbecb9d1SAndroid Build Coastguard Worker   assert(cc.has_argument('-fsanitize=fuzzer'),
45*bbecb9d1SAndroid Build Coastguard Worker          'Fuzzer enabled but compiler does not support "-fsanitize=fuzzer"')
46*bbecb9d1SAndroid Build Coastguard Worker
47*bbecb9d1SAndroid Build Coastguard Worker   vtest_obj = virgl_test_server.extract_objects(['util.c',
48*bbecb9d1SAndroid Build Coastguard Worker                                                  'vtest_shm.c',
49*bbecb9d1SAndroid Build Coastguard Worker                                                  'vtest_renderer.c'
50*bbecb9d1SAndroid Build Coastguard Worker                                                 ])
51*bbecb9d1SAndroid Build Coastguard Worker
52*bbecb9d1SAndroid Build Coastguard Worker   vtest_fuzzer = executable(
53*bbecb9d1SAndroid Build Coastguard Worker      'vtest_fuzzer',
54*bbecb9d1SAndroid Build Coastguard Worker      'vtest_fuzzer.c',
55*bbecb9d1SAndroid Build Coastguard Worker      c_args : [ '-fsanitize=fuzzer' ],
56*bbecb9d1SAndroid Build Coastguard Worker      link_args : [ '-fsanitize=fuzzer' ],
57*bbecb9d1SAndroid Build Coastguard Worker      objects : vtest_obj,
58*bbecb9d1SAndroid Build Coastguard Worker      dependencies : libvirglrenderer_dep
59*bbecb9d1SAndroid Build Coastguard Worker   )
60*bbecb9d1SAndroid Build Coastguard Workerendif
61