# Userspace configuration parameters
#CFLAGS_USER += -DCONFIG_APPSERVER
#CFLAGS_USER += -DCONFIG_SYSCALL_TRAP
#CFLAGS_USER += -g
# Turn this on for better backtraces, but worse performance
#CFLAGS_USER += -fno-optimize-sibling-calls
#CFLAGS_TESTS += -static
#CFLAGS_TESTS += -fno-optimize-sibling-calls
export CFLAGS_USER CFLAGS_TESTS

# The default is num_cpus.  Use whatever you want.
# MAKE_JOBS := 100

# brho's custom targets.  Customize to your system.
#$(OBJDIR)/kern/.kvm.touch: $(CMP_KERNEL_OBJ)
#	@echo "  (KVM) Copying to mnt/hdd"
#	$(Q)cp $^ mnt/hdd/kernel
#	@sync
#	@touch $@
#
#kvm: $(OBJDIR)/kern/.kvm.touch ;
#
#$(OBJDIR)/kern/.usb.touch: $(CMP_KERNEL_OBJ)
#	@echo "  (USB) Copying to /dev/sdc4"
#	$(Q)mount /dev/sdc4
#	$(Q)cp $^ /mnt/usbstick/boot/akaros
#	@sync
#	$(Q)umount /mnt/usbstick
#	@touch $@
#
#usb: $(OBJDIR)/kern/.usb.touch ;
#
#$(OBJDIR)/kern/.pxe.touch: $(CMP_KERNEL_OBJ)
#	@echo "  (PXE) Copying to Watson"
#	$(Q)scp $^ watson.millennium.berkeley.edu:/tftpboot/akaros/akaros-kernel.gz
#	@touch $@
#
#pxe: $(OBJDIR)/kern/.pxe.touch ;

# risc-v functional simulator
rvfs: all
	fesvr -p$(NP) -nopk $(KERNEL_OBJ)
rvfsd: all
	fesvr -d -p$(NP) -nopk $(KERNEL_OBJ)

PHONY += fs fsd hw rvfs rvfsd
