]> Git Repo - qemu.git/commitdiff
tests: acpi: print ASL diff in verbose mode
authorIgor Mammedov <[email protected]>
Mon, 28 Dec 2015 17:02:08 +0000 (18:02 +0100)
committerMichael S. Tsirkin <[email protected]>
Fri, 8 Jan 2016 14:01:37 +0000 (16:01 +0200)
print ASL difference if there is any when
executing 'make V=1 check'.
Use 'DIFF' environment variable to determine
which diff utility to use and if it's not set
notify user by printing warning that DIFF is
not set if run in verbose mode and there is
difference in ASL.

Signed-off-by: Igor Mammedov <[email protected]>
Reviewed-by: Michael S. Tsirkin <[email protected]>
Signed-off-by: Michael S. Tsirkin <[email protected]>
tests/bios-tables-test.c

index 6d37332a60c5314540bdbcc3263e2a9c6592ea3f..75ec330cebde7c32eca174e90e4b31c10436c4ba 100644 (file)
@@ -580,6 +580,22 @@ static void test_acpi_asl(test_data *data)
                         (gchar *)&signature,
                         sdt->asl_file, sdt->aml_file,
                         exp_sdt->asl_file, exp_sdt->aml_file);
+                if (getenv("V")) {
+                    const char *diff_cmd = getenv("DIFF");
+                    if (diff_cmd) {
+                        int ret G_GNUC_UNUSED;
+                        char *diff = g_strdup_printf("%s %s %s", diff_cmd,
+                            exp_sdt->asl_file, sdt->asl_file);
+                        ret = system(diff) ;
+                        g_free(diff);
+                    } else {
+                        fprintf(stderr, "acpi-test: Warning. not showing "
+                            "difference since no diff utility is specified. "
+                            "Set 'DIFF' environment variable to a preferred "
+                            "diff utility and run 'make V=1 check' again to "
+                            "see ASL difference.");
+                    }
+                }
           }
         }
         g_string_free(asl, true);
This page took 0.028375 seconds and 4 git commands to generate.