Skip to content

Commit beba212

Browse files
committed
build: use wasi-sdk
Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
1 parent b225187 commit beba212

36 files changed

Lines changed: 68 additions & 124 deletions

File tree

CMakeLists.txt

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -4,161 +4,116 @@ project(ocre-sdk)
44

55
set(CMAKE_VERBOSE_MAKEFILE TRUE)
66

7-
make_directory(${CMAKE_CURRENT_LIST_DIR}/sysroot)
8-
97
include(ExternalProject)
10-
ExternalProject_Add(wasi-sysroot
11-
URL https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-32/wasi-sysroot-32.0.tar.gz
12-
URL_HASH SHA256=f2537f6e5804f7f24e32dd140e9371e9670a9fd2646b6a813ddb896b29954b12
13-
DOWNLOAD_EXTRACT_TIMESTAMP FALSE
14-
CONFIGURE_COMMAND ""
15-
BUILD_COMMAND ""
16-
INSTALL_COMMAND cp -r ../wasi-sysroot/. ${CMAKE_CURRENT_LIST_DIR}/sysroot
17-
)
18-
19-
ExternalProject_Add(ocre-sdk
20-
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/ocre-sdk
21-
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
22-
CMAKE_ARGS "-DWAMR_ROOT:STRING=${WAMR_ROOT}"
23-
DEPENDS wasi-sysroot
24-
)
25-
26-
add_custom_target(sysroot
27-
DEPENDS
28-
wasi-sysroot
29-
ocre-sdk
30-
)
31-
32-
# Containers
338

349
make_directory(${CMAKE_CURRENT_BINARY_DIR}/dist)
3510

36-
# Generic Samples
37-
3811
ExternalProject_Add(big-sample
3912
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/big-sample
4013
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
4114
INSTALL_COMMAND cp big-sample.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
42-
DEPENDS ocre-sdk
4315
)
4416

4517
ExternalProject_Add(blinky
4618
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/blinky
4719
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
4820
INSTALL_COMMAND cp blinky.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
49-
DEPENDS ocre-sdk
5021
)
5122

5223
ExternalProject_Add(blinky-board-generic
5324
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/blinky-board-generic
5425
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
5526
INSTALL_COMMAND cp blinky-board-generic.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
56-
DEPENDS ocre-sdk
5727
)
5828

5929
ExternalProject_Add(echo-server
6030
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/echo-server
6131
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
6232
INSTALL_COMMAND cp echo-server.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
63-
DEPENDS ocre-sdk
6433
)
6534

6635
ExternalProject_Add(filesystem
6736
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/filesystem
6837
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
6938
INSTALL_COMMAND cp filesystem.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
70-
DEPENDS ocre-sdk
7139
)
7240

7341
ExternalProject_Add(filesystem-full
7442
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/filesystem-full
7543
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
7644
INSTALL_COMMAND cp filesystem-full.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
77-
DEPENDS ocre-sdk
7845
)
7946

8047
ExternalProject_Add(hello-world
8148
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/hello-world
8249
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
8350
INSTALL_COMMAND cp hello-world.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
84-
DEPENDS ocre-sdk
8551
)
8652

8753
ExternalProject_Add(log_mirror_forwarder
8854
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/log_mirror_forwarder
8955
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
9056
INSTALL_COMMAND cp syslog_webserver.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
91-
DEPENDS ocre-sdk
9257
)
9358

9459
ExternalProject_Add(publisher
9560
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/messaging/publisher
9661
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
9762
INSTALL_COMMAND cp publisher.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
98-
DEPENDS ocre-sdk
9963
)
10064

10165
ExternalProject_Add(subscriber
10266
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/messaging/subscriber
10367
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
10468
INSTALL_COMMAND cp subscriber.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
105-
DEPENDS ocre-sdk
10669
)
10770

10871
ExternalProject_Add(publisher_inside
10972
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/messaging/multipublisher-subscriber/publisher_inside
11073
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
11174
INSTALL_COMMAND cp publisher_inside.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
112-
DEPENDS ocre-sdk
11375
)
11476

11577
ExternalProject_Add(publisher_outside
11678
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/messaging/multipublisher-subscriber/publisher_outside
11779
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
11880
INSTALL_COMMAND cp publisher_outside.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
119-
DEPENDS ocre-sdk
12081
)
12182

12283
ExternalProject_Add(subscriber_temp
12384
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/messaging/multipublisher-subscriber/subscriber_temp
12485
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
12586
INSTALL_COMMAND cp subscriber_temp.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
126-
DEPENDS ocre-sdk
12787
)
12888

12989
ExternalProject_Add(modbus-client
13090
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/modbus-client
13191
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
13292
INSTALL_COMMAND cp modbus-client.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
133-
DEPENDS ocre-sdk
13493
)
13594

