Introduce intermediate build target for std.
This gives a place for common functions to be defined.
Change-Id: Ifac38e647ab1042a00d224a58e28a0e6807fa60c
diff --git a/src/BUILD.gn b/src/BUILD.gn
index 6bdf1af..8ec1f92 100644
--- a/src/BUILD.gn
+++ b/src/BUILD.gn
@@ -59,8 +59,8 @@
deps = [
":fdt",
":memiter",
+ ":std",
"//src/arch/${plat_arch}",
- "//src/arch/${plat_arch}:std",
]
if (is_debug) {
@@ -68,6 +68,13 @@
}
}
+# Standard library functions.
+source_set("std") {
+ deps = [
+ "//src/arch/${plat_arch}:std",
+ ]
+}
+
# Debug code that is not specific to a certain image so can be shared.
source_set("dlog") {
sources = [
@@ -75,8 +82,8 @@
]
deps = [
+ ":std",
"//src/arch/${plat_arch}:putchar",
- "//src/arch/${plat_arch}:std",
]
}
@@ -87,7 +94,7 @@
]
deps = [
- "//src/arch/${plat_arch}:std",
+ ":std",
]
if (is_debug) {
diff --git a/src/api.c b/src/api.c
index ad566e2..cd46073 100644
--- a/src/api.c
+++ b/src/api.c
@@ -17,13 +17,13 @@
#include "hf/api.h"
#include "hf/arch/cpu.h"
-#include "hf/arch/std.h"
#include "hf/arch/timer.h"
#include "hf/assert.h"
#include "hf/dlog.h"
#include "hf/mm.h"
#include "hf/spinlock.h"
+#include "hf/std.h"
#include "hf/vm.h"
#include "vmapi/hf/call.h"
diff --git a/src/arch/aarch64/cpu.c b/src/arch/aarch64/cpu.c
index 56ada32..b1280a6 100644
--- a/src/arch/aarch64/cpu.c
+++ b/src/arch/aarch64/cpu.c
@@ -20,9 +20,8 @@
#include <stddef.h>
#include <stdint.h>
-#include "hf/arch/std.h"
-
#include "hf/addr.h"
+#include "hf/std.h"
void arch_irq_disable(void)
{
diff --git a/src/cpio.c b/src/cpio.c
index 6f2442d..61a82d6 100644
--- a/src/cpio.c
+++ b/src/cpio.c
@@ -18,7 +18,7 @@
#include <stdint.h>
-#include "hf/arch/std.h"
+#include "hf/std.h"
#pragma pack(push, 1)
struct cpio_header {
diff --git a/src/cpu.c b/src/cpu.c
index 3cc15be..b2213d1 100644
--- a/src/cpu.c
+++ b/src/cpu.c
@@ -19,10 +19,10 @@
#include <stdalign.h>
#include "hf/arch/cpu.h"
-#include "hf/arch/std.h"
#include "hf/api.h"
#include "hf/dlog.h"
+#include "hf/std.h"
#include "hf/vm.h"
#include "vmapi/hf/call.h"
diff --git a/src/dlog.c b/src/dlog.c
index 7874cab..cd1247b 100644
--- a/src/dlog.c
+++ b/src/dlog.c
@@ -20,9 +20,9 @@
#include <stddef.h>
#include "hf/arch/console.h"
-#include "hf/arch/std.h"
#include "hf/spinlock.h"
+#include "hf/std.h"
/* Keep macro alignment */
/* clang-format off */
diff --git a/src/fdt.c b/src/fdt.c
index 3859b46..b781a72 100644
--- a/src/fdt.c
+++ b/src/fdt.c
@@ -18,9 +18,8 @@
#include <stdint.h>
-#include "hf/arch/std.h"
-
#include "hf/dlog.h"
+#include "hf/std.h"
struct fdt_header {
uint32_t magic;
diff --git a/src/fdt_handler.c b/src/fdt_handler.c
index 97cdd2b..0a0b294 100644
--- a/src/fdt_handler.c
+++ b/src/fdt_handler.c
@@ -16,14 +16,13 @@
#include "hf/fdt_handler.h"
-#include "hf/arch/std.h"
-
#include "hf/boot_params.h"
#include "hf/cpu.h"
#include "hf/dlog.h"
#include "hf/fdt.h"
#include "hf/layout.h"
#include "hf/mm.h"
+#include "hf/std.h"
static uint64_t convert_number(const char *data, uint32_t size)
{
diff --git a/src/layout.c b/src/layout.c
index f74f7c2..e53361b 100644
--- a/src/layout.c
+++ b/src/layout.c
@@ -16,7 +16,7 @@
#include "hf/layout.h"
-#include "hf/arch/std.h"
+#include "hf/std.h"
/**
* Get the address the .text section begins at.
diff --git a/src/load.c b/src/load.c
index 1208eda..7eea3dc 100644
--- a/src/load.c
+++ b/src/load.c
@@ -18,8 +18,6 @@
#include <stdbool.h>
-#include "hf/arch/std.h"
-
#include "hf/api.h"
#include "hf/assert.h"
#include "hf/boot_params.h"
@@ -27,6 +25,7 @@
#include "hf/layout.h"
#include "hf/memiter.h"
#include "hf/mm.h"
+#include "hf/std.h"
#include "hf/vm.h"
#include "vmapi/hf/call.h"
diff --git a/src/main.c b/src/main.c
index 02fc0a8..1df1802 100644
--- a/src/main.c
+++ b/src/main.c
@@ -18,7 +18,6 @@
#include <stddef.h>
#include "hf/arch/init.h"
-#include "hf/arch/std.h"
#include "hf/api.h"
#include "hf/boot_params.h"
@@ -29,6 +28,7 @@
#include "hf/mm.h"
#include "hf/mpool.h"
#include "hf/panic.h"
+#include "hf/std.h"
#include "hf/vm.h"
#include "vmapi/hf/call.h"
diff --git a/src/memiter.c b/src/memiter.c
index b629ebc..7ec3c94 100644
--- a/src/memiter.c
+++ b/src/memiter.c
@@ -16,7 +16,7 @@
#include "hf/memiter.h"
-#include "hf/arch/std.h"
+#include "hf/std.h"
/**
* Initialises the given memory iterator.
diff --git a/src/vm.c b/src/vm.c
index 8eafd09..a58886e 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -16,10 +16,9 @@
#include "hf/vm.h"
-#include "hf/arch/std.h"
-
#include "hf/api.h"
#include "hf/cpu.h"
+#include "hf/std.h"
#include "vmapi/hf/call.h"