summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmanuele Torre <torreemanuele6@gmail.com>2020-06-24 03:45:51 +0200
committerAndreas Kling <kling@serenityos.org>2020-07-01 12:53:39 +0200
commit8233ab197fe6c1d7ecf6ff38eca02f85e6e96e2c (patch)
tree8ffac90a033f57e54afebf994faedbfc9abf84d4
parentf7f1c3d7485aa3992bd49dbe3c25e35c460d6ab7 (diff)
downloadserenity-8233ab197fe6c1d7ecf6ff38eca02f85e6e96e2c.zip
Meta: make `CLion/run.sh` use `run.sh`
We don't need to copy `run.sh` and modify it: we can just set environment variables. Now, we don't have to modify two files everytime we make a change to the run.sh script. Also make SERENITY_BUILD overridable with environment variables,why not?
-rw-r--r--Meta/CLion/run.sh116
1 files changed, 10 insertions, 106 deletions
diff --git a/Meta/CLion/run.sh b/Meta/CLion/run.sh
index 4e9b5bfc7c..96ca0e3201 100644
--- a/Meta/CLion/run.sh
+++ b/Meta/CLion/run.sh
@@ -1,22 +1,21 @@
#!/bin/sh
-# shellcheck disable=SC2086 # FIXME: fix these globing warnings
set -e
-#SERENITY_PACKET_LOGGING_ARG="-object filter-dump,id=hue,netdev=breh,file=e1000.pcap"
+: "${SERENITY_RAM_SIZE:='256M'}"
+export SERENITY_RAM_SIZE
-[ -e /dev/kvm ] && [ -r /dev/kvm ] && [ -w /dev/kvm ] && SERENITY_KVM_ARG="-enable-kvm"
+# set this to the Build directory in serenity
+: "${SERENITY_BUILD:='/mnt/c/Users/Ragnarok/serenity-project/serenity/Build'}"
-[ -z "$SERENITY_BOCHS_BIN" ] && SERENITY_BOCHS_BIN="bochs"
+cd -P -- "$SERENITY_BUILD" || exit
+make install
+make image
# set this to point to qemu installation on windows
-[ -z "$SERENITY_QEMU_BIN" ] && SERENITY_QEMU_BIN="/mnt/c/Program Files/qemu/qemu-system-i386.exe"
+export SERENITY_QEMU_BIN='/mnt/c/Program Files/qemu/qemu-system-i386.exe'
-[ -z "$SERENITY_KERNEL_CMDLINE" ] && SERENITY_KERNEL_CMDLINE="hello"
-
-[ -z "$SERENITY_RAM_SIZE" ] && SERENITY_RAM_SIZE=256M
-
-[ -z "$SERENITY_COMMON_QEMU_ARGS" ] && SERENITY_COMMON_QEMU_ARGS="
+export SERENITY_COMMON_QEMU_ARGS="
$SERENITY_EXTRA_QEMU_ARGS
-s -m $SERENITY_RAM_SIZE
-cpu max
@@ -30,99 +29,4 @@ $SERENITY_EXTRA_QEMU_ARGS
-soundhw sb16
"
-[ -z "$SERENITY_COMMON_QEMU_Q35_ARGS" ] && SERENITY_COMMON_QEMU_Q35_ARGS="
-$SERENITY_EXTRA_QEMU_ARGS
--s -m $SERENITY_RAM_SIZE
--cpu max
--machine q35
--d cpu_reset,guest_errors
--smp 2
--device VGA,vgamem_mb=64
--device piix3-ide
--drive file=_disk_image,id=disk,if=none
--device ide-hd,bus=ide.6,drive=disk,unit=0
--debugcon stdio
--soundhw pcspk
--soundhw sb16
-"
-
-# set this to the Build directory in serenity
-SERENITY_BUILD="/mnt/c/Users/Ragnarok/serenity-project/serenity/Build"
-
-cd "$SERENITY_BUILD" || exit
-make install
-make image
-
-export SDL_VIDEO_X11_DGAMOUSE=0
-
-if [ "$1" = "b" ]; then
- # ./run b: bochs
- $SERENITY_BOCHS_BIN -q -f .bochsrc
-elif [ "$1" = "qn" ]; then
- # ./run qn: qemu without network
- "$SERENITY_QEMU_BIN" \
- $SERENITY_COMMON_QEMU_ARGS \
- -device e1000 \
- -kernel Kernel/Kernel \
- -append "${SERENITY_KERNEL_CMDLINE}"
-elif [ "$1" = "qtap" ]; then
- # ./run qtap: qemu with tap
- sudo "$SERENITY_QEMU_BIN" \
- $SERENITY_COMMON_QEMU_ARGS \
- $SERENITY_KVM_ARG \
- $SERENITY_PACKET_LOGGING_ARG \
- -netdev tap,ifname=tap0,id=br0 \
- -device e1000,netdev=br0 \
- -kernel Kernel/Kernel \
- -append "${SERENITY_KERNEL_CMDLINE}"
-elif [ "$1" = "qgrub" ]; then
- # ./run qgrub: qemu with grub
- "$SERENITY_QEMU_BIN" \
- $SERENITY_COMMON_QEMU_ARGS \
- $SERENITY_KVM_ARG \
- $SERENITY_PACKET_LOGGING_ARG \
- -netdev user,id=breh,hostfwd=tcp:127.0.0.1:8888-10.0.2.15:8888,hostfwd=tcp:127.0.0.1:8823-10.0.2.15:23 \
- -device e1000,netdev=breh
-elif [ "$1" = "q35_cmd" ]; then
- SERENITY_KERNEL_CMDLINE=""
- # FIXME: Someone who knows sh syntax better, please help:
- for _ in $(seq 2 $#); do
- shift
- SERENITY_KERNEL_CMDLINE="$SERENITY_KERNEL_CMDLINE $1"
- done
- echo "Starting SerenityOS, Commandline: ${SERENITY_KERNEL_CMDLINE}"
- # ./run: qemu with SerenityOS with custom commandline
- "$SERENITY_QEMU_BIN" \
- $SERENITY_COMMON_QEMU_Q35_ARGS \
- $SERENITY_KVM_ARG \
- -netdev user,id=breh,hostfwd=tcp:127.0.0.1:8888-10.0.2.15:8888,hostfwd=tcp:127.0.0.1:8823-10.0.2.15:23 \
- -device e1000,netdev=breh \
- -kernel Kernel/Kernel \
- -append "${SERENITY_KERNEL_CMDLINE}"
-elif [ "$1" = "qcmd" ]; then
- SERENITY_KERNEL_CMDLINE=""
- # FIXME: Someone who knows sh syntax better, please help:
- for _ in $(seq 2 $#); do
- shift
- SERENITY_KERNEL_CMDLINE="$SERENITY_KERNEL_CMDLINE $1"
- done
- echo "Starting SerenityOS, Commandline: ${SERENITY_KERNEL_CMDLINE}"
- # ./run: qemu with SerenityOS with custom commandline
- "$SERENITY_QEMU_BIN" \
- $SERENITY_COMMON_QEMU_ARGS \
- $SERENITY_KVM_ARG \
- -netdev user,id=breh,hostfwd=tcp:127.0.0.1:8888-10.0.2.15:8888,hostfwd=tcp:127.0.0.1:8823-10.0.2.15:23 \
- -device e1000,netdev=breh \
- -kernel Kernel/Kernel \
- -append "${SERENITY_KERNEL_CMDLINE}"
-else
- # ./run: qemu with user networking
- "$SERENITY_QEMU_BIN" \
- $SERENITY_COMMON_QEMU_ARGS \
- $SERENITY_KVM_ARG \
- $SERENITY_PACKET_LOGGING_ARG \
- -netdev user,id=breh,hostfwd=tcp:127.0.0.1:8888-10.0.2.15:8888,hostfwd=tcp:127.0.0.1:8823-10.0.2.15:23,hostfwd=tcp:127.0.0.1:8000-10.0.2.15:8000,hostfwd=tcp:127.0.0.1:2222-10.0.2.15:22 \
- -device e1000,netdev=breh \
- -kernel Kernel/Kernel \
- -append "${SERENITY_KERNEL_CMDLINE}"
-fi
+"$SERENITY_ROOT/Meta/run.sh" "$@"