From a63f37595a06cb328c1e53b53989d61764d3fefe Mon Sep 17 00:00:00 2001
From: Derek Chow <derekjchow@google.com>
Date: Thu, 27 Feb 2025 20:56:54 +0000
Subject: [PATCH 2/2] Update cocotb script to support newer version.

Target: ddb9634ec4fdd19f2464e5926252b262d0779fab
---
 cocotb/cocotb.bzl                             |  2 +-
 cocotb/cocotb_wrapper.py                      | 20 +++++++++--
 ...-Remove-autodetect-of-VERILATOR_ROOT.patch | 34 +++++++++++++++++++
 .../verilator/verilator.BUILD.bazel           |  8 +++--
 dependency_support/verilator/verilator.bzl    | 10 ++++--
 5 files changed, 66 insertions(+), 8 deletions(-)
 create mode 100644 dependency_support/verilator/0001-Remove-autodetect-of-VERILATOR_ROOT.patch

diff --git a/cocotb/cocotb.bzl b/cocotb/cocotb.bzl
index cde681b..a99e220 100644
--- a/cocotb/cocotb.bzl
+++ b/cocotb/cocotb.bzl
@@ -170,7 +170,7 @@ def _cocotb_test_impl(ctx):
     vhdl_files = _collect_vhdl_files(ctx).to_list()
 
     # create test script
