package third_party.lib.ruy

@BuildDepends(third_party.lib.pytorch.cpuinfo)
@BuildDepends(third_party.googletest)
@BuildDepends(embox.lib.libstdcxx)
@Build(stage=1, script="$(EXTERNAL_MAKE)")
static module ruy_download {
	@NoRuntime depends third_party.lib.pytorch.cpuinfo
	@NoRuntime depends third_party.googletest
	@NoRuntime depends embox.lib.libstdcxx
}

@BuildArtifactPath(cppflags="-I$(EXTERNAL_BUILD_DIR)/third_party/lib/ruy/ruy_download/install/include")
@BuildDepends(ruy_download)
static module libruy {
	@AddPrefix("^BUILD/extbld/third_party/lib/ruy/ruy_download/build")
	source "third_party/cpuinfo/libcpuinfo.a",
			"ruy/libruy_pack_arm.a",
			"ruy/libruy_prepare_packed_matrices.a",
			"ruy/libruy_denormal.a",
			"ruy/libruy_wait.a",
			"ruy/libruy_cpuinfo.a",
			"ruy/libruy_apply_multiplier.a",
			"ruy/libruy_pack_avx2_fma.a",
			"ruy/libruy_kernel_avx2_fma.a",
			"ruy/libruy_prepacked_cache.a",
			"ruy/libruy_system_aligned_alloc.a",
			"ruy/libruy_thread_pool.a",
			"ruy/libruy_frontend.a",
			"ruy/libruy_ctx.a",
			"ruy/libruy_trmul.a",
			"ruy/libruy_have_built_path_for_avx2_fma.a",
			"ruy/libruy_context_get_ctx.a",
			"ruy/libruy_have_built_path_for_avx512.a",
			"ruy/libruy_tune.a",
			"ruy/libruy_kernel_avx512.a",
			"ruy/profiler/libruy_profiler_profiler.a",
			"ruy/profiler/libruy_profiler_instrumentation.a",
			"ruy/libruy_pack_avx.a",
			"ruy/libruy_blocking_counter.a",
			"ruy/libruy_kernel_arm.a",
			"ruy/libruy_allocator.a",
			"ruy/libruy_block_map.a",
			"ruy/libruy_pack_avx512.a",
			"ruy/libruy_have_built_path_for_avx.a",
			"ruy/libruy_context.a",
			"ruy/libruy_kernel_avx.a"

	@NoRuntime depends ruy_download
}
