diff options
author | Dennis Kobert <dennis@kobert.dev> | 2019-10-25 15:31:10 +0200 |
---|---|---|
committer | Dennis Kobert <dennis@kobert.dev> | 2019-10-25 15:31:10 +0200 |
commit | 5a4f0191916b20e383830bc740e533d1c6988290 (patch) | |
tree | 9dffe254ab553d8ab611b2d8ce179c5a0c4dce20 /kernel | |
parent | 1193925cd231ed15a48f9f34c0fab8101aa5c820 (diff) |
Add target x86_64-uff
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/.cargo/config | 3 | ||||
-rw-r--r-- | kernel/Cargo.toml | 9 | ||||
-rw-r--r-- | kernel/README.md | 2 | ||||
-rw-r--r-- | kernel/src/lib.rs | 13 | ||||
-rw-r--r-- | kernel/x86_64-uff.json | 15 |
5 files changed, 42 insertions, 0 deletions
diff --git a/kernel/.cargo/config b/kernel/.cargo/config new file mode 100644 index 0000000..e698526 --- /dev/null +++ b/kernel/.cargo/config @@ -0,0 +1,3 @@ + +[build] +target = "x86_64-uff.json" diff --git a/kernel/Cargo.toml b/kernel/Cargo.toml new file mode 100644 index 0000000..410d6d7 --- /dev/null +++ b/kernel/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "kernel" +version = "0.1.0" +authors = ["Dennis Kobert <dennis@kobert.dev>", + "Jan Zwerschke"] +edition = "2018" + +[lib] +crate-type = ["staticlib"] diff --git a/kernel/README.md b/kernel/README.md index cf458c8..1b2c7a8 100644 --- a/kernel/README.md +++ b/kernel/README.md @@ -6,3 +6,5 @@ Required tools: * xorriso * grub * nasm +* rust +* cargo xbuild diff --git a/kernel/src/lib.rs b/kernel/src/lib.rs new file mode 100644 index 0000000..066a526 --- /dev/null +++ b/kernel/src/lib.rs @@ -0,0 +1,13 @@ +#![no_std] +#![no_main] + +#[no_mangle] +pub extern "C" fn _start() -> ! { + loop {} +} + +#[panic_handler] +#[no_mangle] +pub extern "C" fn panic_handler(_info: &core::panic::PanicInfo) -> ! { + loop {} +} diff --git a/kernel/x86_64-uff.json b/kernel/x86_64-uff.json new file mode 100644 index 0000000..7d2110d --- /dev/null +++ b/kernel/x86_64-uff.json @@ -0,0 +1,15 @@ +{ + "llvm-target": "x86_64-unknown-none", + "data-layout": "e-m:e-i64:64-f80:128-n8:16:32:64-S128", + "arch": "x86_64", + "target-endian": "little", + "target-pointer-width": "64", + "target-c-int-width": "32", + "os": "none", + "executables": true, + "linker-flavor": "ld.lld", + "linker": "rust-lld", + "panic-strategy": "abort", + "disable-redzone": true, + "features": "-mmx,-sse,+soft-float" +} |