-    runner_script = ctx.actions.declare_file("cocotb_runner.sh")
+    runner_script = ctx.actions.declare_file(ctx.attr.name + "_cocotb_runner.sh")
     ctx.actions.write(
         output = runner_script,
         content = _get_test_command(ctx, verilog_files, vhdl_files),
diff --git a/cocotb/cocotb_wrapper.py b/cocotb/cocotb_wrapper.py
index 03d0dbc..d6829c6 100644
--- a/cocotb/cocotb_wrapper.py
+++ b/cocotb/cocotb_wrapper.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 import argparse
-from cocotb.runner import get_runner, check_results_file
+from cocotb_tools.runner import get_runner
 
 
 cocotb_build_flags = [
@@ -96,6 +96,12 @@ def cocotb_argument_parser():
         default=[],
         help="Extra build arguments for the simulator",
     )
+    parser.add_argument(
+        "--test_args",
+        nargs="*",
+        default=[],
+        help="Extra test arguments for the simulator",
+    )
     parser.add_argument(
         "--hdl_toplevel", default=None, help="Name of the HDL toplevel module"
     )
@@ -167,7 +173,17 @@ if __name__ == "__main__":
     build_flags = filter_args(vars(args), cocotb_build_flags)
     test_flags = filter_args(vars(args), cocotb_test_flags)
 
+    build_args = []
+    for build_arg in build_flags['build_args']:
+        build_args += build_arg.split(" ")
+    build_flags['build_args'] = build_args
+    build_flags['always'] = True
+
+    test_args = []
+    for test_arg in test_flags['test_args']:
+        test_args += test_arg.split(" ")
+    test_flags['test_args'] = test_args
+
     runner = get_runner(args.sim)
     runner.build(**build_flags)
     results_xml = runner.test(**test_flags)
-    check_results_file(results_xml)
diff --git a/dependency_support/verilator/0001-Remove-autodetect-of-VERILATOR_ROOT.patch b/dependency_support/verilator/0001-Remove-autodetect-of-VERILATOR_ROOT.patch
new file mode 100644
index 0000000..9e08372
--- /dev/null
+++ b/dependency_support/verilator/0001-Remove-autodetect-of-VERILATOR_ROOT.patch
@@ -0,0 +1,34 @@
+From a5369fe645344bb80cad339fe0a77233b535e50c Mon Sep 17 00:00:00 2001
+From: Alex Van Damme <atv@google.com>
+Date: Mon, 3 Mar 2025 14:59:47 -0800
+Subject: [PATCH] Remove autodetect of VERILATOR_ROOT
+
+---
+ bin/verilator | 11 -----------
+ 1 file changed, 11 deletions(-)
+
+diff --git a/bin/verilator b/bin/verilator
+index 264f0d6c2..a2df113ba 100755
+--- a/bin/verilator
++++ b/bin/verilator
+@@ -69,17 +69,6 @@ if (! GetOptions(
+     pod2usage(-exitstatus => 2, -verbose => 0);
+ }
+ 
+-my $verilator_root = realpath("$RealBin/..");
+-if (defined $ENV{VERILATOR_ROOT}) {
+-    if ((!-d $ENV{VERILATOR_ROOT}) || $verilator_root ne realpath($ENV{VERILATOR_ROOT})) {
+-        warn "%Error: verilator: VERILATOR_ROOT is set to inconsistent path. Suggest leaving it unset.\n";
+-        warn "%Error: VERILATOR_ROOT=$ENV{VERILATOR_ROOT}\n";
+-        exit 1;
+-    }
+-} else {
+-    print "export VERILATOR_ROOT='$verilator_root'\n" if $Debug;
+-    $ENV{VERILATOR_ROOT} = $verilator_root;
+-}
+ 
+ if ($opt_gdbbt && !gdb_works()) {
+     warn "-Info: --gdbbt ignored: gdb doesn't seem to be working\n" if $Debug;
+-- 
+2.48.1.711.g2feabab25a-goog
+
diff --git a/dependency_support/verilator/verilator.BUILD.bazel b/dependency_support/verilator/verilator.BUILD.bazel
index 3fadcca..b7322c2 100644
--- a/dependency_support/verilator/verilator.BUILD.bazel
+++ b/dependency_support/verilator/verilator.BUILD.bazel
@@ -251,7 +251,10 @@ verilator_bisonpre(
 
 cc_library(
     name = "verilatedos",
-    hdrs = ["include/verilatedos.h"],
+    hdrs = [
+        "include/verilatedos.h",
+        "include/verilatedos_c.h",
+    ],
     strip_include_prefix = "include/",
 )
 
@@ -362,7 +365,6 @@ cc_library(
         "include/verilated_vcd_sc.h",
         "include/verilated_vpi.h",
         "include/verilated.h",
-        "include/verilatedos.h",
     ],
     # TODO: Remove these once upstream fixes these warnings
     copts = [
@@ -390,6 +392,7 @@ cc_library(
         "@accellera_systemc//:systemc",
         "@net_zlib//:zlib",
         ":vltstd",
+        ":verilatedos",
     ],
 )
 
@@ -458,6 +461,7 @@ cc_binary(
         "include/verilated_vpi.h",
         "include/verilated.h",
         "include/verilatedos.h",
+        "include/verilatedos_c.h",
         "include/vltstd/svdpi.h",
         "include/vltstd/sv_vpi_user.h",
         "include/vltstd/vpi_user.h",
diff --git a/dependency_support/verilator/verilator.bzl b/dependency_support/verilator/verilator.bzl
index 376a24f..e574271 100644
--- a/dependency_support/verilator/verilator.bzl
+++ b/dependency_support/verilator/verilator.bzl
@@ -22,7 +22,11 @@ def verilator():
         http_archive,
         name = "verilator",
         build_file = Label("@rules_hdl//dependency_support/verilator:verilator.BUILD.bazel"),
-        urls = ["https://github.com/verilator/verilator/archive/refs/tags/v5.022.tar.gz"],
-        sha256 = "3c2f5338f4b6ce7e2f47a142401acdd18cbf4c5da06092618d6d036c0afef12d",
-        strip_prefix = "verilator-5.022",
+        urls = ["https://github.com/verilator/verilator/archive/refs/tags/v5.026.tar.gz"],
+        sha256 = "87fdecf3967007d9ee8c30191ff2476f2a33635d0e0c6e3dbf345cc2f0c50b78",
+        strip_prefix = "verilator-5.026",
+        patch_args = ["-p1"],
+        patches = [
+            Label("@rules_hdl//dependency_support/verilator:0001-Remove-autodetect-of-VERILATOR_ROOT.patch"),
+        ],
     )
-- 
2.48.1.711.g2feabab25a-goog

