obj-perarch += $(ROOT)/common/report.o
obj-perarch += $(ROOT)/common/setup.o
obj-perarch += $(ROOT)/common/xenbus.o
+obj-perarch += $(ROOT)/common/weak-defaults.o
obj-perenv += $(ROOT)/arch/x86/decode.o
obj-perenv += $(ROOT)/arch/x86/desc.o
--- /dev/null
+/*
+ * @file common/weak-defaults.c
+ *
+ * Default implementations of functions called by common code, which may need
+ * arch or environment specific implementations.
+ */
+#include <xtf/framework.h>
+
+const char __weak environment_description[] = "Unknown";
+
+void __weak arch_setup(void)
+{
+}
+
+void __weak test_setup(void)
+{
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
+/**
+ * @file include/xtf/framework.h
+ *
+ * Interfaces used by common code, needing to be implemented by
+ * arch/environment specific code. Default stubs are provided in
+ * common/weak-defaults.c
+ */
#ifndef XTF_FRAMEWORK_H
#define XTF_FRAMEWORK_H
-/* To be implemented by each arch */
+#include <xtf/compiler.h>
+
+/* Set up exception handling, consoles, etc. */
void arch_setup(void);
+
+/* Set up test-specific configuration. */
void test_setup(void);
/* Single line summary of execution environment. */