Skip to content

Commit 12ff218

Browse files
author
mean
committed
add import/export
1 parent 57ca78f commit 12ff218

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

cmake_tools.cmake

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
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

Comments
 (0)