SubDir OBOS_TOP src tests kits net new_stack ;

UseHeaders [ FDirName $(OBOS_TOP) src tests kits net new_stack headers ] ;

SimpleTest new_stack_tester :
	net_stack_server.cpp
	userland_modules.cpp
	: be
;

{
	# symlink the userland add-ons dir to the dir where the net_stack_tester
	# lives
	local dir = [ on new_stack_tester return $(LOCATE) ] ;
	MakeLocate <network_v2-add-ons>userland : $(OBOS_ADDON_DIR) ;
	MakeLocate <network_v2-add-ons>add-ons : $(dir) ;
	RelSymLink <network_v2-add-ons>add-ons : <network_v2-add-ons>userland : false ;
	
	# alias for the stack_tester the modules link against
	LOCATE on <installed>new_stack_tester = $(dir) ;
	Depends <installed>new_stack_tester : <network_v2-add-ons>add-ons ;
}

NotFile userland_network_v2_modules ;
Depends userland_network_v2_modules :
	# the main stack modules
	<v2>stack
	<userland>memory_pool
	<userland>atomizer

	# framing modules
	<v2>ethernet_frame

	# interfaces modules
	<v2>loopback
	<v2>ether_drivers

	# protocols modules
	<v2>arp
	<v2>ipv4
;


SubInclude OBOS_TOP src tests kits net new_stack memory_pool ;
SubInclude OBOS_TOP src tests kits net new_stack atomizer ;
SubInclude OBOS_TOP src tests kits net new_stack stack ;
SubInclude OBOS_TOP src tests kits net new_stack interfaces ;
SubInclude OBOS_TOP src tests kits net new_stack protocols ;
SubInclude OBOS_TOP src tests kits net new_stack framings ;
# SubInclude OBOS_TOP src tests kits net new_stack ppp ;
