Uses kernel_ctx instead of TF for kthreading
[akaros.git] / Makelocal.template
1 # General Purpose configuration parameters
2 #CFLAGS += $(CONFIG_APPSERVER)
3 #CFLAGS += $(CONFIG_DEMO_SLAVE)
4
5 # Kernel configuration parameters
6 KERN_CFLAGS += $(CONFIG_KFS)
7 #KERN_CFLAGS += $(CONFIG_EXT2FS)
8 #KERN_CFLAGS += $(CONFIG_SINGLE_CORE)
9 #KERN_CFLAGS += $(CONFIG_NETWORKING)
10 #KERN_CFLAGS += $(CONFIG_SERIAL_IO)
11 #KERN_CFLAGS += $(CONFIG_BSD_ON_CORE0)
12 # Enabling this can cause userspace to make the kernel panic.
13 #KERN_CFLAGS += $(CONFIG_SEQLOCK_DEBUG)
14 #KERN_CFLAGS += $(CONFIG_SPINLOCK_DEBUG)
15 #KERN_CFLAGS += $(CONFIG_SPINPDR_NO_CAS)
16 #KERN_CFLAGS += $(CONFIG_PAGE_COLORING)
17 #KERN_CFLAGS += $(CONFIG_DEMAND_PAGING)
18 #KERN_CFLAGS += $(CONFIG_NOMTRRS)
19 #KERN_CFLAGS += $(CONFIG_E1000_MMIO_HACK)
20 #KERN_CFLAGS += $(CONFIG_E1000_ON_BOXBORO)
21 #KERN_CFLAGS += $(CONFIG_E1000_ON_S142)
22 #KERN_CFLAGS += $(CONFIG_ENABLE_MPTABLES)
23 #KERN_CFLAGS += $(CONFIG_MONITOR_ON_INT)
24 #KERN_CFLAGS += $(CONFIG_DISABLE_SMT)
25 #KERN_CFLAGS += $(CONFIG_BOXBORO)
26 # Enable this to set up ARSC server
27 #KERN_CFLAGS += $(CONFIG_ARSC_SERVER)
28 # Resets stacks in smp_idle(), at the expense of backtrace
29 #KERN_CFLAGS += $(CONFIG_RESET_STACKS)
30 #KERN_CFLAGS += $(CONFIG_PCI_VERBOSE)
31 # Rimas's Ethernet audio device
32 #KERN_CFLAGS += $(CONFIG_ETH_AUDIO)
33 # Avoid KB input on buggy nehalems (brho's machine)
34 #KERN_CFLAGS += $(CONFIG_KB_CORE0_ONLY)
35 #KERN_CFLAGS += $(CONFIG_KTHREAD_POISON)
36 #KERN_CFLAGS += $(CONFIG_PRINTK_NO_BACKSPACE)
37
38 #KERN_CFLAGS += -DDEVELOPER_NAME=waterman
39 #KERN_CFLAGS += -DDEVELOPER_NAME=brho
40
41
42 # Paths for the initramfs (need to be directories)
43 #INITRAMFS_PATHS = kern/kfs obj/tests
44 INITRAMFS_PATHS = kern/kfs
45 # Program to execute before building the initramfs
46 #INITRAMFS_BIN = tools/whatever.sh
47 # Image for ext2 (RAM version) (only brho uses this )
48 #EXT2_BDEV = mnt/ext2fs.img
49
50 # Userspace configuration parameters
51 #USER_CFLAGS += $(CONFIG_SYSCALL_TRAP)
52 #USER_CFLAGS += $(CONFIG_USER_DEBUGINFO)
53
54 # User tests configuration parameters
55 #TESTS_CFLAGS += $(CONFIG_STATIC_APPS)
56
57 # Number of jobs in make
58 #MAKE_JOBS := 4
59 #
60 # Default for sparc (i.e. needs an appserver)
61 ifeq ($(TARGET_ARCH),sparc)
62 KERN_CFLAGS += $(CONFIG_APPSERVER)
63 KERN_CFLAGS += -DDEVELOPER_NAME=waterman
64 endif
65
66 # brho's (edited) KVM, USB, PXE, ETC make targets
67 #kvm: $(OBJDIR)/kern/kernel
68 #       $(V)echo "+ (KVM) Copying to mnt/hdd"
69 #       $(V)cp $(OBJDIR)/kern/kernel mnt/hdd/kernel
70 #       $(V)sync
71 #endif
72 #
73 #usb: $(OBJDIR)/kern/kernel
74 #       $(V)echo "+ (USB) Copying to /dev/sdc4"
75 #       $(V)mount /dev/sdc4
76 #       $(V)cp $(OBJDIR)/kern/kernel /mnt/usbstick/kernel
77 #       $(V)sync
78 #       $(V)umount /mnt/usbstick
79 #
80 #pxe: $(OBJDIR)/kern/kernel
81 #       $(V)echo "+ (PXE) Compressing..."
82 #       $(V)gzip -c $(OBJDIR)/kern/kernel > $(OBJDIR)/kern/akaros-kernel.gz
83 #       $(V)echo "+ (PXE) Copying to Watson"
84 #       $(V)scp $(OBJDIR)/kern/akaros-kernel.gz watson.millennium.berkeley.edu:/tftpboot/akaros/akaros-kernel.gz
85
86 x86:
87         $(MAKE) TARGET_ARCH=i686
88
89 ramp:
90         $(MAKE) TARGET_ARCH=sparc
91
92 riscv:
93         $(MAKE) TARGET_ARCH=riscv
94
95 # various sparc functional simulator configurations
96 NP ?= 1
97 fs: all
98         sparc_app -p$(NP) -fappserver_ros.conf fs obj/kern/kernel none
99 fsd: all
100         sparc_app_debug -p$(NP) -fappserver_ros.conf fs obj/kern/kernel none
101 hw: all
102         sparc_app -p$(NP) -fappserver_ros.conf hw obj/kern/kernel none
103
104 # risc-v functional simulator
105 rvfs: all
106         riscv-isa-run -p$(NP) obj/kern/kernel
107 rvfsd: all
108         riscv-isa-run -d -p$(NP) obj/kern/kernel
109
110 .PHONY: fs fsd hw rvfs rvfsd