Вы можете просто добавить подкаталог open62541 в ваш основной CMake, а перед этим установить соответствующие опции CMake. Затем также добавьте цели open62541 к вашей собственной цели и добавьте объединенный исходный файл.
например. чтобы включить объединение:
set(UA_ENABLE_AMALGAMATION ON CACHE BOOL "" FORCE)
set(UA_LOGLEVEL 300)
add_subdirectory(open62541)
add_dependencies(${PROJECT_NAME} open62541 open62541-amalgamation-source open62541-amalgamation-header)
set (${PROJECT_NAME}_SRCS ${${PROJECT_NAME}_SRCS} "${PROJECT_BINARY_DIR}/open62541/open62541.c")
Убедитесь, что вы добавляете _SRCS к своим собственным целевым источникам.
Нечто подобное сделано здесь:
https://github.com/Pro/open62541-arduino