armino_build_get_property(armino_soc ARMINO_SOC)
set(incs )
armino_component_register(INCLUDE_DIRS "${incs}")

armino_build_get_property(toolchain_dir TOOLCHAIN_DIR)
set(gcc_compiler ${toolchain_dir}/riscv32-elf-gcc)
set(toolchain_version_file ${CMAKE_CURRENT_SOURCE_DIR}/${armino_soc}/hash/toolchain_version.txt)
set(lib_hash $ENV{LIB_HASH})
set(app_version $ENV{APP_VERSION})
set(cmd_target $ENV{CMD_TARGET})
if("${lib_hash}" STREQUAL "NULL")
	execute_process(COMMAND
					"${gcc_compiler}" --version
					OUTPUT_VARIABLE sdk_toolchain_version
					RESULT_VARIABLE result)
	file(WRITE ${toolchain_version_file} "${sdk_toolchain_version}")
else()
	execute_process(COMMAND
					cat ${CMAKE_CURRENT_SOURCE_DIR}/${armino_soc}/hash/toolchain_version.txt
					OUTPUT_VARIABLE sdk_toolchain_version
					RESULT_VARIABLE result)
	execute_process(COMMAND
					cat ${CMAKE_CURRENT_SOURCE_DIR}/${armino_soc}/hash/libs_hash.txt
					OUTPUT_VARIABLE sdk_lib_hash
					RESULT_VARIABLE result)
	execute_process(COMMAND
					"${gcc_compiler}" --version
					OUTPUT_VARIABLE toolchain_version
					RESULT_VARIABLE result)
	STRING(STRIP "${sdk_toolchain_version}" sdk_toolchain_version)
	STRING(STRIP "${sdk_lib_hash}" sdk_lib_hash)
	STRING(STRIP "${toolchain_version}" toolchain_version)
	if(sdk_lib_hash STREQUAL lib_hash AND sdk_toolchain_version STREQUAL toolchain_version)
		message(STATUS "bk_libs and toolchain version verify success...")
	elseif(app_version STREQUAL "test")
		message(STATUS "bk_libs or toolchain version verify failed, skip for app test!!!")
	elseif(cmd_target STREQUAL "menuconfig")
		message(STATUS "bk_libs or toolchain version verify failed, skip for menuconfig!!!")
	else()
		message(SEND_ERROR "bk_libs or toolchain version verify failed, stop!!!")
	endif()
endif()

file(GLOB common_libs ${CMAKE_CURRENT_SOURCE_DIR}/common/*.a)
foreach(lib ${common_libs})
	get_filename_component(lib_name ${lib} NAME)
	add_prebuilt_library(${lib_name} "${CMAKE_CURRENT_SOURCE_DIR}/common/${lib_name}")
	target_link_libraries(${COMPONENT_LIB} INTERFACE ${lib_name})
endforeach()

file(GLOB libs ${CMAKE_CURRENT_SOURCE_DIR}/${armino_soc}/libs/*.a)

set (blacklist_elem
	libbluetooth_host_ble[^.]*\.a
	libbluetooth_controller[^.]*\.a
	libbluetooth_host_dm[^.]*\.a
	libbk_phy[^.]*\.a
	libcom_phy[^.]*\.a
	libate_phy[^.]*\.a
	libtjpg[^.]*\.a
	libscale[^.]*\.a
	libwifi[^.]*\.a
)

list (JOIN blacklist_elem | blacklist_elem_regax)


list(FILTER libs EXCLUDE REGEX "^.*(${blacklist_elem_regax})$")

foreach(lib ${libs})
	#message("final lib ${lib}")
endforeach()

foreach(lib ${libs})
 	get_filename_component(lib_name ${lib} NAME)
 	add_prebuilt_library(${lib_name} "${CMAKE_CURRENT_SOURCE_DIR}/${armino_soc}/libs/${lib_name}")
 	target_link_libraries(${COMPONENT_LIB} INTERFACE ${lib_name})
endforeach()

