util: remove LIST_IS_EMPTY macro
[mesa.git] / src / util / 00-mesa-defaults.conf
index ae29d8837d581987d70b666a66e72a8e120f9e21..94a33480b1231f65176273c3ac24d32b941685b2 100644 (file)
@@ -30,11 +30,20 @@ TODO: document the other workarounds.
 
 <!DOCTYPE driconf [
    <!ELEMENT driconf      (device+)>
-   <!ELEMENT device       (application+)>
+   <!ELEMENT device       (application | engine)+>
    <!ATTLIST device       driver CDATA #IMPLIED>
    <!ELEMENT application  (option+)>
    <!ATTLIST application  name CDATA #REQUIRED
                           executable CDATA #REQUIRED>
+   <!ELEMENT engine       (option+)>
+
+   <!-- engine_name_match: A regexp matching the engine name -->
+   <!-- engine_version: A list of version in range format
+             (version 1 to 4 and version 7 to 8 : "1:4,7:8") -->
+
+   <!ATTLIST engine       engine_name_match CDATA #REQUIRED
+                          engine_versions CDATA #REQUIRED>
+
    <!ELEMENT option       EMPTY>
    <!ATTLIST option       name CDATA #REQUIRED
                           value CDATA #REQUIRED>
@@ -146,6 +155,8 @@ TODO: document the other workarounds.
 
         <application name="Divinity: Original Sin Enhanced Edition" executable="EoCApp">
             <option name="allow_glsl_extension_directive_midshader" value="true" />
+            <option name="glsl_correct_derivatives_after_discard" value="true" />
+            <option name="force_gl_vendor" value="ATI Technologies, Inc."/>
         </application>
 
         <application name="Metro 2033 Redux / Metro Last Night Redux" executable="metro">
@@ -450,10 +461,28 @@ TODO: document the other workarounds.
             <option name="v3d_nonmsaa_texture_size_limit" value="true" />
         </application>
 
+        <application name="gfxbench" executable="testfw_app">
+            <option name="vk_x11_override_min_image_count" value="2" />
+        </application>
+
         <!-- Gallium Nine workarounds: -->
         <application name="Rayman Legends" executable="Rayman Legends.exe">
             <option name="dynamic_texture_workaround" value="true" />
         </application>
+
+        <!-- Vulkan workarounds: -->
+
+        <!-- Works around the game not starting (does not deal with
+             the implementation returning more images than the minimum
+             specified by the application. -->
+        <engine engine_name_match="UnrealEngine4.*" engine_versions="0:23">
+            <option name="vk_x11_strict_image_count" value="true" />
+        </engine>
+
+        <!-- DOOM crashes at startup without this workaround if the adaptative sync mode is enabled. -->
+        <application name="DOOM" executable="DOOMx64vk.exe">
+            <option name="vk_x11_strict_image_count" value="true" />
+        </application>
     </device>
     <!-- vmwgfx doesn't like full buffer swaps and can't sync to vertical retraces.-->
     <device driver="vmwgfx">
@@ -480,6 +509,9 @@ TODO: document the other workarounds.
         <application name="No Mans Sky" executable="NMS.exe">
             <option name="radeonsi_zerovram" value="true" />
         </application>
+        <application name="Rocket League" executable="RocketLeague">
+            <option name="radeonsi_zerovram" value="true" />
+        </application>
         <application name="Civilization 6" executable="Civ6">
             <option name="radeonsi_enable_nir" value="true"/>
         </application>