13695
ExternalProject_Add(shared-filesystem-reader
13796
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/shared-filesystem/shared-filesystem-reader
13897
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
13998
INSTALL_COMMAND cp shared-filesystem-reader.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
140-
DEPENDS ocre-sdk
14199
)
142100

143101
ExternalProject_Add(shared-filesystem-writer
144102
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/shared-filesystem/shared-filesystem-writer
145103
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
146104
INSTALL_COMMAND cp shared-filesystem-writer.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
147-
DEPENDS ocre-sdk
148105
)
149106

150107
ExternalProject_Add(webserver
151108
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/webserver
152109
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
153110
INSTALL_COMMAND cp webserver.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
154-
DEPENDS ocre-sdk
155111
)
156112

157113
ExternalProject_Add(webserver-complex
158114
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/generic/webserver-complex
159115
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
160116
INSTALL_COMMAND cp webserver-complex.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
161-
DEPENDS ocre-sdk
162117
)
163118

164119
# Testing
@@ -167,33 +122,28 @@ ExternalProject_Add(print_args
167122
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/testing/print_args
168123
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
169124
INSTALL_COMMAND cp print_args.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
170-
DEPENDS ocre-sdk
171125
)
172126

173127
ExternalProject_Add(pthread
174128
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/testing/pthread
175129
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
176130
INSTALL_COMMAND cp pthread.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
177-
DEPENDS ocre-sdk
178131
)
179132

180133
ExternalProject_Add(return0
181134
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/testing/return0
182135
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
183136
INSTALL_COMMAND cp return0.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
184-
DEPENDS ocre-sdk
185137
)
186138

187139
ExternalProject_Add(return1
188140
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/testing/return1
189141
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
190142
INSTALL_COMMAND cp return1.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
191-
DEPENDS ocre-sdk
192143
)
193144

194145
ExternalProject_Add(sleep5_return0
195146
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/testing/sleep5_return0
196147
CMAKE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}"
197148
INSTALL_COMMAND cp sleep5_return0.wasm ${CMAKE_CURRENT_BINARY_DIR}/dist
198-
DEPENDS ocre-sdk
199149
)

board_specific/arduino_portenta_h7/blinky-h7/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.20.0)
22

3-
# Set the WASI SDK toolchain file
4-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk.cmake)
3+
# Set the WASI SDK toolchain file
4+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
55

6-
# Set the project name (needs to come after the toolchain file)
6+
# Set the project name (needs to come after the toolchain file)
77
set(APPNAME blinky-h7)
88
project(${APPNAME})
99

10-
# Set the linker flags
10+
# Set the linker flags
1111
set(CMAKE_EXE_LINKER_FLAGS "-Wl,--strip-all -Wl,--allow-undefined")
1212

1313
# Set compilation flags

board_specific/b_u585i_iot02a/blinky-button/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.20.0)
2-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk.cmake)
2+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
33
set(APPNAME blinky-button)
44
project(${APPNAME} LANGUAGES C)
55

board_specific/b_u585i_iot02a/blinky-u585/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.20.0)
2-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk.cmake)
2+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
33
set(APPNAME blinky-u585)
44
project(${APPNAME} LANGUAGES C)
55

board_specific/b_u585i_iot02a/blinky-xmas/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.20.0)
2-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk.cmake)
2+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
33
set(APPNAME blinky-xmas)
44
project(${APPNAME} LANGUAGES C)
55

board_specific/b_u585i_iot02a/modbus-server/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
cmake_minimum_required (VERSION 3.20.0)
22

33
# Set the WASI SDK toolchain file
4-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk-p1.cmake)
4+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
55

66
set(CMAKE_BUILD_TYPE Release)
77

board_specific/b_u585i_iot02a/sensor-IMU/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.20.0)
2-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk.cmake)
2+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
33
set(APPNAME sensor-imu)
44
project(${APPNAME} LANGUAGES C)
55

board_specific/b_u585i_iot02a/sensor/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.20.0)
2-
set(CMAKE_TOOLCHAIN_FILE /opt/wasi-sdk/share/cmake/wasi-sdk.cmake)
2+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
33
set(APPNAME sensor)
44
project(${APPNAME} LANGUAGES C)
55

generic/big-sample/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cmake_minimum_required(VERSION 3.20.0)
22

3-
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_LIST_DIR}/../../scripts/wasm32-wasi-pthread.cmake)
3+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
44

55
project(big-sample)
66

generic/blinky-board-generic/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
cmake_minimum_required(VERSION 3.20.0)
22

3-
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_LIST_DIR}/../../scripts/wasm32-wasi-pthread.cmake)
3+
include(${CMAKE_CURRENT_LIST_DIR}/../../ocre.cmake)
4+
5+
add_subdirectory(../../ocre-sdk ocre-sdk)
46

57
project(blinky-board-generic)
68

0 commit comments

Comments
 (0)