From: Xuzhou Cheng <xuzhou.cheng@windriver.com>
Commit dd2107497275 ("tests/libqtest: Use libqtest-single.h in tests that require
global_qtest")
moved global_qtest to libqtest-single.h, by declaring global_qtest
attribute to be common and weak.
This trick unfortunately does not work on Windows, and building
qtest test cases results in multiple definition errors of the weak
symbol global_qtest, as Windows PE does not have the concept of
the so-called weak symbol like ELF in the *nix world.
Let's move the definition of global_qtest back to libqtest.c.
Signed-off-by: Xuzhou Cheng <xuzhou.cheng@windriver.com>
Signed-off-by: Bin Meng <bin.meng@windriver.com>
---
tests/qtest/libqtest-single.h | 2 +-
tests/qtest/libqtest.c | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/tests/qtest/libqtest-single.h b/tests/qtest/libqtest-single.h
index 4e7d0ae1dc..3294985d7b 100644
--- a/tests/qtest/libqtest-single.h
+++ b/tests/qtest/libqtest-single.h
@@ -13,7 +13,7 @@
#include "libqtest.h"
-QTestState *global_qtest __attribute__((common, weak));
+extern QTestState *global_qtest;
/**
* qtest_start:
diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
index 34744ace7c..909583dad3 100644
--- a/tests/qtest/libqtest.c
+++ b/tests/qtest/libqtest.c
@@ -65,6 +65,8 @@ struct QTestState
GList *pending_events;
};
+QTestState *global_qtest;
+
static GHookList abrt_hooks;
static struct sigaction sigact_old;