# @file  wscript
# @brief x86_64固有のコード
#
# (C) 2011 KATO Takeshi
#


def options(x):
	conf_opt = x.get_option_group('configure options')
	conf_opt.add_option('--boot-fd',
	    action  = 'store_true',
	    default = False,
	    help    = 'create boot floppy image.')
	conf_opt.add_option('--boot-multiboot',
	    action  = 'store_true',
	    default = True,
	    help    = 'create multiboot kernel (default enable)')

	x.recurse('boot')

def configure(x):
	x.env.boot_fd = x.options.boot_fd
	x.env.boot_multiboot = x.options.boot_multiboot

	if x.env.boot_fd:
		x.find_program('mcopy', var='MCOPY')

	x.recurse('boot')
	x.recurse('kernel')

def build(x):
	x.env.append_value('DEFINES_KERNEL', 'ARCH_LE')
	x.env.append_value('CFLAGS_KERNEL', [
	    '-mno-sse', '-fomit-frame-pointer', '-O2'])
	x.env.append_value('CXXFLAGS_KERNEL', [
	    '-fno-exceptions', '-fno-rtti',
	    '-mno-sse', '-fomit-frame-pointer', '-O2'])

	x.recurse('lib')
	x.recurse('kernel')
	x.recurse('boot')

