Files
Linux_Drivers/freertos/cvitek/scripts/ParseConfiguration.cmake
sam.xiang cbb030f19f [freertos] add freertos firmware
Change-Id: I4158d66d9b5fc444e28287f55e79ac24e0a1666f
2023-03-10 20:35:49 +08:00

30 lines
889 B
CMake

function(ParseConfiguration DotConfigFile)
if (NOT EXISTS ${DotConfigFile})
message(FATAL_ERROR
"${DotConfigFile} not exist,
please source build/envsetup_soc.sh and defconfig relative board_defconfig")
endif()
file(READ "${DotConfigFile}" DotConfig)
string(REPLACE "\\\n" "" DotConfig ${DotConfig})
string(REPLACE "\n" ";" DotConfLines ${DotConfig})
list(REMOVE_ITEM DotConfLines "")
foreach(configline ${DotConfLines})
string(REPLACE "=" ";" line_split ${configline})
list(LENGTH line_split count)
if (count LESS 2)
continue()
endif()
list(GET line_split -1 value)
string(STRIP ${value} value)
separate_arguments(value)
list(REMOVE_AT line_split -1)
foreach(conf_name ${line_split})
set(${conf_name} ${value} PARENT_SCOPE)
message("${conf_name}=${value}")
# add_definitions(-D${conf_name}=${value} )
endforeach()
endforeach()
endfunction()