* [Qemu-devel] [PATCH 0/2] acpi unit-test: extract iasl executable from configuration
@ 2013-12-25 10:50 Marcel Apfelbaum
2013-12-25 10:50 ` [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h Marcel Apfelbaum
2013-12-25 10:50 ` [Qemu-devel] [PATCH 2/2] acpi unit-test: extract iasl executable from configuration Marcel Apfelbaum
0 siblings, 2 replies; 5+ messages in thread
From: Marcel Apfelbaum @ 2013-12-25 10:50 UTC (permalink / raw)
To: qemu-devel; +Cc: mst
The test checked if iasl is installed by running "iasl"
and checking the error output.
It is better to use the iasl executable as appears
in configuration.
patch 1: exports IASL configuration option to config-host.h
patch 2: acpi unit-test uses the exported CONFIG_IASL define
Marcel Apfelbaum (2):
configure: add CONFIG_IASL to config-host.h
acpi unit-test: extract iasl executable from configuration
scripts/create_config | 4 ++++
tests/acpi-test.c | 31 ++++++++-----------------------
2 files changed, 12 insertions(+), 23 deletions(-)
--
1.8.3.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h
2013-12-25 10:50 [Qemu-devel] [PATCH 0/2] acpi unit-test: extract iasl executable from configuration Marcel Apfelbaum
@ 2013-12-25 10:50 ` Marcel Apfelbaum
2013-12-25 10:56 ` Marcel Apfelbaum
2013-12-25 14:22 ` Michael S. Tsirkin
2013-12-25 10:50 ` [Qemu-devel] [PATCH 2/2] acpi unit-test: extract iasl executable from configuration Marcel Apfelbaum
1 sibling, 2 replies; 5+ messages in thread
From: Marcel Apfelbaum @ 2013-12-25 10:50 UTC (permalink / raw)
To: qemu-devel; +Cc: mst
Acpi unit-tests will extract the iasl executable
from CONFIG_IASL define.
Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
---
scripts/create_config | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/scripts/create_config b/scripts/create_config
index b1adbf5..0478315 100755
--- a/scripts/create_config
+++ b/scripts/create_config
@@ -26,6 +26,10 @@ case $line in
# save for the next definitions
prefix=${line#*=}
;;
+ IASL=*) # iasl executable
+ value=${line#*=}
+ echo "#define CONFIG_IASL \"$value\""
+ ;;
CONFIG_AUDIO_DRIVERS=*)
drivers=${line#*=}
echo "#define CONFIG_AUDIO_DRIVERS \\"
--
1.8.3.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Qemu-devel] [PATCH 2/2] acpi unit-test: extract iasl executable from configuration
2013-12-25 10:50 [Qemu-devel] [PATCH 0/2] acpi unit-test: extract iasl executable from configuration Marcel Apfelbaum
2013-12-25 10:50 ` [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h Marcel Apfelbaum
@ 2013-12-25 10:50 ` Marcel Apfelbaum
1 sibling, 0 replies; 5+ messages in thread
From: Marcel Apfelbaum @ 2013-12-25 10:50 UTC (permalink / raw)
To: qemu-devel; +Cc: mst
The test checked if iasl is installed by running "iasl"
and checking the error output.
It is better to use the iasl executable as appears
in configuration.
Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
---
tests/acpi-test.c | 31 ++++++++-----------------------
1 file changed, 8 insertions(+), 23 deletions(-)
diff --git a/tests/acpi-test.c b/tests/acpi-test.c
index 4f0cca6..d9374f2 100644
--- a/tests/acpi-test.c
+++ b/tests/acpi-test.c
@@ -127,6 +127,11 @@ static uint8_t boot_sector[0x7e000] = {
static const char *disk = "tests/acpi-test-disk.raw";
static const char *data_dir = "tests/acpi-test-data";
+#ifdef CONFIG_IASL
+static const char *iasl = CONFIG_IASL;
+#else
+static const char *iasl;
+#endif
static void free_test_data(test_data *data)
{
@@ -358,26 +363,6 @@ static void test_acpi_ssdt_tables(test_data *data)
}
}
-static bool iasl_installed(void)
-{
- gchar *out = NULL, *out_err = NULL;
- bool ret;
-
- /* pass 'out' and 'out_err' in order to be redirected */
- ret = g_spawn_command_line_sync("iasl", &out, &out_err, NULL, NULL);
-
- if (out_err) {
- ret = ret && (out_err[0] == '\0');
- g_free(out_err);
- }
-
- if (out) {
- g_free(out);
- }
-
- return ret;
-}
-
static void dump_aml_files(test_data *data)
{
AcpiSdtTable *sdt;
@@ -402,7 +387,7 @@ static void load_asl(GArray *sdts, AcpiSdtTable *sdt)
{
AcpiSdtTable *temp;
GError *error = NULL;
- GString *command_line = g_string_new("'iasl' ");
+ GString *command_line = g_string_new(iasl);
gint fd;
gchar *out, *out_err;
gboolean ret;
@@ -413,7 +398,7 @@ static void load_asl(GArray *sdts, AcpiSdtTable *sdt)
close(fd);
/* build command line */
- g_string_append_printf(command_line, "-p %s ", sdt->asl_file);
+ g_string_append_printf(command_line, " -p %s ", sdt->asl_file);
for (i = 0; i < 2; ++i) { /* reference DSDT and SSDT */
temp = &g_array_index(sdts, AcpiSdtTable, i);
g_string_append_printf(command_line, "-e %s ", temp->aml_file);
@@ -567,7 +552,7 @@ static void test_acpi_one(const char *params, test_data *data)
test_acpi_dsdt_table(data);
test_acpi_ssdt_tables(data);
- if (iasl_installed()) {
+ if (iasl) {
test_acpi_asl(data);
}
--
1.8.3.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h
2013-12-25 10:50 ` [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h Marcel Apfelbaum
@ 2013-12-25 10:56 ` Marcel Apfelbaum
2013-12-25 14:22 ` Michael S. Tsirkin
1 sibling, 0 replies; 5+ messages in thread
From: Marcel Apfelbaum @ 2013-12-25 10:56 UTC (permalink / raw)
To: qemu-devel; +Cc: Kevin Wolf, Peter Maydell, Paolo Bonzini, famz, mst
On Wed, 2013-12-25 at 12:50 +0200, Marcel Apfelbaum wrote:
> Acpi unit-tests will extract the iasl executable
> from CONFIG_IASL define.
>
> Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
Added the maintainers of scripts/create_config,
sorry for not doing it in the first place.
Thanks,
Marcel
> ---
> scripts/create_config | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/scripts/create_config b/scripts/create_config
> index b1adbf5..0478315 100755
> --- a/scripts/create_config
> +++ b/scripts/create_config
> @@ -26,6 +26,10 @@ case $line in
> # save for the next definitions
> prefix=${line#*=}
> ;;
> + IASL=*) # iasl executable
> + value=${line#*=}
> + echo "#define CONFIG_IASL \"$value\""
> + ;;
> CONFIG_AUDIO_DRIVERS=*)
> drivers=${line#*=}
> echo "#define CONFIG_AUDIO_DRIVERS \\"
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h
2013-12-25 10:50 ` [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h Marcel Apfelbaum
2013-12-25 10:56 ` Marcel Apfelbaum
@ 2013-12-25 14:22 ` Michael S. Tsirkin
1 sibling, 0 replies; 5+ messages in thread
From: Michael S. Tsirkin @ 2013-12-25 14:22 UTC (permalink / raw)
To: Marcel Apfelbaum; +Cc: qemu-devel
On Wed, Dec 25, 2013 at 12:50:15PM +0200, Marcel Apfelbaum wrote:
> Acpi unit-tests will extract the iasl executable
> from CONFIG_IASL define.
>
> Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
> ---
> scripts/create_config | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/scripts/create_config b/scripts/create_config
> index b1adbf5..0478315 100755
> --- a/scripts/create_config
> +++ b/scripts/create_config
> @@ -26,6 +26,10 @@ case $line in
> # save for the next definitions
> prefix=${line#*=}
> ;;
> + IASL=*) # iasl executable
> + value=${line#*=}
> + echo "#define CONFIG_IASL \"$value\""
> + ;;
This won't work correctly if IASL includes any
special characters like \ or '.
It's a good idea to use preprocessor's # operator,
that escapes them properly.
We have a bunch of macros like this all over the place, short term
you can introduce
#define CONFIG_STRINGIFY(x) #x
longer term we really want QEMU_STRINGIFY.
> CONFIG_AUDIO_DRIVERS=*)
> drivers=${line#*=}
> echo "#define CONFIG_AUDIO_DRIVERS \\"
> --
> 1.8.3.1
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-12-25 14:18 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-25 10:50 [Qemu-devel] [PATCH 0/2] acpi unit-test: extract iasl executable from configuration Marcel Apfelbaum
2013-12-25 10:50 ` [Qemu-devel] [PATCH 1/2] configure: add CONFIG_IASL to config-host.h Marcel Apfelbaum
2013-12-25 10:56 ` Marcel Apfelbaum
2013-12-25 14:22 ` Michael S. Tsirkin
2013-12-25 10:50 ` [Qemu-devel] [PATCH 2/2] acpi unit-test: extract iasl executable from configuration Marcel Apfelbaum
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).