Index: testsuite/driver/testlib.py
--- testsuite/driver/testlib.py.orig
+++ testsuite/driver/testlib.py
@@ -2310,6 +2310,11 @@ async def compare_outputs(way: WayName,
     actual_raw = read_no_crs(actual_path)
     actual_str = normaliser(actual_raw)
 
+    # Strip OpenBSDs linker warnings about strcpy(3) & friends.
+    if config.os == 'openbsd':
+        actual_str = re.sub('.*warning:.* misused, please use .*\n',
+                            '', actual_str)
+
     # See Note [Output comparison].
     if whitespace_normaliser(expected_str) == whitespace_normaliser(actual_str):
         return True
@@ -2326,7 +2331,7 @@ async def compare_outputs(way: WayName,
 
         if config.verbose >= 1 and _expect_pass(way):
             # See Note [Output comparison].
-            r = await runCmd('diff -uw "{0}" "{1}"'.format(null2unix_null(expected_normalised_path),
+            r = await runCmd('diff -auw "{0}" "{1}"'.format(null2unix_null(expected_normalised_path),
                                                         actual_normalised_path),
                         stdout=diff_file,
                         print_output=True)
@@ -2334,7 +2339,7 @@ async def compare_outputs(way: WayName,
             # If for some reason there were no non-whitespace differences,
             # then do a full diff
             if r == 0:
-                r = await runCmd('diff -u "{0}" "{1}"'.format(null2unix_null(expected_normalised_path),
+                r = await runCmd('diff -au "{0}" "{1}"'.format(null2unix_null(expected_normalised_path),
                                                            actual_normalised_path),
                            stdout=diff_file,
                            print_output=True)
