|
| 1 | + |
| 2 | +MACRO(Log) |
| 3 | + MESSAGE(STATUS "Log: ${ARGN}") |
| 4 | +ENDMACRO(Log) |
| 5 | +FUNCTION(EXPORT_LIBRARY lib) |
| 6 | + Log(${ARGN}) |
| 7 | + cmake_parse_arguments(PARSE_ARGV |
| 8 | + 1 |
| 9 | + "${lib}" |
| 10 | + "" |
| 11 | + "NAME" |
| 12 | + "FLAGS;INCLUDE_PATHS" |
| 13 | + ) |
| 14 | + SET_PROPERTY(GLOBAL PROPERTY CMAKE_STM32_${lib}_FLAGS ${${lib}_FLAGS} ) |
| 15 | + SET_PROPERTY(GLOBAL PROPERTY CMAKE_STM32_${lib}_INCLUDE_PATHS ${${lib}_INCLUDE_PATHS} ) |
| 16 | + SET_PROPERTY(GLOBAL PROPERTY CMAKE_STM32_${lib}_NAME ${${lib}_NAME} ) |
| 17 | + Log("SET Include for ${lib}: <${CMAKE_STM32_${lib}_INCLUDE_PATHS}> : < ${${lib}_INCLUDE_PATHS}>") |
| 18 | + Log("SET NAME for ${lib}: >${CMAKE_STM33_${lib}_NAME}> : <${${lib}_NAME}>") |
| 19 | + set(unused "${${lib}_UNPARSED_ARGUMENTS}") |
| 20 | + IF("${unused}" STREQUAL "") |
| 21 | + ELSE("${unused}" STREQUAL "") |
| 22 | + MESSAGE(STATUS "Unparsed Arg ${${lib}_UNPARSED_ARGUMENTS}") |
| 23 | + ENDIF("${unused}" STREQUAL "") |
| 24 | +ENDFUNCTION(EXPORT_LIBRARY lib) |
| 25 | + |
| 26 | + |
| 27 | +MACRO(IMPORT_LIBRARY lib ) |
| 28 | + GET_PROPERTY( ${lib}_FLAGS GLOBAL PROPERTY CMAKE_STM32_${lib}_FLAGS ) |
| 29 | + GET_PROPERTY( ${lib}_INCLUDE_PATHS GLOBAL PROPERTY CMAKE_STM32_${lib}_INCLUDE_PATHS ) |
| 30 | + |
| 31 | + include_directories( ${${lib}_INCLUDE_PATHS} ) |
| 32 | + Log("Get Include for ${lib} : <${${lib}_INCLUDE_PATHS}>") |
| 33 | + add_definitions( ${${lib}_FLAGS} ) |
| 34 | + Log("Get FLAGS for ${lib} : <${${lib}_FLAGS}>") |
| 35 | +ENDMACRO(IMPORT_LIBRARY lib) |
| 36 | + |
| 37 | +FUNCTION(LINK_TO_LIBRARIES target ) |
| 38 | + FOREACH(l ${ARGN}) |
| 39 | + GET_PROPERTY( ${l}_NAME GLOBAL PROPERTY CMAKE_STM32_${l}_NAME ) |
| 40 | + TARGET_LINK_LIBRARIES(${target} ${${l}_NAME}) |
| 41 | + ENDFOREACH(l ${ARGN}) |
| 42 | +ENDFUNCTION(LINK_TO_LIBRARIES ) |
0 commit comments