Commit Graph

40 Commits

Author SHA1 Message Date
Berkus Decker 79f859b576 wip: nucleus builds! 2023-12-10 04:44:36 +02:00
Berkus Decker 7c76dbded1 sq: refactor build system 2023-11-20 02:40:17 +02:00
Berkus Decker 1ad51993d0 chore(build): Add emoji to command output 2023-11-18 23:15:03 +02:00
Berkus Decker c6e466e914 wip: refactor build system
Reduce redundancy, make naming more clear.
Add ttt target.
2023-11-18 14:29:39 +02:00
Berkus Decker b1d54d3b44 chore: ♻️ Disable asm output in QEMU runner
But keep it for qemu-gdb.
2023-08-01 16:59:42 +03:00
Berkus Decker 13d6b2a037 chore: ♻️ Add QEMU tracing options for aarch64
Disabled for now, need to try them out.
2023-07-29 04:08:18 +03:00
Berkus Decker 5356de7cbb fix: 🐛 Disable some make tasks
Allows running gdb and hopper tasks.
Enable QEMU task.
2023-07-29 04:08:18 +03:00
Berkus Decker b1bbdf087a feat: Use gdbgui for debug 2023-07-29 04:08:18 +03:00
Berkus Decker d6887bccee refactor(build): 📦 Use single gdb-config command 2023-07-29 04:08:18 +03:00
Berkus Decker 886cd0a18d fix: 🐛 Allow executing gdb from cargo-make
It was failing before because no tty was available.
2022-06-11 00:25:21 +03:00
Berkus Decker fc90fde4f0 feat: Add qemu-cb-gdb target 2022-06-11 00:25:21 +03:00
Berkus Decker b52c63796c fix: 🐛 Set GDB breakpoints by physical address 2022-06-11 00:25:21 +03:00
Berkus Decker 67db178c6f fix: 🐛 Invoke nm properly 2022-05-08 23:21:33 +03:00
Berkus Decker d22eb31d10 build: 🛠 add `chainofcommand` target 2022-03-01 01:11:58 +02:00
Berkus Decker 637304bdb3 feat: Add better nm output
Demangle and sort by symbol address.
2022-02-10 02:16:28 +02:00
Berkus Decker cfe4a230de feat: Add chainboot boot loader 2022-02-10 02:15:57 +02:00
Berkus Decker f76fab3fff chore: ♻️ Use different DTB files for rpi3 and rpi4 2022-02-10 02:14:07 +02:00
Berkus Decker 721af870bf build: 🛠 Make image prepare steps more verbose 2022-02-10 02:14:07 +02:00
Berkus Decker 40782ea7cc chore(debug): ♻️ Upgrade gdb version and update run scripts 2022-02-10 02:14:07 +02:00
Berkus Decker 4cdeeb8556 refactor: 📦 Split kernel into machine and nucleus
Move openocd task to upper level and remove kernel
build dependency - the qemu runner doesn't really
depend on it.
2022-02-10 02:14:07 +02:00
Berkus Decker b26d61cb67 build: 🛠 Improve Justfile help output
Enter `just` to see a list of available commands
with explanations.

Added `just ci` step.
Added `just fmt-check`.
Removed unnecessary kernel file removals.
Moved sdeject task and added `just device-eject`.
2022-01-23 16:03:03 +02:00
Berkus Decker 503f43d983 build(tools): Enable target board selection 2021-12-20 17:52:14 +02:00
Berkus Decker 5a304557a7 build(tools): Add RasPi4 target configuration for OpenOCD
Update and move rpi3 jtag configs.
Add rpi bringup doc - lists romtables for configuring.
2021-12-20 17:51:20 +02:00
Berkus Decker f6da27062f build(tools): Update OpenOCD version
RTT patch has been merged, so use the latest 0.11.0-rc2+dev-01576-g0d9e8bd52-dirty
2021-12-20 17:51:08 +02:00
Berkus Decker e6ddbb76e7 feat: Add zellij qemu runner with serial emulation 2021-11-17 17:19:39 +02:00
Berkus Decker 601cf7a784 Add documentation target
Type `just doc` to see documentation in browser.

Improve doc comments in code to support
rustdoc links format.
2021-01-27 19:22:48 +02:00
Berkus Decker e8da38e04f Add qemu-gdb target
Refactor QEMU runners.
2020-11-14 17:59:50 +02:00
Berkus Decker 7604f7c166 Add cargo expand task 2020-11-14 17:33:43 +02:00
Berkus Decker bfba78118f Move build-std flags to cargo config 2020-11-14 17:33:43 +02:00
Berkus Decker 79028dba96 Add nm helper target 2020-11-04 22:24:39 +02:00
Berkus Decker 6da44a69ac Improve gdb runner 2020-11-04 22:24:34 +02:00
Berkus Decker d38661b63f Add openocd/gdb targets to makefile
Refactor build system scripts a bit.
2020-11-03 19:29:43 +02:00
Berkus Decker 9f06e2f1a5 Add clippy features matrix
Run clippy on all available feature combos.
2020-10-27 13:09:21 +02:00
Berkus Decker 504dcd1f65 Update copyrights 2020-10-15 23:04:01 +03:00
Berkus Decker 44037398d4 Add hopper make target
hopper is useful for inspecting kernel disassembly.
2020-10-07 21:23:23 +03:00
Berkus Decker 4cc5305dc8 Prepare scripts for windows CI runner 2020-10-06 19:27:50 +03:00
Berkus Decker af1cc83530 Add testing framework
Based on os.phil-opp.com ideas it includes running test framework in
qemu semihosting mode so that tests can indicate pass or fail to calling
process.

GitHub Actions are configured to run these tests and validate acceptance.

Add test-runner target to perform tests in qemu.

Add -nographic for qemu running tests.

Drop serial for qemu tests as well.
2020-10-06 19:27:50 +03:00
Berkus Decker a4a3289712 Add GH Actions build workflow 2020-08-10 00:34:49 +03:00
Berkus Decker 57fc6e5aa5 Add QEMU configuration 2020-08-09 19:40:57 +03:00
Berkus Decker cb814b353b Add Raspberry Pi target configuration
* Use rlibc for memset/memcpy
* Create linker script for raspberry pi 3
* Add aarch64 target file inspired by Robigalia
* Force bitcode embedding for LTO
2020-08-09 19:35:09 +03:00