@@ -4,12 +4,6 @@ An operating system written in Swift.
44
55## Prerequisites
66
7- - Make
8- - Arch Linux: ` sudo pacman -S make `
9- - Fedora 40 or later: ` sudo dnf install make `
10- - Ubuntu 24.04/22.04: ` sudo apt install make `
11- - Debian 12: ` sudo apt install make `
12- - macOS 14: bulit-in (` /usr/bin/make ` )
137- QEMU 9.0 or later
148 - Arch Linux: ` sudo pacman -S qemu-system-aarch64 `
159 - Fedora 41 or later: ` sudo dnf install qemu-system-aarch64-core `
@@ -24,20 +18,68 @@ An operating system written in Swift.
2418 swiftly install
2519 ```
2620
27- # # Building
21+ # # Building for emulators
22+
23+ On Linux,
2824
2925` ` ` shell
30- make
26+ swift build -c release --triple aarch64-none-none-elf --toolset toolsets/linux.json
3127` ` `
3228
33- # # Cleaning build outputs
29+ On macOS,
3430
3531` ` ` shell
36- make clean
32+ swift build -c release --triple aarch64-none-none-elf --toolset toolsets/macos.json
3733` ` `
3834
3935# # Running on QEMU
4036
37+ On Linux,
38+
39+ ` ` ` shell
40+ swift run -c release --triple aarch64-none-none-elf --toolset toolsets/linux.json
41+ ` ` `
42+
43+ On macOS,
44+
45+ ` ` ` shell
46+ swift run -c release --triple aarch64-none-none-elf --toolset toolsets/macos.json
47+ ` ` `
48+
49+ # # Building for real hardwares
50+
51+ On Linux,
52+
53+ ` ` ` shell
54+ swift build -c release --triple aarch64-none-none-elf --toolset toolsets/linux.json
55+ llvm-objcopy .build/release/Kernel -O binary .build/kernel8.img
56+ ` ` `
57+
58+ On macOS,
59+
60+ ` ` ` shell
61+ swift build -c release --triple aarch64-none-none-elf --toolset toolsets/macos.json
62+ llvm-objcopy .build/release/Kernel -O binary .build/kernel8.img
63+ ` ` `
64+
65+ # # Cleaning build outputs
66+
67+ ` ` ` shell
68+ swift package clean
69+ ` ` `
70+
71+ # # swift-format
72+
73+ This project is using [swift-format](https://github.com/swiftlang/swift-format) for formatting and linting.
74+
75+ Format:
76+
77+ ` ` ` shell
78+ swift format format -rip .
79+ ` ` `
80+
81+ Lint:
82+
4183` ` ` shell
42- make run
84+ swift format lint -rp .
4385` ` `
0 commit comments