11cmake_minimum_required (VERSION 3.12)
22
3- if (NOT CMAKE_PROJECT_NAME )
4- # Pull in SDK (must be before project)
5- include (${CMAKE_CURRENT_LIST_DIR} /pico_sdk_import.cmake)
6- include (${CMAKE_CURRENT_LIST_DIR} /pico_extras_import_optional.cmake)
3+ # Pull in SDK (must be before project)
4+ include (pico_sdk_import.cmake)
5+ include (pico_extras_import_optional.cmake)
76
8- pico_is_top_level_project(PICO_EXAMPLES_TOP_LEVEL_PROJECT)
9-
10- if (PICO_EXAMPLES_TOP_LEVEL_PROJECT)
11- project (pico_examples C CXX ASM)
12- else ()
13- # Go back to individual example for project
14- return ()
15- endif ()
16- endif ()
7+ project (pico_examples C CXX ASM)
178
189set (CMAKE_C_STANDARD 11)
1910set (CMAKE_CXX_STANDARD 17)
@@ -22,7 +13,7 @@ if (PICO_SDK_VERSION_STRING VERSION_LESS "2.1.0")
2213 message (FATAL_ERROR "Raspberry Pi Pico SDK version 2.1.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING} " )
2314endif ()
2415
25- set (PICO_EXAMPLES_PATH ${CMAKE_CURRENT_LIST_DIR } )
16+ set (PICO_EXAMPLES_PATH ${PROJECT_SOURCE_DIR } )
2617
2718# If you want debug output from USB (pass -DPICO_STDIO_USB=1) this ensures you don't lose any debug output while USB is set up
2819if (NOT DEFINED PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS)
@@ -32,7 +23,7 @@ endif()
3223# Initialize the SDK
3324pico_sdk_init()
3425
35- include (${CMAKE_CURRENT_LIST_DIR} / example_auto_set_url.cmake)
26+ include (example_auto_set_url.cmake)
3627
3728function (add_subdirectory_exclude_platforms NAME )
3829 if (ARGN)
@@ -51,6 +42,13 @@ function(add_subdirectory_exclude_platforms NAME)
5142 add_subdirectory (${NAME} )
5243endfunction ()
5344
45+ # Add blink example
46+ add_subdirectory_exclude_platforms(blink)
47+ add_subdirectory_exclude_platforms(blink_simple)
48+
49+ # Add hello world example
50+ add_subdirectory_exclude_platforms(hello_world)
51+
5452add_compile_options (-Wall
5553 -Wno-format # int != int32_t as far as the compiler is concerned because gcc has int32_t as long int
5654 -Wno-unused-function # we have some for the docs that aren't called
@@ -59,43 +57,34 @@ if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
5957 add_compile_options (-Wno-maybe-uninitialized)
6058endif ()
6159
62- if (PICO_EXAMPLES_TOP_LEVEL_PROJECT)
63- # Add blink example
64- add_subdirectory_exclude_platforms(blink)
65- add_subdirectory_exclude_platforms(blink_simple)
66-
67- # Add hello world example
68- add_subdirectory_exclude_platforms(hello_world)
69-
70- # Hardware-specific examples in subdirectories:
71- add_subdirectory (adc)
72- add_subdirectory (binary_info)
73- add_subdirectory (bootloaders)
74- add_subdirectory (clocks)
75- add_subdirectory (cmake)
76- add_subdirectory (dcp)
77- add_subdirectory (divider)
78- add_subdirectory (dma)
79- add_subdirectory (flash)
80- add_subdirectory (gpio)
81- add_subdirectory (hstx)
82- add_subdirectory (i2c)
83- add_subdirectory (interp)
84- add_subdirectory (multicore)
85- add_subdirectory (otp)
86- add_subdirectory (picoboard)
87- add_subdirectory (pico_w)
88- add_subdirectory (pio)
89- add_subdirectory (pwm)
90- add_subdirectory (reset)
91- add_subdirectory (rtc)
92- add_subdirectory (spi)
93- add_subdirectory (system )
94- add_subdirectory (timer)
95- add_subdirectory (uart)
96- add_subdirectory (universal)
97- add_subdirectory (usb)
98- add_subdirectory (watchdog)
99- add_subdirectory (sha)
100- add_subdirectory (freertos)
101- endif ()
60+ # Hardware-specific examples in subdirectories:
61+ add_subdirectory (adc)
62+ add_subdirectory (binary_info)
63+ add_subdirectory (bootloaders)
64+ add_subdirectory (clocks)
65+ add_subdirectory (cmake)
66+ add_subdirectory (dcp)
67+ add_subdirectory (divider)
68+ add_subdirectory (dma)
69+ add_subdirectory (flash)
70+ add_subdirectory (gpio)
71+ add_subdirectory (hstx)
72+ add_subdirectory (i2c)
73+ add_subdirectory (interp)
74+ add_subdirectory (multicore)
75+ add_subdirectory (otp)
76+ add_subdirectory (picoboard)
77+ add_subdirectory (pico_w)
78+ add_subdirectory (pio)
79+ add_subdirectory (pwm)
80+ add_subdirectory (reset)
81+ add_subdirectory (rtc)
82+ add_subdirectory (spi)
83+ add_subdirectory (system )
84+ add_subdirectory (timer)
85+ add_subdirectory (uart)
86+ add_subdirectory (universal)
87+ add_subdirectory (usb)
88+ add_subdirectory (watchdog)
89+ add_subdirectory (sha)
90+ add_subdirectory (freertos)
0 commit comments