.. |br| raw:: html

  <br /><br />
  
.. list-table:: Use cases
   :header-rows: 0
   :widths: 50 50

   * - Depending on your current focus (browsing the design, writing testbench code, debugging) you only want to load in DVT the relevant code
     - rtl.build contains all directives needed to compile the design |br|  testbench.build contains all the directives needed to compile the verification environment |br| default.build includes both the rtl.build and testbench.build
   * - Quickly switch between synthesizable and non-synthesizable version of the design hierarchy
     - default.build contains all directives needed to compile all the code |br| synth.build contains ``+dvt_preprocess_translate_pragmas+synthesis`` and a ``-f`` directive to include default.build
   * - You switch often between several versions of the same code base. The paths to the few different files are controlled by the $VERSION environment variable.
     - compile.f contains directives needed to compile all the code |br| version1.build contains ``+dvt_setenv+VERSION=1`` and a ``-f`` directive to include compile.f |br| version2.build contains ``+dvt_setenv+VERSION=2`` and a ``-f`` directive to include compile.f |br| ...
   * - You want to change the active build before launching DVT, as designers compile just the RTL by rtl.build, while others all.build.
     - Change the build name in **.dvt/build.config.xml** before launching DVT, for example by a wrapper script ``run_dvt.sh -rtl``.