From 89b8071d2a99e1af25b01c6cb0380ae0216053ca Mon Sep 17 00:00:00 2001 From: graham sanderson Date: Tue, 23 Feb 2021 18:01:54 -0600 Subject: [PATCH] Protectt double inclusion of CMakeLists.txt --- CMakeLists.txt | 49 +++++++++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e60d7fe..aaaede7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,32 +1,37 @@ -cmake_minimum_required(VERSION 3.12) +cmake_minimum_required(VERSION 3.13) -# Pull in PICO SDK (must be before project) -include(pico_sdk_import.cmake) +if (NOT TARGET _pico_extras_inclusion_marker) + add_library(_pico_extras_inclusion_marker INTERFACE) -project(pico_extras C CXX) + # Pull in PICO SDK (must be before project) + include(pico_sdk_import.cmake) -set(CMAKE_C_STANDARD 11) -set(CMAKE_CXX_STANDARD 17) + project(pico_extras C CXX) -# Initialize the SDK -pico_sdk_init() + set(CMAKE_C_STANDARD 11) + set(CMAKE_CXX_STANDARD 17) -pico_is_top_level_project(PICO_EXTRAS_TOP_LEVEL_PROJECT) + # Initialize the SDK + pico_sdk_init() -add_library(pico_extras_included INTERFACE) -target_compile_definitions(pico_extras_included INTERFACE - -DPICO_EXTRAS=1 -) + pico_is_top_level_project(PICO_EXTRAS_TOP_LEVEL_PROJECT) -pico_add_platform_library(pico_extras_included) + add_library(pico_extras_included INTERFACE) + target_compile_definitions(pico_extras_included INTERFACE + -DPICO_EXTRAS=1 + ) -if (NOT PICO_EXTRAS_PATH) - set(PICO_EXTRAS_PATH ${CMAKE_CURRENT_LIST_DIR}) -endif() -set(PICO_EXTRAS_PATH "${PICO_EXTRAS_PATH}" CACHE PATH "Path to Pico Extras") + pico_add_platform_library(pico_extras_included) -add_subdirectory(src) + if (NOT PICO_EXTRAS_PATH) + set(PICO_EXTRAS_PATH ${CMAKE_CURRENT_LIST_DIR}) + endif() + set(PICO_EXTRAS_PATH "${PICO_EXTRAS_PATH}" CACHE PATH "Path to Pico Extras") -if (PICO_EXTRAS_TESTS_ENABLED OR PICO_EXTRAS_TOP_LEVEL_PROJECT) - add_subdirectory(test) -endif () \ No newline at end of file + add_subdirectory(src) + + if (PICO_EXTRAS_TESTS_ENABLED OR PICO_EXTRAS_TOP_LEVEL_PROJECT) + add_subdirectory(test) + endif () + +endif() \ No newline at end of file