x86_64: use e64patch to generate kernel binary for QEMU
This commit is contained in:
@@ -9,13 +9,18 @@ ARCH_TEMP_FILES := $(BUILD_DIR)/$(KERNEL_EXEC).elf32
|
||||
# entry point is 32-bit machine code.
|
||||
$(BUILD_DIR)/$(KERNEL_EXEC).elf32: $(BUILD_DIR)/$(KERNEL_EXEC)
|
||||
@cp $(BUILD_DIR)/$(KERNEL_EXEC) $(BUILD_DIR)/$(KERNEL_EXEC).elf32
|
||||
@printf '\x03\x00' | dd of=$(BUILD_DIR)/$(KERNEL_EXEC).elf32 bs=1 seek=18 count=2 conv=notrunc 2> /dev/null
|
||||
$(BUILD_DIR)/tools/e64patch/e64patch $(BUILD_DIR)/$(KERNEL_EXEC).elf32
|
||||
|
||||
run: $(BUILD_DIR)/$(KERNEL_EXEC) $(BUILD_DIR)/$(KERNEL_EXEC).elf32
|
||||
@printf " \033[1;93mQEMU\033[0m $<\n"
|
||||
|
||||
@$(QEMU) -kernel $(BUILD_DIR)/$(KERNEL_EXEC).elf32 -monitor stdio $(QEMU_FLAGS)
|
||||
|
||||
run-curses: $(BUILD_DIR)/$(KERNEL_EXEC) $(BUILD_DIR)/$(KERNEL_EXEC).elf32
|
||||
@printf " \033[1;93mQEMU\033[0m $<\n"
|
||||
|
||||
@$(QEMU) -kernel $(BUILD_DIR)/$(KERNEL_EXEC).elf32 -monitor stdio $(QEMU_FLAGS) -display curses
|
||||
|
||||
debug: $(BUILD_DIR)/$(KERNEL_EXEC) $(BUILD_DIR)/$(KERNEL_EXEC).elf32
|
||||
@./tools/kernel-debug/debug_session.sh \
|
||||
tools/kernel-debug/gdb_session_init \
|
||||
|
||||
Reference in New Issue
Block a user