package embox.lib.debug

static module symbol {
	source "symbol.c"
}

@Mandatory
@DefaultImpl(no_whereami)
abstract module whereami_api {
	@IncludeExport(path="debug")
	source "whereami.h"
}

module whereami extends whereami_api {
	source "whereami.c"

	option number max_rows=0
	option number max_depth=64
	option number row_sz=80

	depends embox.lib.debug.symbol
	depends embox.lib.execinfo.backtrace
}

module no_whereami extends whereami_api {
	source "no_whereami.h"
}

module buildinfo {
	@IncludeExport(path="debug")
	source "buildinfo.h"
	source "buildinfo.c"
	source "buildinfo.lds.S"
}

module ubsan  {
	option boolean stop_on_handle = false
	source "ubsan.c"
}
