// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
{
  // Environment variables that are needed in the synthesis script
  exports: [
    { DUT:                "{dut}" },
    { CONSTRAINT:         "{sdc_file}" },
    { FOUNDRY_CONSTRAINT: "{foundry_sdc_file}" },
    { BUILD_DIR:          "{build_dir}" },
    { SV_FLIST:           "{sv_flist}" }
  ]

  // Tool invocation
  build_cmd:  "{job_prefix} dc_shell-xg-t "
  build_opts: ["-f {syn_root}/tools/dc/run-syn.tcl"]

  // DC-specific results parsing script that is called after running synthesis
  report_cmd: "{syn_root}/tools/dc/parse-syn-report.py"
  report_opts: ["--dut {dut}",
                "--expand-modules {expand_modules}",
                "--expand-depth {expand_depth}",
                "--log-path {build_dir} ",
                "--rep-path {build_dir}/REPORTS",
                "--out-dir {build_dir}"]

  // By default, 1 level of hierarchy is always expanded in the area report.
  // This can be changed by setting the expansion depth to a higher value,
  // or by listing explicitly which submodules shall be expanded further.
  expand_modules: ""
  expand_depth: 1

  // Restrict the maximum message count in each category
  max_msg_count: 20
  // Do not sanitize regression mails, but do sanitize the published report
  sanitize_email_results:   false
  sanitize_publish_results: true
}
