Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ net0.pcap
*.dd
.llvmbox
/test/generated_tests
/disk-image
10 changes: 8 additions & 2 deletions crates/console/build.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")"

BIN="console"
TARGET=aarch64-unknown-none-softfloat
PROFILE=${PROFILE-"release"}

cargo rustc --profile="${PROFILE}" \
--target=${TARGET} -- \
-C relocation-model=static
--target="${TARGET}" \
--bin="${BIN}" \
-- -C relocation-model=static

if test "$PROFILE" = "dev" ; then
BINARY=../../target/${TARGET}/debug/${BIN}
Expand All @@ -17,3 +19,7 @@ else
fi

cp "${BINARY}" "${BIN}".elf

if test -n "$DESTDIR" ; then
cp "${BINARY}" "$DESTDIR/"
fi
10 changes: 8 additions & 2 deletions crates/display-server/build.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")"

BIN="display-server"
TARGET=aarch64-unknown-none-softfloat
PROFILE=${PROFILE-"release"}

cargo rustc --profile="${PROFILE}" \
--target=${TARGET} -- \
-C relocation-model=static
--target="${TARGET}" \
--bin="${BIN}" \
-- -C relocation-model=static

if test "$PROFILE" = "dev" ; then
BINARY=../../target/${TARGET}/debug/${BIN}
Expand All @@ -17,3 +19,7 @@ else
fi

cp "${BINARY}" "${BIN}".elf

if test -n "$DESTDIR" ; then
cp "${BINARY}" "$DESTDIR/"
fi
2 changes: 1 addition & 1 deletion crates/display-server/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -795,7 +795,7 @@ fn handle_conns(mut fb: framebuffer::Framebuffer, server_socket: FileDesc) {
}

