Build system overhauled to use Kbuild (XCC)
[akaros.git] / Makelocal.template
1 # General Purpose configuration parameters
2 #CFLAGS_KERNEL += $(CONFIG_APPSERVER)
3 #CFLAGS_USER += $(CONFIG_APPSERVER)
4
5 # Kernel configuration parameters
6 CFLAGS_KERNEL += $(CONFIG_KFS)
7 #CFLAGS_KERNEL += $(CONFIG_EXT2FS)
8 #CFLAGS_KERNEL += $(CONFIG_SINGLE_CORE)
9 #CFLAGS_KERNEL += $(CONFIG_NETWORKING)
10 #CFLAGS_KERNEL += $(CONFIG_SERIAL_IO)
11 #CFLAGS_KERNEL += $(CONFIG_BSD_ON_CORE0)
12 #CFLAGS_KERNEL += $(CONFIG_SPINLOCK_DEBUG)
13 #CFLAGS_KERNEL += $(CONFIG_SPINPDR_NO_CAS)
14 # Enabling this can cause userspace to make the kernel panic.
15 #CFLAGS_KERNEL += $(CONFIG_SEQLOCK_DEBUG)
16 #CFLAGS_KERNEL += $(CONFIG_PAGE_COLORING)
17 #CFLAGS_KERNEL += $(CONFIG_DEMAND_PAGING)
18 #CFLAGS_KERNEL += $(CONFIG_NOMTRRS)
19 #CFLAGS_KERNEL += $(CONFIG_E1000_MMIO_HACK)
20 #CFLAGS_KERNEL += $(CONFIG_E1000_ON_BOXBORO)
21 #CFLAGS_KERNEL += $(CONFIG_E1000_ON_S142)
22 #CFLAGS_KERNEL += $(CONFIG_ENABLE_MPTABLES)
23 #CFLAGS_KERNEL += $(CONFIG_MONITOR_ON_INT)
24 #CFLAGS_KERNEL += $(CONFIG_DISABLE_SMT)
25 #CFLAGS_KERNEL += $(CONFIG_BOXBORO)
26 #CFLAGS_KERNEL += $(CONFIG_ARSC_SERVER)
27 #CFLAGS_KERNEL += $(CONFIG_RESET_STACKS)
28 #CFLAGS_KERNEL += $(CONFIG_PCI_VERBOSE)
29 #CFLAGS_KERNEL += $(CONFIG_ETH_AUDIO)
30 #CFLAGS_KERNEL += $(CONFIG_KB_CORE0_ONLY)
31 #CFLAGS_KERNEL += $(CONFIG_KTHREAD_POISON)
32 #CFLAGS_KERNEL += $(CONFIG_PRINTK_NO_BACKSPACE)
33 #CFLAGS_KERNEL += $(CONFIG_DEBUG_BREAKPOINT)
34
35 # Paths for the initramfs (need to be directories)
36 #INITRAMFS_PATHS = kern/kfs obj/tests
37 INITRAMFS_PATHS = kern/kfs
38 #INITRAMFS_BIN = tools/test.sh
39 #EXT2_BDEV = mnt/ext2fs.img
40
41 # Userspace configuration parameters
42 #CFLAGS_USER += $(CONFIG_SYSCALL_TRAP)
43 #CFLAGS_USER += $(CONFIG_USER_DEBUGINFO)
44
45 # User tests configuration parameters
46 #CFLAGS_TESTS += $(CONFIG_STATIC_APPS)
47
48 # Default for sparc (i.e. needs an appserver)
49 ifeq ($(TARGET_ARCH),sparc)
50 CFLAGS_KERNEL += $(CONFIG_APPSERVER)
51 endif
52
53 # brho's custom targets.  Customize to your system.
54 #$(OBJDIR)/kern/.kvm.touch: $(KERNEL_OBJ)
55 #       @echo "  (KVM) Copying to mnt/hdd"
56 #       $(Q)cp $^ mnt/hdd/texas
57 #       @sync
58 #       @touch $@
59 #
60 #kvm: $(OBJDIR)/kern/.kvm.touch ;
61 #
62 #$(OBJDIR)/kern/.usb.touch: $(KERNEL_OBJ)
63 #       @echo "  (USB) Copying to /dev/sdc4"
64 #       $(Q)mount /dev/sdc4
65 #       $(Q)cp $^ /mnt/pornstick/texas
66 #       @sync
67 #       $(Q)umount /mnt/pornstick
68 #       @touch $@
69 #
70 #usb: $(OBJDIR)/kern/.usb.touch ;
71 #
72 #$(OBJDIR)/kern/.pxe.touch: $(CMP_KERNEL_OBJ)
73 #       @echo "  (PXE) Copying to Watson"
74 #       $(Q)scp $^ watson.millennium.berkeley.edu:/tftpboot/akaros/akaros-kernel.gz
75 #       @touch $@
76 #
77 #pxe: $(OBJDIR)/kern/.pxe.touch ;
78
79 # various sparc functional simulator configurations
80 NP ?= 1
81 fs: all
82         sparc_app -p$(NP) -fappserver_ros.conf fs $(KERNEL_OBJ) none
83 fsd: all
84         sparc_app_debug -p$(NP) -fappserver_ros.conf fs $(KERNEL_OBJ) none
85 hw: all
86         sparc_app -p$(NP) -fappserver_ros.conf hw $(KERNEL_OBJ) none
87
88 # risc-v functional simulator
89 rvfs: all
90         fesvr -p$(NP) -nopk $(KERNEL_OBJ)
91 rvfsd: all
92         fesvr -d -p$(NP) -nopk $(KERNEL_OBJ)
93
94 PHONY += fs fsd hw rvfs rvfsd