Refactor build_artifacts.sh and makefile
- Move everything to .data, .vendor, .artifacts and .bin in order to cleanly separate build input and output.
- Sprinkle some subshells on build_artifacts.sh to make it fail more gracefully.
- Fix fetch_third_party.sh check.
- GOBUILD make helper.
- Dockerfile with build dependencies.
Test Plan:
Ran `make clean` and build steps described in README.md, it boots:
{P84}
X-Origin-Diff: phab/D195
GitOrigin-RevId: 4106534c7248931b79e93e2a13153482033cd0d8
diff --git a/kernel/initramfs.list b/kernel/initramfs.list
index 9bb0645..8fcb966 100644
--- a/kernel/initramfs.list
+++ b/kernel/initramfs.list
@@ -1,6 +1,6 @@
dir /dev 0755 0 0
nod /dev/console 0600 0 0 c 5 1
nod /dev/null 0644 0 0 c 1 3
-file /init ../../cmd/init/init 0755 0 0
+file /init ../../.bin/init 0755 0 0
dir /bin 0755 0 0
-file /bin/mkfs.xfs ../../third_party/xfsprogs-dev/mkfs/mkfs.xfs 0755 0 0
\ No newline at end of file
+file /bin/mkfs.xfs ../../.artifacts/mkfs.xfs 0755 0 0