fn spawn_console() {
let path = b"/console.elf";
let path = b"/console";
let file = ulib::sys::openat(3, path, 0, 0).unwrap();
ulib::sys::spawn_elf(&ulib::sys::SpawnArgs {
fd: file,
Expand Down
24 changes: 24 additions & 0 deletions crates/doomgeneric/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")"

BIN="doomgeneric"
TARGET=aarch64-unknown-none-softfloat
PROFILE=${PROFILE-"release"}

CC=clang cargo rustc --profile="${PROFILE}" \
--target="${TARGET}" \
--bin="${BIN}"

if test "$PROFILE" = "dev" ; then
BINARY=../../target/${TARGET}/debug/${BIN}
else
BINARY=../../target/${TARGET}/${PROFILE}/${BIN}
fi

cp "${BINARY}" "${BIN}".elf

if test -n "$DESTDIR" ; then
cp "${BINARY}" "$DESTDIR/"
fi
19 changes: 9 additions & 10 deletions crates/init/build.sh
Original file line number Diff line number Diff line change
@@ -1,28 +1,27 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")"

BIN="init"
TARGET=aarch64-unknown-none-softfloat
PROFILE=${PROFILE-"release"}

mkdir -p fs
FS_PATH="../../disk-image"
mkdir -p "$FS_PATH"

# ./shell.rs
# cp shell.elf fs/
# ./ls.rs
# cp ls.elf fs/
./sharedMemTest.rs
cp sharedMemTest.elf fs/
cp sharedMemTest.elf "$FS_PATH/"


cargo run -q -p initfs --bin util \
-- create --compress --out fs.arc --root fs fs --verbose
cargo run -q -p initfs --bin util --release \
-- create --compress --out fs.arc --root "$FS_PATH" "$FS_PATH" --verbose

# cargo clean
cargo rustc --profile="${PROFILE}" \
--target=${TARGET} -- \
-C relocation-model=static
--target="${TARGET}" \
--bin="${BIN}" \
-- -C relocation-model=static

if test "$PROFILE" = "dev" ; then
BINARY=../../target/${TARGET}/debug/${BIN}
Expand Down
4 changes: 2 additions & 2 deletions crates/init/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ pub extern "C" fn main() {

let root_fd = 3;

let path = b"display-server.elf";
let path = b"display-server";
let file = ulib::sys::openat(root_fd, path, 0, 0).unwrap();
spawn_elf(&ulib::sys::SpawnArgs {
fd: file,
Expand All @@ -36,7 +36,7 @@ pub extern "C" fn main() {
.unwrap();

for _ in 0..4 {
let console_path = "console.elf".as_bytes();
let console_path = "console".as_bytes();
let shell_path = "shell".as_bytes();

spawn_elf(&ulib::sys::SpawnArgs {
Expand Down
2 changes: 1 addition & 1 deletion crates/kernel/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ log = { version = "0.4", default-features = false }
device-tree = { path = "../device-tree" }
endian = { path = "../endian" }
elf = { path = "../elf" }
initfs = { path = "../initfs"}
filesystem = { path = "../filesystem" }
initfs = { path = "../initfs"}
2 changes: 2 additions & 0 deletions crates/kernel/scripts/attach-serial.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#!/usr/bin/env bash

SERIAL_DEV=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_B0044ASI-if00-port0
LOGFILE=log/$(date -Is).log
echo "Logging to $LOGFILE"
Expand Down
3 changes: 2 additions & 1 deletion crates/kernel/scripts/build.sh
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")/.."

EXAMPLE=${1-"net"}
EXAMPLE=${1-"user"}
TARGET=aarch64-unknown-none-softfloat
PROFILE=${PROFILE-"release"}

Expand Down
13 changes: 8 additions & 5 deletions crates/kernel/scripts/compile-init.sh
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")/../../shell"
./build.sh
cd ../init/
mv ../shell/bin/* fs/
./build.sh
cd "$(dirname "$0")/.."

FS_PATH="../../disk-image"

DESTDIR="$FS_PATH" ../shell/build.sh
DESTDIR="$FS_PATH" ../console/build.sh
DESTDIR="$FS_PATH" ../display-server/build.sh
../init/build.sh
14 changes: 14 additions & 0 deletions crates/kernel/scripts/run-usb-debug.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/usr/bin/env bash

set -ex
QEMU_DISPLAY=${QEMU_DISPLAY-"default"} \
QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse
-device usb-net,netdev=net0 -netdev user,id=net0,hostfwd=tcp::2222-:22
-object filter-dump,id=f1,netdev=net0,file=net0.pcap" \
"$(dirname "$0")/run.sh"

# QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse -device usb-net,netdev=net0 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -object filter-dump,id=f1,netdev=net0,file=net0.pcap" "$(dirname "$0")/run.sh"

# QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse -device usb-net,netdev=net0 -netdev bridge,id=net0,br=br0 -object filter-dump,id=f1,netdev=net0,file=net0.pcap" "$(dirname "$0")/run.sh"
# QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-device usb-hub,id=hub1 -device usb-kbd -device usb-mouse" "$(dirname "$0")/run.sh"
# QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse,pcap=usb-mouse.pcap -device usb-net,netdev=net0 -netdev user,id=net0,hostfwd=tcp::2222-:22 -object filter-dump,id=f1,netdev=net0,file=net0.pcap" "$(dirname "$0")/run.sh"
6 changes: 5 additions & 1 deletion crates/kernel/scripts/run-usb.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
#!/usr/bin/env bash

set -ex
QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse -device usb-net,netdev=net0 -netdev user,id=net0,hostfwd=tcp::2222-:22 -object filter-dump,id=f1,netdev=net0,file=net0.pcap" "$(dirname "$0")/run.sh"
QEMU_DISPLAY=${QEMU_DISPLAY-"default"} \
QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse
-device usb-net,netdev=net0 -netdev user,id=net0,hostfwd=tcp::2222-:22" \
"$(dirname "$0")/run.sh"

# QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse -device usb-net,netdev=net0 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -object filter-dump,id=f1,netdev=net0,file=net0.pcap" "$(dirname "$0")/run.sh"

# QEMU_DISPLAY=${QEMU_DISPLAY-"default"} QEMU_DEVICES="-usb -device usb-kbd -device usb-mouse -device usb-net,netdev=net0 -netdev bridge,id=net0,br=br0 -object filter-dump,id=f1,netdev=net0,file=net0.pcap" "$(dirname "$0")/run.sh"
Expand Down
1 change: 1 addition & 0 deletions crates/kernel/scripts/run.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/usr/bin/env bash

set -e
cd "$(dirname "$0")/.."

# Check if sdcard.img exists, create it if not
if [ ! -f sdcard.img ]; then
Expand Down
4 changes: 4 additions & 0 deletions crates/shell/build.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/usr/bin/env bash

set -ex
cd "$(dirname "$0")"

TARGET=aarch64-unknown-none-softfloat
PROFILE=${PROFILE:-release}
Expand All @@ -21,4 +22,7 @@ for src in src/bin/*.rs; do
fi

cp "${BINARY}" "bin/${BIN}"
if test -n "$DESTDIR" ; then
cp "${BINARY}" "$DESTDIR/${BIN}"
fi
done
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading