'vc4_uniforms.c',
)
-simpenrose_c_args = []
-dep_simpenrose = dependency('simpenrose', required : false)
+vc4_c_args = []
+
+libvc4_neon = []
+if host_machine.cpu_family() == 'arm'
+ libvc4_neon = static_library(
+ 'vc4_neon',
+ 'vc4_tiling_lt_neon.c',
+ include_directories : [
+ inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_broadcom
+ ],
+ c_args : '-mfpu=neon',
+ )
+ vc4_c_args += '-DUSE_ARM_ASM'
+endif
+
if dep_simpenrose.found()
- simpenrose_c_args = '-DUSE_VC4_SIMULATOR'
+ vc4_c_args += '-DUSE_VC4_SIMULATOR'
endif
libvc4 = static_library(
'vc4',
- [files_libvc4, v3d_xml_pack, nir_opcodes_h, nir_builder_opcodes_h],
+ [files_libvc4, v3d_xml_pack],
include_directories : [
inc_src, inc_include, inc_gallium, inc_gallium_aux, inc_broadcom,
- inc_gallium_drivers, inc_drm_uapi,
+ inc_gallium_drivers,
],
- c_args : [c_vis_args, simpenrose_c_args],
+ link_with: libvc4_neon,
+ c_args : [c_vis_args, vc4_c_args],
cpp_args : [cpp_vis_args],
- dependencies : [dep_simpenrose, dep_libdrm, dep_valgrind],
+ dependencies : [dep_simpenrose, dep_libdrm, dep_valgrind, idep_nir_headers],
build_by_default : false,
)
+
+driver_vc4 = declare_dependency(
+ compile_args : '-DGALLIUM_VC4',
+ link_with : [libvc4, libvc4winsys, libbroadcom_cle, libbroadcom_v3d],
+ dependencies : idep_nir,
+)