
package embox.kernel.thread.signal

@DefaultImpl(siginfoq) abstract module siginfoq_api { }
@DefaultImpl(sigstate) abstract module sigstate_api { }

module siginfoq_stub extends siginfoq_api {
	source "siginfoq_stub.h"
}

module siginfoq extends siginfoq_api {
	option number siginfo_pool_sz=64

	source "siginfoq.h"
	source "siginfoq.c"

	depends embox.mem.objalloc
}

module sigstate_stub extends sigstate_api {
	source "sigstate_stub.h"
}

module sigstate extends sigstate_api {
	source "sigstate.h"
	source "sigstate.c"
	depends siginfoq_api

	depends embox.compat.posix.proc.sigset
}

@DefaultImpl(lock_stub)
abstract module lock_api { }

module lock extends lock_api {
	source "lock_impl.c"
}

module lock_stub extends lock_api {
	source "lock_stub_impl.c"
}
