@@ -3,11 +3,11 @@ cmake_minimum_required(VERSION 3.13)
3
3
# Pull in Pico and FreeRTOS
4
4
include ($ENV{PICO_SDK_PATH} /external/pico_sdk_import.cmake )
5
5
#include(pico_extras_import_optional.cmake)
6
- # include($ENV{FREERTOS_KERNEL_PATH}/portable/ThirdParty/GCC/RP2040/FreeRTOS_Kernel_import.cmake)
6
+ include ($ENV{FREERTOS_KERNEL_PATH} /portable/ThirdParty/GCC/RP2040/FreeRTOS_Kernel_import.cmake )
7
7
8
8
9
9
if (PICO_SDK_VERSION_STRING VERSION_LESS "1.3.0" )
10
- message (FATAL_ERROR "Raspberry Pi Pico SDK version 1.3.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING} " )
10
+ message (FATAL_ERROR "Raspberry Pi Pico SDK version 1.3.0(or later) required. Your version is ${PICO_SDK_VERSION_STRING} " )
11
11
endif ()
12
12
13
13
project (wolf_pico_examples C CXX ASM )
@@ -31,254 +31,27 @@ endif()
31
31
include_directories (config )
32
32
include_directories (include )
33
33
include_directories (${PICO_SDK_PATH} /src/rp2_common/pico_lwip/include )
34
+ include_directories (${PICO_SDK_PATH} /src/rp2_common/hardware_rtc/include )
34
35
include_directories (${PICO_SDK_PATH} /lib/lwip/contrib/ports/freertos/include )
35
36
include_directories (${PICO_SDK_PATH} /lib/lwip/src/include )
36
37
include_directories (${PICO_SDK_PATH} /src/rp2_common/pico_async_context/include )
38
+ #include_directories(${PICO_SDK_PATH}/lib/btstack/test/embedded/)
37
39
38
40
set (WOLFSSL_ROOT $ENV{WOLFSSL_ROOT} )
41
+ set (FREERTOS_KERNEL_PATH $ENV{FREERTOS_KERNEL_PATH} )
42
+ include_directories (${FREERTOS_KERNEL_PATH} /include/ )
43
+ include_directories (${FREERTOS_KERNEL_PATH} /portable/ThirdParty/GCC/RP2040/include )
39
44
include_directories (${WOLFSSL_ROOT} )
40
45
### End of Global Include Path
41
46
47
+ include (wolfssl_import.cmake )
42
48
43
- ### wolfSSL/wolfCrypt library
44
- file (GLOB WOLFSSL_SRC
45
- "${WOLFSSL_ROOT} /src/*.c"
46
- "${WOLFSSL_ROOT} /wolfcrypt/src/*.c"
47
- "${WOLFSSL_ROOT} /wolfcrypt/src/port/rpi_pico/*"
48
- )
49
- list (REMOVE_ITEM WOLFSSL_SRC EXCLUDE REGEX
50
- "${WOLFSSL_ROOT} /src/bio.c"
51
- "${WOLFSSL_ROOT} /src/conf.c"
52
- "${WOLFSSL_ROOT} /src/pk.c"
53
- "${WOLFSSL_ROOT} /src/ssl_asn1.c"
54
- "${WOLFSSL_ROOT} /src/ssl_bn.c"
55
- "${WOLFSSL_ROOT} /src/ssl_misc.c"
56
- "${WOLFSSL_ROOT} /src/x509.c"
57
- "${WOLFSSL_ROOT} /src/x509_str.c"
58
- "${WOLFSSL_ROOT} /wolfcrypt/src/evp.c"
59
- "${WOLFSSL_ROOT} /wolfcrypt/src/misc.c"
60
- )
61
-
62
- add_library (wolfssl STATIC
63
- ${WOLFSSL_SRC}
64
- )
65
-
66
- target_compile_definitions (wolfssl PUBLIC
67
- WOLFSSL_USER_SETTINGS
68
- )
69
- if (${PICO_PLATFORM} STREQUAL "rp2350-arm-s" )
70
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_CORTEX_M_ASM )
71
- elseif (${PICO_PLATFORM} STREQUAL "rp2350-riscv" )
72
- add_compile_definitions (wolfSSL WOLFSSL_SP_RISCV32 )
73
- else ()
74
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_THUMB_ASM )
75
- endif ()
76
-
77
- target_link_libraries (wolfssl
78
- pico_stdlib
79
- pico_rand
80
- )
81
- ### End of wolfSSL/wolfCrypt library
82
-
83
-
84
- ### Test wolfCrypt algorithms
85
- add_executable (testwolfcrypt
86
- src/test_main.c
87
- ${WOLFSSL_ROOT} /wolfcrypt/test/test.c
88
- )
89
-
90
- target_link_libraries (testwolfcrypt
91
- wolfssl
92
- pico_stdlib
93
- pico_rand
94
- )
95
-
96
- if (USE_UART )
97
- pico_enable_stdio_usb (testwolfcrypt 0 )
98
- pico_enable_stdio_uart (testwolfcrypt 1 )
99
- else ()
100
- pico_enable_stdio_usb (testwolfcrypt 1 )
101
- pico_enable_stdio_uart (testwolfcrypt 0 )
102
- endif ()
103
-
104
- if (${PICO_PLATFORM} STREQUAL "rp2350" )
105
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_CORTEX_M_ASM )
106
- elseif (${PICO_PLATFORM} STREQUAL "rp2350-riscv" )
107
- add_compile_definitions (wolfSSL WOLFSSL_SP_RISCV32 )
108
- else ()
109
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_THUMB_ASM )
110
- endif ()
111
-
112
- pico_add_extra_outputs (testwolfcrypt )
113
- ### End of Test wolfCrypt algorithms
114
-
115
-
116
- ### Benchmark wolfCrypt algorithms
117
- add_executable (benchmark
118
- src/bench_main.c
119
- ${WOLFSSL_ROOT} /wolfcrypt/benchmark/benchmark.c
120
- )
121
-
122
- target_link_libraries (benchmark
123
- wolfssl
124
- pico_stdlib
125
- pico_rand
126
- )
127
-
128
- if (USE_UART )
129
- pico_enable_stdio_usb (benchmark 0 )
130
- pico_enable_stdio_uart (benchmark 1 )
131
- else ()
132
- pico_enable_stdio_usb (benchmark 1 )
133
- pico_enable_stdio_uart (benchmark 0 )
134
- endif ()
135
-
136
-
137
- if (${PICO_PLATFORM} STREQUAL "rp2350" )
138
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_CORTEX_M_ASM )
139
- elseif (${PICO_PLATFORM} STREQUAL "rp2350-riscv" )
140
- add_compile_definitions (wolfSSL WOLFSSL_SP_RISCV32 )
141
- else ()
142
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_THUMB_ASM )
143
- endif ()
144
-
145
- pico_add_extra_outputs (benchmark )
146
- ### End of Benchmark wolfCrypt algorithms
147
-
148
-
149
- if (USE_WIFI )
150
- ### Wifi connection
151
- add_executable (Wifi
152
- src/blink.c
153
- src/wifi.c
154
- src/wifi_main.c
155
- )
156
-
157
- target_compile_definitions (Wifi PRIVATE
158
- WIFI_SSID=\" ${WIFI_SSID} \"
159
- WIFI_PASSWORD=\" ${WIFI_PASSWORD} \"
160
- PICO_CYW43_ARCH_POLL
161
- NO_SYS=1
162
- )
163
-
164
- target_link_libraries (Wifi
165
- pico_stdlib
166
- pico_rand
167
- pico_lwip
168
- pico_cyw43_arch
169
- pico_lwip_nosys
170
- pico_async_context_poll
171
- )
172
-
173
- if (USE_UART )
174
- pico_enable_stdio_usb (Wifi 0 )
175
- pico_enable_stdio_uart (Wifi 1 )
176
- else ()
177
- pico_enable_stdio_usb (Wifi 1 )
178
- pico_enable_stdio_uart (Wifi 0 )
179
- endif ()
180
-
181
- if (${PICO_PLATFORM} STREQUAL "rp2350" )
182
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_CORTEX_M_ASM )
183
- elseif (${PICO_PLATFORM} STREQUAL "rp2350-riscv" )
184
- add_compile_definitions (wolfSSL WOLFSSL_SP_RISCV32 )
185
- else ()
186
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_THUMB_ASM )
187
- endif ()
188
-
189
- pico_add_extra_outputs (Wifi )
190
- ### End of Wifi connection
191
- endif ()
192
-
193
- if (USE_WIFI )
194
- ### TCP Client
195
- add_executable (tcp_Client
196
- src/blink.c
197
- src/wifi.c
198
- src/tcp.c
199
- src/tcpClient_main.c
200
- )
201
-
202
- target_compile_definitions (tcp_Client PRIVATE
203
- WIFI_SSID=\" ${WIFI_SSID} \"
204
- WIFI_PASSWORD=\" ${WIFI_PASSWORD} \"
205
- TEST_TCP_SERVER_IP=\" ${TEST_TCP_SERVER_IP} \"
206
- PICO_CYW43_ARCH_POLL
207
- NO_SYS=1
208
- )
209
-
210
- target_link_libraries (tcp_Client
211
- pico_stdlib
212
- pico_rand
213
- pico_lwip
214
- pico_cyw43_arch
215
- pico_lwip_nosys
216
- pico_async_context_poll
217
- )
218
-
219
- if (USE_UART )
220
- pico_enable_stdio_usb (tcp_Client 0 )
221
- pico_enable_stdio_uart (tcp_Client 1 )
222
- else ()
223
- pico_enable_stdio_usb (tcp_Client 1 )
224
- pico_enable_stdio_uart (tcp_Client 0 )
225
- endif ()
226
-
227
- if (${PICO_PLATFORM} STREQUAL "rp2350" )
228
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_CORTEX_M_ASM )
229
- elseif (${PICO_PLATFORM} STREQUAL "rp2350-riscv" )
230
- add_compile_definitions (wolfSSL WOLFSSL_SP_RISCV32 )
231
- else ()
232
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_THUMB_ASM )
233
- endif ()
234
-
235
- pico_add_extra_outputs (tcp_Client )
236
- ### End of TCP Client
237
- endif ()
238
-
239
- if (USE_WIFI )
240
- ### TLS Client
241
- add_executable (tls_Client
242
- src/blink.c
243
- src/wifi.c
244
- src/tcp.c
245
- src/tlsClient_main.c
246
- )
247
-
248
- target_compile_definitions (tls_Client PRIVATE
249
- WIFI_SSID=\" ${WIFI_SSID} \"
250
- WIFI_PASSWORD=\" ${WIFI_PASSWORD} \"
251
- TEST_TCP_SERVER_IP=\" ${TEST_TCP_SERVER_IP} \"
252
- PICO_CYW43_ARCH_POLL
253
- NO_SYS=1
254
- )
255
-
256
- target_link_libraries (tls_Client
257
- pico_stdlib
258
- pico_rand
259
- pico_lwip
260
- pico_cyw43_arch
261
- pico_lwip_nosys
262
- pico_async_context_poll
263
- wolfssl
264
- )
265
-
266
- if (USE_UART )
267
- pico_enable_stdio_usb (tls_Client 0 )
268
- pico_enable_stdio_uart (tls_Client 1 )
269
- else ()
270
- pico_enable_stdio_usb (tls_Client 1 )
271
- pico_enable_stdio_uart (tls_Client 0 )
272
- endif ()
273
-
274
- if (${PICO_PLATFORM} STREQUAL "rp2350" )
275
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_CORTEX_M_ASM )
276
- elseif (${PICO_PLATFORM} STREQUAL "rp2350-riscv" )
277
- add_compile_definitions (wolfSSL WOLFSSL_SP_RISCV32 )
278
- else ()
279
- add_compile_definitions (wolfssl WOLFSSL_SP_ARM_THUMB_ASM )
49
+ add_subdirectory (testwolfcrypt )
50
+ add_subdirectory (benchmark )
51
+ if (USE_WIFI )
52
+ add_subdirectory (wifi )
53
+ add_subdirectory (tcp_client )
54
+ add_subdirectory (tcp_server )
55
+ add_subdirectory (tls_client )
56
+ add_subdirectory (tls_server )
280
57
endif ()
281
-
282
- pico_add_extra_outputs (tls_Client )
283
- ### End of TLS Client
284
- endif ()
0 commit comments