1#!/usr/bin/env bash
2
3#
4# Rebuild expected AML files for acpi unit-test
5#
6# Copyright (c) 2013 Red Hat Inc.
7#
8# Authors:
9#  Marcel Apfelbaum <marcel.a@redhat.com>
10#  Igor Mammedov <imammedo@redhat.com>
11#
12# This work is licensed under the terms of the GNU GPLv2.
13# See the COPYING.LIB file in the top-level directory.
14
15qemu_bins="x86_64-softmmu/qemu-system-x86_64 aarch64-softmmu/qemu-system-aarch64"
16
17if [ ! -e "tests/qtest/bios-tables-test" ]; then
18    echo "Test: bios-tables-test is required! Run make check before this script."
19    echo "Run this script from the build directory."
20    exit 1;
21fi
22
23for qemu in $qemu_bins; do
24    if [ ! -e $qemu ]; then
25        echo "Run 'make' to build the following QEMU executables: $qemu_bins"
26        echo "Also, run this script from the build directory."
27        exit 1;
28    fi
29    TEST_ACPI_REBUILD_AML=y QTEST_QEMU_BINARY=$qemu tests/qtest/bios-tables-test
30done
31
32eval `grep SRC_PATH= config-host.mak`
33
34old_allowed_dif=`grep -v -e 'List of comma-separated changed AML files to ignore' ${SRC_PATH}/tests/qtest/bios-tables-test-allowed-diff.h`
35
36echo '/* List of comma-separated changed AML files to ignore */' > ${SRC_PATH}/tests/qtest/bios-tables-test-allowed-diff.h
37
38echo "The files were rebuilt and can be added to git."
39echo "You can use ${SRC_PATH}/tests/data/acpi/disassemle-aml.sh to disassemble them to ASL."
40
41if [ -z "$old_allowed_dif" ]; then
42    echo "Note! Please do not commit expected files with source changes"
43    echo "Note! Please follow the process documented in ${SRC_PATH}/tests/qtest/bios-tables-test.c"
44fi
45