# Makefile for GeekOS kernel, userspace, and tools
# Copyright (c) 2004,2005 David H. Hovemeyer <daveho@cs.umd.edu>
-# $Revision: 1.34 $
+# $Revision: 1.41 $
# This is free software. You are permitted to use,
# redistribute, and modify it as specified in the file "COPYING".
#Peter's compile flags
PADFLAGS =
+#
+# This is wrong for current cygwin - no changes needed
+#
# Figure out if we're compiling with cygwin, http://cygwin.com
-SYSTEM_NAME := $(shell uname -s)
-ifeq ($(findstring CYGWIN,$(SYSTEM_NAME)),CYGWIN)
-SYM_PFX := _
-EXTRA_C_OPTS := -DNEED_UNDERSCORE -DGNU_WIN32
-EXTRA_NASM_OPTS := -DNEED_UNDERSCORE
-NON_ELF_SYSTEM := yes
-EXTRA_CC_USER_OPTS := -Dmain=geekos_main
-endif
+#
+#
+#SYSTEM_NAME := $(shell uname -s)
+#ifeq ($(findstring CYGWIN,$(SYSTEM_NAME)),CYGWIN)
+#SYM_PFX := _
+#EXTRA_C_OPTS := -DNEED_UNDERSCORE -DGNU_WIN32
+#EXTRA_NASM_OPTS := -DNEED_UNDERSCORE
+#NON_ELF_SYSTEM := yes
+#EXTRA_CC_USER_OPTS := -Dmain=geekos_main
+#endif
synch.c kthread.c \
serial.c reboot.c \
paging.c \
- debug.c vmm_stubs.c vm.c\
+ debug.c vmm_stubs.c vm.c pci.c\
main.c
# Kernel object files built from C source files
vmcb.c vmm_mem.c vmm_paging.c vmm_io.c vmm_debug.c svm_io.c \
vmm_intr.c vmm_time.c\
vmm_shadow_paging.c vm_guest_mem.c \
- vm_dev.c vmm_dev_mgr.c \
+ vm_dev.c vmm_dev_mgr.c vmm_decoder.c \
+ svm_halt.c
#\
# vmx.c vmcs_gen.c vmcs.c
VMM_OBJS := $(VMM_C_OBJS) $(VMM_ASM_OBJS)
-DEVICE_C_SRCS := keyboard.c nvram.c timer.c simple_pic.c 8259a.c 8254.c
+DEVICE_C_SRCS := generic.c keyboard.c nvram.c timer.c simple_pic.c 8259a.c 8254.c
DEVICE_C_OBJS := $(DEVICE_C_SRCS:%.c=devices/%.o)
$(PAD) vmm.img 1474560
force_rombios:
- (cd ../src/vmboot/rombios; make)
+ (cd ../src/vmboot/rombios; make clean; make)
+# cp ../src/vmboot/rombios/BIOS-bochs-latest rombios
+
+force_vgabios:
+ (cd ../src/vmboot/vgabios; make clean; make)
-world: force_rombios
+world: force_rombios force_vgabios
../scripts/make_payload.pl payload_layout.txt vm_kernel
- make clean
+ - make clean
make vmm.img
# make ready to boot over PXE