@@ -491,11 +491,16 @@ function(GENERATE_ARDUINO_FIRMWARE INPUT_NAME)
491
491
492
492
find_arduino_libraries (TARGET_LIBS "${ALL_SRCS} " "${INPUT_ARDLIBS} " )
493
493
foreach (LIB_DEP ${TARGET_LIBS} )
494
+ arduino_debug_msg ("Arduino Library: ${LIB_DEP} " )
494
495
set (LIB_DEP_INCLUDES "${LIB_DEP_INCLUDES} -I\" ${LIB_DEP} \" " )
495
496
endforeach ()
496
497
497
498
if (NOT INPUT_NO_AUTOLIBS )
498
499
setup_arduino_libraries (ALL_LIBS ${INPUT_BOARD} "${ALL_SRCS} " "${INPUT_ARDLIBS} " "${LIB_DEP_INCLUDES} " "" )
500
+ foreach (LIB_INCLUDES ${ALL_LIBS_INCLUDES} )
501
+ arduino_debug_msg ("Arduino Library Includes: ${LIB_INCLUDES} " )
502
+ set (LIB_DEP_INCLUDES "${LIB_DEP_INCLUDES} ${LIB_INCLUDES} " )
503
+ endforeach ()
499
504
endif ()
500
505
501
506
list (APPEND ALL_LIBS ${CORE_LIB} ${INPUT_LIBS} )
@@ -947,6 +952,7 @@ set(Ethernet_RECURSE True)
947
952
set (SD_RECURSE True )
948
953
function (setup_arduino_library VAR_NAME BOARD_ID LIB_PATH COMPILE_FLAGS LINK_FLAGS )
949
954
set (LIB_TARGETS )
955
+ set (LIB_INCLUDES )
950
956
951
957
get_filename_component (LIB_NAME ${LIB_PATH} NAME )
952
958
set (TARGET_LIB_NAME ${BOARD_ID} _${LIB_NAME} )
@@ -971,11 +977,13 @@ function(setup_arduino_library VAR_NAME BOARD_ID LIB_PATH COMPILE_FLAGS LINK_FLA
971
977
foreach (LIB_DEP ${LIB_DEPS} )
972
978
setup_arduino_library (DEP_LIB_SRCS ${BOARD_ID} ${LIB_DEP} "${COMPILE_FLAGS} " "${LINK_FLAGS} " )
973
979
list (APPEND LIB_TARGETS ${DEP_LIB_SRCS} )
980
+ list (APPEND LIB_INCLUDES ${DEP_LIB_SRCS_INCLUDES} )
974
981
endforeach ()
975
982
976
983
set_target_properties (${TARGET_LIB_NAME} PROPERTIES
977
- COMPILE_FLAGS "${ARDUINO_COMPILE_FLAGS} -I\" ${LIB_PATH} \" -I\" ${LIB_PATH} /utility\" ${COMPILE_FLAGS} "
984
+ COMPILE_FLAGS "${ARDUINO_COMPILE_FLAGS} ${LIB_INCLUDES} -I\" ${LIB_PATH} \" -I\" ${LIB_PATH} /utility\" ${COMPILE_FLAGS} "
978
985
LINK_FLAGS "${ARDUINO_LINK_FLAGS} ${LINK_FLAGS} " )
986
+ list (APPEND LIB_INCLUDES "-I\" ${LIB_PATH} \" -I\" ${LIB_PATH} /utility\" " )
979
987
980
988
target_link_libraries (${TARGET_LIB_NAME} ${BOARD_ID} _CORE ${LIB_TARGETS} )
981
989
list (APPEND LIB_TARGETS ${TARGET_LIB_NAME} )
@@ -988,7 +996,8 @@ function(setup_arduino_library VAR_NAME BOARD_ID LIB_PATH COMPILE_FLAGS LINK_FLA
988
996
if (LIB_TARGETS )
989
997
list (REMOVE_DUPLICATES LIB_TARGETS )
990
998
endif ()
991
- set (${VAR_NAME} ${LIB_TARGETS} PARENT_SCOPE )
999
+ set (${VAR_NAME} ${LIB_TARGETS} PARENT_SCOPE )
1000
+ set (${VAR_NAME} _INCLUDES ${LIB_INCLUDES} PARENT_SCOPE )
992
1001
endfunction ()
993
1002
994
1003
#=============================================================================#
@@ -1007,13 +1016,18 @@ endfunction()
1007
1016
#=============================================================================#
1008
1017
function (setup_arduino_libraries VAR_NAME BOARD_ID SRCS ARDLIBS COMPILE_FLAGS LINK_FLAGS )
1009
1018
set (LIB_TARGETS )
1019
+ set (LIB_INCLUDES )
1020
+
1010
1021
find_arduino_libraries (TARGET_LIBS "${SRCS} " ARDLIBS )
1011
1022
foreach (TARGET_LIB ${TARGET_LIBS} )
1012
1023
# Create static library instead of returning sources
1013
1024
setup_arduino_library (LIB_DEPS ${BOARD_ID} ${TARGET_LIB} "${COMPILE_FLAGS} " "${LINK_FLAGS} " )
1014
1025
list (APPEND LIB_TARGETS ${LIB_DEPS} )
1026
+ list (APPEND LIB_INCLUDES ${LIB_DEPS_INCLUDES} )
1015
1027
endforeach ()
1016
- set (${VAR_NAME} ${LIB_TARGETS} PARENT_SCOPE )
1028
+
1029
+ set (${VAR_NAME} ${LIB_TARGETS} PARENT_SCOPE )
1030
+ set (${VAR_NAME} _INCLUDES ${LIB_INCLUDES} PARENT_SCOPE )
1017
1031
endfunction ()
1018
1032
1019
1033
0 commit comments