'uaccess.c',
))
+common_ss.add(when: ['CONFIG_SEMIHOSTING', 'CONFIG_SYSTEM_ONLY'], if_false: files('stubs-all.c'))
+system_ss.add(when: ['CONFIG_SEMIHOSTING'], if_false: files('stubs-system.c'))
+
specific_ss.add(when: ['CONFIG_ARM_COMPATIBLE_SEMIHOSTING'],
if_true: files('arm-compat-semi.c'))
--- /dev/null
+/*
+ * Semihosting Stubs for all targets
+ *
+ * Copyright (c) 2023 Linaro Ltd
+ *
+ * Stubs for all targets that don't actually do semihosting.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#include "qemu/osdep.h"
+#include "semihosting/semihost.h"
+
+SemihostingTarget semihosting_get_target(void)
+{
+ return SEMIHOSTING_TARGET_AUTO;
+}
--- /dev/null
+/*
+ * Semihosting Stubs for system emulation
+ *
+ * Copyright (c) 2019 Linaro Ltd
+ *
+ * Stubs for system targets that don't actually do semihosting.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#include "qemu/osdep.h"
+#include "qemu/option.h"
+#include "qemu/error-report.h"
+#include "semihosting/semihost.h"
+
+/* Empty config */
+QemuOptsList qemu_semihosting_config_opts = {
+ .name = "",
+ .head = QTAILQ_HEAD_INITIALIZER(qemu_semihosting_config_opts.head),
+ .desc = {
+ { /* end of list */ }
+ },
+};
+
+/* Queries to config status default to off */
+bool semihosting_enabled(bool is_user)
+{
+ return false;
+}
+
+/*
+ * All the rest are empty subs. We could g_assert_not_reached() but
+ * that adds extra weight to the final binary. Waste not want not.
+ */
+void qemu_semihosting_enable(void)
+{
+}
+
+int qemu_semihosting_config_options(const char *optstr)
+{
+ return 1;
+}
+
+const char *semihosting_get_arg(int i)
+{
+ return NULL;
+}
+
+int semihosting_get_argc(void)
+{
+ return 0;
+}
+
+const char *semihosting_get_cmdline(void)
+{
+ return NULL;
+}
+
+void semihosting_arg_fallback(const char *file, const char *cmd)
+{
+}
+
+void qemu_semihosting_chardev_init(void)
+{
+}
endif
if have_system
stub_ss.add(files('fw_cfg.c'))
- stub_ss.add(files('semihost.c'))
stub_ss.add(files('xen-hw-stub.c'))
else
stub_ss.add(files('qdev.c'))
endif
-stub_ss.add(files('semihost-all.c'))
+++ /dev/null
-/*
- * Semihosting Stubs for all targets
- *
- * Copyright (c) 2023 Linaro Ltd
- *
- * Stubs for all targets that don't actually do semihosting.
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-#include "qemu/osdep.h"
-#include "semihosting/semihost.h"
-
-SemihostingTarget semihosting_get_target(void)
-{
- return SEMIHOSTING_TARGET_AUTO;
-}
+++ /dev/null
-/*
- * Semihosting Stubs for system emulation
- *
- * Copyright (c) 2019 Linaro Ltd
- *
- * Stubs for system targets that don't actually do semihosting.
- *
- * SPDX-License-Identifier: GPL-2.0-or-later
- */
-
-#include "qemu/osdep.h"
-#include "qemu/option.h"
-#include "qemu/error-report.h"
-#include "semihosting/semihost.h"
-
-/* Empty config */
-QemuOptsList qemu_semihosting_config_opts = {
- .name = "",
- .head = QTAILQ_HEAD_INITIALIZER(qemu_semihosting_config_opts.head),
- .desc = {
- { /* end of list */ }
- },
-};
-
-/* Queries to config status default to off */
-bool semihosting_enabled(bool is_user)
-{
- return false;
-}
-
-/*
- * All the rest are empty subs. We could g_assert_not_reached() but
- * that adds extra weight to the final binary. Waste not want not.
- */
-void qemu_semihosting_enable(void)
-{
-}
-
-int qemu_semihosting_config_options(const char *optstr)
-{
- return 1;
-}
-
-const char *semihosting_get_arg(int i)
-{
- return NULL;
-}
-
-int semihosting_get_argc(void)
-{
- return 0;
-}
-
-const char *semihosting_get_cmdline(void)
-{
- return NULL;
-}
-
-void semihosting_arg_fallback(const char *file, const char *cmd)
-{
-}
-
-void qemu_semihosting_chardev_init(void)
-{
-}