Build images in directory per arch, remove bochs
This commit is contained in:
parent
f6d58d5b68
commit
9232e4282a
19
Makefile
19
Makefile
|
@ -4,14 +4,14 @@ include mk/config.mk
|
||||||
# Dependencies
|
# Dependencies
|
||||||
include mk/depends.mk
|
include mk/depends.mk
|
||||||
|
|
||||||
all: build/harddrive.img
|
all: $(BUILD)/harddrive.img
|
||||||
|
|
||||||
live: build/livedisk.iso
|
live: $(BUILD)/livedisk.iso
|
||||||
|
|
||||||
rebuild:
|
rebuild:
|
||||||
-$(FUMOUNT) build/filesystem/ || true
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
||||||
-$(FUMOUNT) /tmp/redox_installer/ || true
|
-$(FUMOUNT) /tmp/redox_installer/ || true
|
||||||
rm -rf build
|
rm -rf $(BUILD)
|
||||||
$(MAKE) all
|
$(MAKE) all
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
|
@ -20,9 +20,9 @@ clean:
|
||||||
cargo clean --manifest-path installer/Cargo.toml
|
cargo clean --manifest-path installer/Cargo.toml
|
||||||
cargo clean --manifest-path redoxfs/Cargo.toml
|
cargo clean --manifest-path redoxfs/Cargo.toml
|
||||||
cargo clean --manifest-path relibc/Cargo.toml
|
cargo clean --manifest-path relibc/Cargo.toml
|
||||||
-$(FUMOUNT) build/filesystem/ || true
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
||||||
-$(FUMOUNT) /tmp/redox_installer/ || true
|
-$(FUMOUNT) /tmp/redox_installer/ || true
|
||||||
rm -rf build
|
rm -rf $(BUILD)
|
||||||
|
|
||||||
distclean:
|
distclean:
|
||||||
$(MAKE) clean
|
$(MAKE) clean
|
||||||
|
@ -33,9 +33,9 @@ pull:
|
||||||
git submodule sync --recursive
|
git submodule sync --recursive
|
||||||
git submodule update --recursive --init
|
git submodule update --recursive --init
|
||||||
|
|
||||||
fetch: build/fetch.tag
|
fetch: $(BUILD)/fetch.tag
|
||||||
|
|
||||||
repo: build/repo.tag
|
repo: $(BUILD)/repo.tag
|
||||||
|
|
||||||
# Cross compiler recipes
|
# Cross compiler recipes
|
||||||
include mk/prefix.mk
|
include mk/prefix.mk
|
||||||
|
@ -48,7 +48,6 @@ include mk/disk.mk
|
||||||
|
|
||||||
# Emulation recipes
|
# Emulation recipes
|
||||||
include mk/qemu.mk
|
include mk/qemu.mk
|
||||||
include mk/bochs.mk
|
|
||||||
include mk/virtualbox.mk
|
include mk/virtualbox.mk
|
||||||
|
|
||||||
# CI
|
# CI
|
||||||
|
@ -70,4 +69,4 @@ FORCE:
|
||||||
|
|
||||||
# Wireshark
|
# Wireshark
|
||||||
wireshark: FORCE
|
wireshark: FORCE
|
||||||
wireshark build/network.pcap
|
wireshark $(BUILD)/network.pcap
|
||||||
|
|
28
bochs.i686
28
bochs.i686
|
@ -1,28 +0,0 @@
|
||||||
megs: 1024
|
|
||||||
boot: disk
|
|
||||||
ata0-master: type=disk, path="build/harddrive.img", mode=flat
|
|
||||||
|
|
||||||
#com1: enabled=1, mode=file, dev=build/serial.log
|
|
||||||
cpu: model=p2_klamath
|
|
||||||
#e1000: enabled=1, mac=52:54:00:12:34:56 ethmod=vnet
|
|
||||||
|
|
||||||
|
|
||||||
# enable "cirrus" SVGA. Note that neither this nor VBE works perfectly
|
|
||||||
#vga: extension=cirrus
|
|
||||||
#vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest-cirrus
|
|
||||||
|
|
||||||
#vga: extension=vbe
|
|
||||||
|
|
||||||
|
|
||||||
magic_break: enabled=1
|
|
||||||
|
|
||||||
#uncomment to choose either display library to use
|
|
||||||
#display_library: sdl2
|
|
||||||
display_library: x, options="gui_debug"
|
|
||||||
|
|
||||||
log: -
|
|
||||||
debug: action=ignore
|
|
||||||
info: action=report
|
|
||||||
error: action=report
|
|
||||||
panic: action=ask
|
|
||||||
debugger_log: -
|
|
28
bochs.x86_64
28
bochs.x86_64
|
@ -1,28 +0,0 @@
|
||||||
megs: 1024
|
|
||||||
boot: disk
|
|
||||||
ata0-master: type=disk, path="build/harddrive.img", mode=flat
|
|
||||||
|
|
||||||
#com1: enabled=1, mode=file, dev=build/serial.log
|
|
||||||
#cpu: model=corei7_haswell_4770
|
|
||||||
#e1000: enabled=1, mac=52:54:00:12:34:56 ethmod=vnet
|
|
||||||
|
|
||||||
|
|
||||||
# enable "cirrus" SVGA. Note that neither this nor VBE works perfectly
|
|
||||||
#vga: extension=cirrus
|
|
||||||
#vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest-cirrus
|
|
||||||
|
|
||||||
#vga: extension=vbe
|
|
||||||
|
|
||||||
|
|
||||||
magic_break: enabled=1
|
|
||||||
|
|
||||||
#uncomment to choose either display library to use
|
|
||||||
#display_library: sdl2
|
|
||||||
display_library: x, options="gui_debug"
|
|
||||||
|
|
||||||
log: -
|
|
||||||
debug: action=ignore
|
|
||||||
info: action=report
|
|
||||||
error: action=report
|
|
||||||
panic: action=ask
|
|
||||||
debugger_log: -
|
|
2
cookbook
2
cookbook
|
@ -1 +1 @@
|
||||||
Subproject commit f0c7eeda727b8fa412e5ff24a57f860453d224aa
|
Subproject commit d7ce4d4d65b505a1c8428434ade5f49a143d59b2
|
|
@ -1,2 +0,0 @@
|
||||||
bochs: build/harddrive.img
|
|
||||||
bochs -f bochs.$(ARCH)
|
|
24
mk/ci.mk
24
mk/ci.mk
|
@ -1,6 +1,6 @@
|
||||||
IMG_TAG?=$(shell git describe --tags)
|
IMG_TAG?=$(shell git describe --tags)
|
||||||
IMG_SEPARATOR?=_
|
IMG_SEPARATOR?=_
|
||||||
IMG_DIR?=build/img
|
IMG_DIR?=$(BUILD)/img
|
||||||
|
|
||||||
# CI image target - build desktop, server and demo images
|
# CI image target - build desktop, server and demo images
|
||||||
# To leave out the build tag, set both IMG_TAG and IMG_SEPARATOR to null
|
# To leave out the build tag, set both IMG_TAG and IMG_SEPARATOR to null
|
||||||
|
@ -12,13 +12,13 @@ ci-img: FORCE
|
||||||
|
|
||||||
# The name of the target must match the name of the filesystem config file
|
# The name of the target must match the name of the filesystem config file
|
||||||
desktop server demo: FORCE
|
desktop server demo: FORCE
|
||||||
rm -f "build/harddrive.img" "build/livedisk.iso"
|
rm -f "$(BUILD)/harddrive.img" "$(BUILD)/livedisk.iso"
|
||||||
$(MAKE) REPO_BINARY=1 \
|
$(MAKE) REPO_BINARY=1 \
|
||||||
FILESYSTEM_CONFIG=config/$(ARCH)/$@.toml \
|
FILESYSTEM_CONFIG=config/$(ARCH)/$@.toml \
|
||||||
build/harddrive.img \
|
$(BUILD)/harddrive.img \
|
||||||
build/livedisk.iso
|
$(BUILD)/livedisk.iso
|
||||||
cp "build/harddrive.img" "$(IMG_DIR)/redox_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_harddrive.img"
|
cp "$(BUILD)/harddrive.img" "$(IMG_DIR)/redox_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_harddrive.img"
|
||||||
cp "build/livedisk.iso" "$(IMG_DIR)/redox_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_livedisk.iso"
|
cp "$(BUILD)/livedisk.iso" "$(IMG_DIR)/redox_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_livedisk.iso"
|
||||||
|
|
||||||
# CI packaging target
|
# CI packaging target
|
||||||
ci-pkg: prefix FORCE
|
ci-pkg: prefix FORCE
|
||||||
|
@ -36,9 +36,9 @@ ci-toolchain: FORCE
|
||||||
"prefix/$(TARGET)/gcc-install.tar.gz" \
|
"prefix/$(TARGET)/gcc-install.tar.gz" \
|
||||||
"prefix/$(TARGET)/relibc-install.tar.gz" \
|
"prefix/$(TARGET)/relibc-install.tar.gz" \
|
||||||
"prefix/$(TARGET)/rust-install.tar.gz"
|
"prefix/$(TARGET)/rust-install.tar.gz"
|
||||||
rm -rf "build/toolchain/$(TARGET)"
|
rm -rf "$(BUILD)/toolchain"
|
||||||
mkdir -p "build/toolchain/$(TARGET)"
|
mkdir -p "$(BUILD)/toolchain"
|
||||||
cp "prefix/$(TARGET)/gcc-install.tar.gz" "build/toolchain/$(TARGET)/gcc-install.tar.gz"
|
cp "prefix/$(TARGET)/gcc-install.tar.gz" "$(BUILD)/toolchain/gcc-install.tar.gz"
|
||||||
cp "prefix/$(TARGET)/relibc-install.tar.gz" "build/toolchain/$(TARGET)/relibc-install.tar.gz"
|
cp "prefix/$(TARGET)/relibc-install.tar.gz" "$(BUILD)/toolchain/relibc-install.tar.gz"
|
||||||
cp "prefix/$(TARGET)/rust-install.tar.gz" "build/toolchain/$(TARGET)/rust-install.tar.gz"
|
cp "prefix/$(TARGET)/rust-install.tar.gz" "$(BUILD)/toolchain/rust-install.tar.gz"
|
||||||
cd "build/toolchain/$(TARGET)" && sha256sum -b * > SHA256SUM
|
cd "$(BUILD)/toolchain" && sha256sum -b * > SHA256SUM
|
||||||
|
|
|
@ -51,10 +51,11 @@ export XARGO_RUST_SRC=$(ROOT)/rust/src
|
||||||
|
|
||||||
## Userspace variables
|
## Userspace variables
|
||||||
export TARGET=$(ARCH)-unknown-redox
|
export TARGET=$(ARCH)-unknown-redox
|
||||||
|
BUILD=build/$(ARCH)
|
||||||
INSTALLER=installer/target/release/redox_installer
|
INSTALLER=installer/target/release/redox_installer
|
||||||
ifeq ($(REPO_BINARY),0)
|
ifeq ($(REPO_BINARY),0)
|
||||||
INSTALLER+=--cookbook=cookbook
|
INSTALLER+=--cookbook=cookbook
|
||||||
REPO_TAG=build/repo.tag
|
REPO_TAG=$(BUILD)/repo.tag
|
||||||
endif
|
endif
|
||||||
|
|
||||||
## Cross compiler variables
|
## Cross compiler variables
|
||||||
|
|
38
mk/disk.mk
38
mk/disk.mk
|
@ -1,53 +1,53 @@
|
||||||
build/harddrive.img: $(REPO_TAG)
|
$(BUILD)/harddrive.img: $(REPO_TAG)
|
||||||
mkdir -p build
|
mkdir -p $(BUILD)
|
||||||
rm -rf $@ $@.partial
|
rm -rf $@ $@.partial
|
||||||
-$(FUMOUNT) /tmp/redox_installer || true
|
-$(FUMOUNT) /tmp/redox_installer || true
|
||||||
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial
|
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial
|
||||||
$(INSTALLER) -c $(FILESYSTEM_CONFIG) $@.partial
|
$(INSTALLER) -c $(FILESYSTEM_CONFIG) $@.partial
|
||||||
mv $@.partial $@
|
mv $@.partial $@
|
||||||
|
|
||||||
build/livedisk.iso: $(REPO_TAG)
|
$(BUILD)/livedisk.iso: $(REPO_TAG)
|
||||||
mkdir -p build
|
mkdir -p $(BUILD)
|
||||||
rm -rf $@ $@.partial
|
rm -rf $@ $@.partial
|
||||||
-$(FUMOUNT) /tmp/redox_installer || true
|
-$(FUMOUNT) /tmp/redox_installer || true
|
||||||
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial
|
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial
|
||||||
$(INSTALLER) -c $(FILESYSTEM_CONFIG) --live $@.partial
|
$(INSTALLER) -c $(FILESYSTEM_CONFIG) --live $@.partial
|
||||||
mv $@.partial $@
|
mv $@.partial $@
|
||||||
|
|
||||||
build/filesystem.img: $(REPO_TAG)
|
$(BUILD)/filesystem.img: $(REPO_TAG)
|
||||||
mkdir -p build
|
mkdir -p $(BUILD)
|
||||||
$(HOST_CARGO) build --manifest-path redoxfs/Cargo.toml --release
|
$(HOST_CARGO) build --manifest-path redoxfs/Cargo.toml --release
|
||||||
-$(FUMOUNT) build/filesystem/ || true
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
||||||
rm -rf $@ $@.partial build/filesystem/
|
rm -rf $@ $@.partial $(BUILD)/filesystem/
|
||||||
-$(FUMOUNT) /tmp/redox_installer || true
|
-$(FUMOUNT) /tmp/redox_installer || true
|
||||||
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial
|
fallocate --posix --length "$(FILESYSTEM_SIZE)MiB" $@.partial
|
||||||
redoxfs/target/release/redoxfs-mkfs $(REDOXFS_MKFS_FLAGS) $@.partial
|
redoxfs/target/release/redoxfs-mkfs $(REDOXFS_MKFS_FLAGS) $@.partial
|
||||||
mkdir -p build/filesystem/
|
mkdir -p $(BUILD)/filesystem/
|
||||||
redoxfs/target/release/redoxfs $@.partial build/filesystem/
|
redoxfs/target/release/redoxfs $@.partial $(BUILD)/filesystem/
|
||||||
sleep 1
|
sleep 1
|
||||||
pgrep redoxfs
|
pgrep redoxfs
|
||||||
$(INSTALLER) -c $(FILESYSTEM_CONFIG) build/filesystem/
|
$(INSTALLER) -c $(FILESYSTEM_CONFIG) $(BUILD)/filesystem/
|
||||||
sync
|
sync
|
||||||
-$(FUMOUNT) build/filesystem/ || true
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
||||||
rm -rf build/filesystem/
|
rm -rf $(BUILD)/filesystem/
|
||||||
mv $@.partial $@
|
mv $@.partial $@
|
||||||
|
|
||||||
mount: FORCE
|
mount: FORCE
|
||||||
mkdir -p build/filesystem/
|
mkdir -p $(BUILD)/filesystem/
|
||||||
$(HOST_CARGO) build --manifest-path redoxfs/Cargo.toml --release --bin redoxfs
|
$(HOST_CARGO) build --manifest-path redoxfs/Cargo.toml --release --bin redoxfs
|
||||||
redoxfs/target/release/redoxfs build/harddrive.img build/filesystem/
|
redoxfs/target/release/redoxfs $(BUILD)/harddrive.img $(BUILD)/filesystem/
|
||||||
sleep 2
|
sleep 2
|
||||||
pgrep redoxfs
|
pgrep redoxfs
|
||||||
|
|
||||||
mount_extra: FORCE
|
mount_extra: FORCE
|
||||||
mkdir -p build/filesystem/
|
mkdir -p $(BUILD)/filesystem/
|
||||||
$(HOST_CARGO) build --manifest-path redoxfs/Cargo.toml --release --bin redoxfs
|
$(HOST_CARGO) build --manifest-path redoxfs/Cargo.toml --release --bin redoxfs
|
||||||
redoxfs/target/release/redoxfs build/extra.img build/filesystem/
|
redoxfs/target/release/redoxfs $(BUILD)/extra.img $(BUILD)/filesystem/
|
||||||
sleep 2
|
sleep 2
|
||||||
pgrep redoxfs
|
pgrep redoxfs
|
||||||
|
|
||||||
unmount: FORCE
|
unmount: FORCE
|
||||||
sync
|
sync
|
||||||
-$(FUMOUNT) build/filesystem/ || true
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
||||||
rm -rf build/filesystem/
|
rm -rf $(BUILD)/filesystem/
|
||||||
-$(FUMOUNT) /tmp/redox_installer || true
|
-$(FUMOUNT) /tmp/redox_installer || true
|
||||||
|
|
48
mk/qemu.mk
48
mk/qemu.mk
|
@ -35,16 +35,16 @@ $(error Unsupported ARCH for QEMU "$(ARCH)"))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(efi),yes)
|
ifeq ($(efi),yes)
|
||||||
FIRMWARE=build/firmware.rom
|
FIRMWARE=$(BUILD)/firmware.rom
|
||||||
QEMUFLAGS+=-bios build/firmware.rom
|
QEMUFLAGS+=-bios $(BUILD)/firmware.rom
|
||||||
else
|
else
|
||||||
FIRMWARE=
|
FIRMWARE=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(live),yes)
|
ifeq ($(live),yes)
|
||||||
DISK=build/livedisk.iso
|
DISK=$(BUILD)/livedisk.iso
|
||||||
else
|
else
|
||||||
DISK=build/harddrive.img
|
DISK=$(BUILD)/harddrive.img
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(serial),no)
|
ifeq ($(serial),no)
|
||||||
|
@ -76,7 +76,7 @@ else
|
||||||
QEMUFLAGS+=-netdev user,id=net0,hostfwd=tcp::8080-:8080,hostfwd=tcp::8083-:8083,hostfwd=tcp::64126-:64126 -device e1000,netdev=net0,id=nic0
|
QEMUFLAGS+=-netdev user,id=net0,hostfwd=tcp::8080-:8080,hostfwd=tcp::8083-:8083,hostfwd=tcp::64126-:64126 -device e1000,netdev=net0,id=nic0
|
||||||
else
|
else
|
||||||
QEMUFLAGS+=-netdev user,id=net0 -device e1000,netdev=net0 \
|
QEMUFLAGS+=-netdev user,id=net0 -device e1000,netdev=net0 \
|
||||||
-object filter-dump,id=f1,netdev=net0,file=build/network.pcap
|
-object filter-dump,id=f1,netdev=net0,file=$(BUILD)/network.pcap
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
@ -102,56 +102,56 @@ ifeq ($(UNAME),Linux)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(UNAME),Linux)
|
ifeq ($(UNAME),Linux)
|
||||||
build/extra.img:
|
$(BUILD)/extra.img:
|
||||||
fallocate --posix --length 1G $@
|
fallocate --posix --length 1G $@
|
||||||
else
|
else
|
||||||
build/extra.img:
|
$(BUILD)/extra.img:
|
||||||
truncate -s 1g $@
|
truncate -s 1g $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
build/firmware.rom:
|
$(BUILD)/firmware.rom:
|
||||||
cp $(QEMU_EFI) $@
|
cp $(QEMU_EFI) $@
|
||||||
|
|
||||||
qemu: $(DISK) $(FIRMWARE) build/extra.img
|
qemu: $(DISK) $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-hdc $(DISK)
|
-hdc $(DISK)
|
||||||
echo -drive file=$(DISK),format=raw \
|
echo -drive file=$(DISK),format=raw \
|
||||||
-drive file=build/extra.img,format=raw
|
-drive file=$(BUILD)/extra.img,format=raw
|
||||||
|
|
||||||
qemu_no_build: $(FIRMWARE) build/extra.img
|
qemu_no_build: $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-drive file=$(DISK),format=raw \
|
-drive file=$(DISK),format=raw \
|
||||||
-drive file=build/extra.img,format=raw
|
-drive file=$(BUILD)/extra.img,format=raw
|
||||||
|
|
||||||
qemu_cdrom: $(DISK) $(FIRMWARE) build/extra.img
|
qemu_cdrom: $(DISK) $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-boot d -cdrom $(DISK) \
|
-boot d -cdrom $(DISK) \
|
||||||
-drive file=build/extra.img,format=raw
|
-drive file=$(BUILD)/extra.img,format=raw
|
||||||
|
|
||||||
qemu_cdrom_no_build: $(FIRMWARE) build/extra.img
|
qemu_cdrom_no_build: $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-boot d -cdrom $(DISK) \
|
-boot d -cdrom $(DISK) \
|
||||||
-drive file=build/extra.img,format=raw
|
-drive file=$(BUILD)/extra.img,format=raw
|
||||||
|
|
||||||
qemu_nvme: $(DISK) $(FIRMWARE) build/extra.img
|
qemu_nvme: $(DISK) $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-drive file=$(DISK),format=raw,if=none,id=drv0 -device nvme,drive=drv0,serial=NVME_SERIAL \
|
-drive file=$(DISK),format=raw,if=none,id=drv0 -device nvme,drive=drv0,serial=NVME_SERIAL \
|
||||||
-drive file=build/extra.img,format=raw,if=none,id=drv1 -device nvme,drive=drv1,serial=NVME_EXTRA
|
-drive file=$(BUILD)/extra.img,format=raw,if=none,id=drv1 -device nvme,drive=drv1,serial=NVME_EXTRA
|
||||||
|
|
||||||
qemu_nvme_no_build: $(FIRMWARE) build/extra.img
|
qemu_nvme_no_build: $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-drive file=$(DISK),format=raw,if=none,id=drv0 -device nvme,drive=drv0,serial=NVME_SERIAL \
|
-drive file=$(DISK),format=raw,if=none,id=drv0 -device nvme,drive=drv0,serial=NVME_SERIAL \
|
||||||
-drive file=build/extra.img,format=raw,if=none,id=drv1 -device nvme,drive=drv1,serial=NVME_EXTRA
|
-drive file=$(BUILD)/extra.img,format=raw,if=none,id=drv1 -device nvme,drive=drv1,serial=NVME_EXTRA
|
||||||
|
|
||||||
qemu_usb: $(DISK) $(FIRMWARE)
|
qemu_usb: $(DISK) $(FIRMWARE)
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-drive if=none,id=usbstick,format=raw,file=$(DISK) \
|
-drive if=none,id=usbstick,format=raw,file=$(DISK) \
|
||||||
-device usb-storage,drive=usbstick
|
-device usb-storage,drive=usbstick
|
||||||
|
|
||||||
qemu_extra: $(FIRMWARE) build/extra.img
|
qemu_extra: $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-drive file=build/extra.img,format=raw
|
-drive file=$(BUILD)/extra.img,format=raw
|
||||||
|
|
||||||
qemu_nvme_extra: $(FIRMWARE) build/extra.img
|
qemu_nvme_extra: $(FIRMWARE) $(BUILD)/extra.img
|
||||||
$(QEMU) $(QEMUFLAGS) \
|
$(QEMU) $(QEMUFLAGS) \
|
||||||
-drive file=build/extra.img,format=raw,if=none,id=drv1 -device nvme,drive=drv1,serial=NVME_EXTRA
|
-drive file=$(BUILD)/extra.img,format=raw,if=none,id=drv1 -device nvme,drive=drv1,serial=NVME_EXTRA
|
||||||
|
|
|
@ -1,18 +1,18 @@
|
||||||
build/fetch.tag: cookbook installer prefix $(FILESYSTEM_CONFIG)
|
$(BUILD)/fetch.tag: cookbook installer prefix $(FILESYSTEM_CONFIG)
|
||||||
$(HOST_CARGO) build --manifest-path cookbook/Cargo.toml --release
|
$(HOST_CARGO) build --manifest-path cookbook/Cargo.toml --release
|
||||||
$(HOST_CARGO) build --manifest-path installer/Cargo.toml --release
|
$(HOST_CARGO) build --manifest-path installer/Cargo.toml --release
|
||||||
PACKAGES="$$($(INSTALLER) --list-packages -c $(FILESYSTEM_CONFIG))" && \
|
PACKAGES="$$($(INSTALLER) --list-packages -c $(FILESYSTEM_CONFIG))" && \
|
||||||
cd cookbook && \
|
cd cookbook && \
|
||||||
./fetch.sh "$${PACKAGES}"
|
./fetch.sh "$${PACKAGES}"
|
||||||
mkdir -p build
|
mkdir -p $(BUILD)
|
||||||
touch $@
|
touch $@
|
||||||
|
|
||||||
build/repo.tag: build/fetch.tag
|
$(BUILD)/repo.tag: $(BUILD)/fetch.tag
|
||||||
$(HOST_CARGO) build --manifest-path cookbook/Cargo.toml --release
|
$(HOST_CARGO) build --manifest-path cookbook/Cargo.toml --release
|
||||||
$(HOST_CARGO) build --manifest-path installer/Cargo.toml --release
|
$(HOST_CARGO) build --manifest-path installer/Cargo.toml --release
|
||||||
export PATH="$(PREFIX_PATH):$$PATH" && \
|
export PATH="$(PREFIX_PATH):$$PATH" && \
|
||||||
PACKAGES="$$($(INSTALLER) --list-packages -c $(FILESYSTEM_CONFIG))" && \
|
PACKAGES="$$($(INSTALLER) --list-packages -c $(FILESYSTEM_CONFIG))" && \
|
||||||
cd cookbook && \
|
cd cookbook && \
|
||||||
./repo.sh "$${PACKAGES}"
|
./repo.sh "$${PACKAGES}"
|
||||||
mkdir -p build
|
mkdir -p $(BUILD)
|
||||||
touch $@
|
touch $@
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
virtualbox: build/harddrive.img
|
virtualbox: $(BUILD)/harddrive.img
|
||||||
echo "Delete VM"
|
echo "Delete VM"
|
||||||
-$(VBM) unregistervm Redox --delete; \
|
-$(VBM) unregistervm Redox --delete; \
|
||||||
if [ $$? -ne 0 ]; \
|
if [ $$? -ne 0 ]; \
|
||||||
|
@ -22,10 +22,10 @@ virtualbox: build/harddrive.img
|
||||||
$(VBM) modifyvm Redox --nictype1 82540EM; \
|
$(VBM) modifyvm Redox --nictype1 82540EM; \
|
||||||
$(VBM) modifyvm Redox --cableconnected1 on; \
|
$(VBM) modifyvm Redox --cableconnected1 on; \
|
||||||
$(VBM) modifyvm Redox --nictrace1 on; \
|
$(VBM) modifyvm Redox --nictrace1 on; \
|
||||||
$(VBM) modifyvm Redox --nictracefile1 "$(ROOT)/build/network.pcap"; \
|
$(VBM) modifyvm Redox --nictracefile1 "$(ROOT)/$(BUILD)/network.pcap"; \
|
||||||
fi
|
fi
|
||||||
$(VBM) modifyvm Redox --uart1 0x3F8 4
|
$(VBM) modifyvm Redox --uart1 0x3F8 4
|
||||||
$(VBM) modifyvm Redox --uartmode1 file "$(ROOT)/build/serial.log"
|
$(VBM) modifyvm Redox --uartmode1 file "$(ROOT)/$(BUILD)/serial.log"
|
||||||
$(VBM) modifyvm Redox --usb off # on
|
$(VBM) modifyvm Redox --usb off # on
|
||||||
$(VBM) modifyvm Redox --keyboard ps2
|
$(VBM) modifyvm Redox --keyboard ps2
|
||||||
$(VBM) modifyvm Redox --mouse ps2
|
$(VBM) modifyvm Redox --mouse ps2
|
||||||
|
@ -33,9 +33,9 @@ virtualbox: build/harddrive.img
|
||||||
$(VBM) modifyvm Redox --audiocontroller hda
|
$(VBM) modifyvm Redox --audiocontroller hda
|
||||||
$(VBM) modifyvm Redox --nestedpaging on
|
$(VBM) modifyvm Redox --nestedpaging on
|
||||||
echo "Create Disk"
|
echo "Create Disk"
|
||||||
$(VBM) convertfromraw $< build/harddrive.vdi
|
$(VBM) convertfromraw $< $(BUILD)/harddrive.vdi
|
||||||
echo "Attach Disk"
|
echo "Attach Disk"
|
||||||
$(VBM) storagectl Redox --name ATA --add sata --controller IntelAHCI --bootable on --portcount 1
|
$(VBM) storagectl Redox --name ATA --add sata --controller IntelAHCI --bootable on --portcount 1
|
||||||
$(VBM) storageattach Redox --storagectl ATA --port 0 --device 0 --type hdd --medium build/harddrive.vdi
|
$(VBM) storageattach Redox --storagectl ATA --port 0 --device 0 --type hdd --medium $(BUILD)/harddrive.vdi
|
||||||
echo "Run VM"
|
echo "Run VM"
|
||||||
$(VBM) startvm Redox
|
$(VBM) startvm Redox
|
||||||
|
|
Loading…
Reference in a new issue