vc4: prepare for p_compiler.h dependency removal
[mesa.git] / src / gallium / drivers / vc4 / meson.build
index 38b47fbdd97759890222a778852073603a18dc2d..5ce5af5f6b40c3b4d996f746b50740ade81ffcef 100644 (file)
@@ -81,21 +81,41 @@ files_libvc4 = files(
   '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,
+)