2019-06-18 19:16:21 +01:00
|
|
|
# Copyright © 2018 Rob Clark
|
|
|
|
# Copyright © 2019 Collabora
|
|
|
|
|
|
|
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
|
# of this software and associated documentation files (the "Software"), to deal
|
|
|
|
# in the Software without restriction, including without limitation the rights
|
|
|
|
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
|
|
# copies of the Software, and to permit persons to whom the Software is
|
|
|
|
# furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
# The above copyright notice and this permission notice shall be included in
|
|
|
|
# all copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
|
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
|
|
# SOFTWARE.
|
|
|
|
|
2019-07-10 18:33:24 +01:00
|
|
|
inc_panfrost_hw = include_directories([
|
|
|
|
'include'
|
|
|
|
])
|
|
|
|
|
|
|
|
inc_panfrost = include_directories([
|
2022-12-29 19:37:06 +00:00
|
|
|
'.', 'include', 'shared', 'midgard', 'compiler', 'lib'
|
2019-07-10 18:33:24 +01:00
|
|
|
])
|
2019-06-18 19:16:21 +01:00
|
|
|
|
2022-03-26 02:48:52 +00:00
|
|
|
compile_args_panfrost = [
|
|
|
|
'-Wno-pointer-arith'
|
|
|
|
]
|
|
|
|
|
2019-06-18 19:16:21 +01:00
|
|
|
subdir('shared')
|
2020-03-10 00:19:29 +00:00
|
|
|
subdir('util')
|
2019-07-10 18:33:24 +01:00
|
|
|
subdir('midgard')
|
2022-12-29 19:37:06 +00:00
|
|
|
subdir('compiler')
|
2021-07-21 20:14:17 +01:00
|
|
|
|
|
|
|
if with_gallium_panfrost or with_panfrost_vk
|
|
|
|
subdir('lib')
|
|
|
|
subdir('perf')
|
|
|
|
endif
|
2019-07-10 18:33:24 +01:00
|
|
|
|
|
|
|
files_bifrost = files(
|
2022-12-29 19:37:06 +00:00
|
|
|
'compiler/cmdline.c',
|
2019-07-10 18:33:24 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
bifrost_compiler = executable(
|
|
|
|
'bifrost_compiler',
|
2021-07-21 20:14:17 +01:00
|
|
|
[files_bifrost],
|
2019-07-10 18:33:24 +01:00
|
|
|
include_directories : [
|
2019-03-05 16:21:47 +00:00
|
|
|
inc_mapi,
|
|
|
|
inc_mesa,
|
|
|
|
inc_gallium,
|
|
|
|
inc_gallium_aux,
|
2019-07-10 18:33:24 +01:00
|
|
|
inc_include,
|
|
|
|
inc_src,
|
|
|
|
inc_panfrost,
|
2020-03-24 17:24:03 +00:00
|
|
|
inc_panfrost_hw,
|
2019-07-10 18:33:24 +01:00
|
|
|
],
|
|
|
|
dependencies : [
|
2019-07-22 14:50:15 +01:00
|
|
|
idep_nir,
|
|
|
|
idep_mesautil,
|
2021-03-19 18:17:54 +00:00
|
|
|
idep_bi_opcodes_h,
|
2020-03-24 17:24:03 +00:00
|
|
|
dep_libdrm,
|
2019-07-10 18:33:24 +01:00
|
|
|
],
|
|
|
|
link_with : [
|
|
|
|
libglsl_standalone,
|
2020-03-24 17:24:03 +00:00
|
|
|
libpanfrost_bifrost,
|
2019-07-10 18:33:24 +01:00
|
|
|
],
|
2020-04-24 09:20:25 +01:00
|
|
|
build_by_default : with_tools.contains('panfrost')
|
2019-07-10 18:33:24 +01:00
|
|
|
)
|
2019-07-16 18:20:49 +01:00
|
|
|
|
|
|
|
if with_panfrost_vk
|
|
|
|
subdir('vulkan')
|
|
|
|
endif
|
2021-03-18 18:29:33 +00:00
|
|
|
|
|
|
|
if with_perfetto and (with_datasources.contains('panfrost') or with_datasources.contains('auto'))
|
|
|
|
subdir('ds')
|
|
|
|
endif
|
2021-08-01 12:15:00 +01:00
|
|
|
|
|
|
|
if with_tools.contains('drm-shim')
|
|
|
|
subdir('drm-shim')
|
|
|
|
endif
|
2022-08-11 21:35:22 +01:00
|
|
|
|
|
|
|
if with_tools.contains('panfrost')
|
|
|
|
subdir('tools')
|
|
|
|
endif
|